What your AI apps can do with Klaviyo
- Review campaigns and flows
- Analyze profiles and segments
Klaviyo MCP tools
272 tools, taken from the publisher's documentation on 29 October 2026. The server decides what it offers and can add or rename tools at any time; after you connect, Toolstile shows the current list.
| Tool | What it does |
|---|---|
get_account_details | Get details of your account (read-only) |
get_campaigns | List your campaigns (read-only) |
get_campaign | Get details of a campaign (read-only) |
create_campaign | Create a campaign |
assign_template_to_campaign_message | Assign an email template to a campaign message |
get_campaign_send_job | Get the status of a campaign send job (read-only) |
get_campaign_recipient_estimation_job | Get the status of a campaign recipient estimation job (read-only) |
get_campaign_recipient_estimation | Get the estimated number of recipients for a campaign (read-only) |
get_campaign_message | Get details of a campaign message (read-only) |
refresh_campaign_recipient_estimation | Refresh a campaign's recipient estimation |
create_campaign_clone | Clone a campaign |
update_campaign | Update a campaign |
delete_campaign | Delete a campaign |
update_campaign_message | Update a campaign message |
update_image_for_campaign_message | Update the image associated with a campaign message |
send_campaign | Send a campaign to its configured audience |
cancel_campaign_send | Cancel or revert a campaign send |
get_catalog_items | List your catalog items (read-only) |
get_catalog_item | Get details of a catalog item (read-only) |
get_catalog_variant | Get details of a catalog variant (read-only) |
get_catalog_category | Get details of a catalog category (read-only) |
get_bulk_create_catalog_items_job | Get the status of a bulk catalog item create job (read-only) |
get_bulk_update_catalog_items_job | Get the status of a bulk catalog item update job (read-only) |
get_bulk_delete_catalog_items_job | Get the status of a bulk catalog item delete job (read-only) |
get_bulk_create_variants_job | Get the status of a bulk catalog variant create job (read-only) |
get_bulk_update_variants_job | Get the status of a bulk catalog variant update job (read-only) |
get_bulk_delete_variants_job | Get the status of a bulk catalog variant delete job (read-only) |
get_catalog_variants | List catalog variants (read-only) |
get_catalog_categories | List catalog categories (read-only) |
get_bulk_create_catalog_items_jobs | List bulk catalog item create jobs (read-only) |
get_bulk_update_catalog_items_jobs | List bulk catalog item update jobs (read-only) |
get_bulk_delete_catalog_items_jobs | List bulk catalog item delete jobs (read-only) |
get_bulk_create_variants_jobs | List bulk catalog variant create jobs (read-only) |
get_bulk_update_variants_jobs | List bulk catalog variant update jobs (read-only) |
get_bulk_delete_variants_jobs | List bulk catalog variant delete jobs (read-only) |
create_catalog_item | Create a catalog item |
update_catalog_item | Update a catalog item |
delete_catalog_item | Delete a catalog item |
add_categories_to_catalog_item | Add categories to a catalog item |
remove_categories_from_catalog_item | Remove categories from a catalog item |
update_categories_for_catalog_item | Update the categories for a catalog item |
create_back_in_stock_subscription | Create a back-in-stock subscription |
create_catalog_variant | Create a catalog variant |
update_catalog_variant | Update a catalog variant |
delete_catalog_variant | Delete a catalog variant |
create_catalog_category | Create a catalog category |
update_catalog_category | Update a catalog category |
delete_catalog_category | Delete a catalog category |
add_items_to_catalog_category | Add items to a catalog category |
remove_items_from_catalog_category | Remove items from a catalog category |
update_items_for_catalog_category | Update the items in a catalog category |
bulk_create_catalog_items | Create catalog items in bulk |
bulk_update_catalog_items | Update catalog items in bulk |
bulk_delete_catalog_items | Delete catalog items in bulk |
bulk_create_catalog_variants | Create catalog variants in bulk |
bulk_update_catalog_variants | Update catalog variants in bulk |
bulk_delete_catalog_variants | Delete catalog variants in bulk |
get_events | List events (read-only) |
get_metrics | List event metrics (read-only) |
get_metric | Get details of an event metric (read-only) |
query_metric_aggregates | Query and aggregate event data associated with a metric (read-only) |
get_event | Get details of an event (read-only) |
get_custom_metric | Get details of a custom metric (read-only) |
get_mapped_metric | Get details of a mapped metric (read-only) |
get_metric_property | Get details of a metric property (read-only) |
get_custom_metrics | List custom metrics (read-only) |
get_mapped_metrics | List mapped metrics (read-only) |
get_flows_triggered_by_metric | List flows triggered by a metric (read-only) |
create_custom_metric | Create a custom metric |
update_custom_metric | Update a custom metric |
delete_custom_metric | Delete a custom metric |
update_mapped_metric | Update a mapped metric |
bulk_create_events | Create events for multiple profiles in bulk |
get_download_for_event_bulk_export_job | Get the download URL for an event bulk export job (beta) (read-only) |
get_event_bulk_export_job | Get the status of an event bulk export job (read-only) |
get_flows | List your flows (read-only) |
get_flow | Get details of a flow (read-only) |
get_flow_message | Get details of a flow message (read-only) |
get_flow_action | Get details of a flow action (read-only) |
create_flow | Create a flow |
update_flow | Update a flow's status |
delete_flow | Delete a flow |
update_flow_action | Update a flow action |
get_lists | List your lists (read-only) |
get_list | Get details of a list (read-only) |
get_segments | List your segments (read-only) |
get_segment | Get details of a segment (read-only) |
get_flows_triggered_by_list | List flows triggered by a list (read-only) |
get_flows_triggered_by_segment | List flows triggered by a segment (read-only) |
create_list | Create a list |
update_list | Update a list |
delete_list | Delete a list |
add_profiles_to_list | Add profiles to a list |
remove_profiles_from_list | Remove profiles from a list |
create_segment | Create a segment |
update_segment | Update a segment |
delete_segment | Delete a segment |
upload_image_from_url | Upload image from a URL |
get_image | Get details of an image (read-only) |
get_images | List images (read-only) |
update_image | Update an image's metadata |
get_profiles | List your profiles (read-only) |
get_profile | Get details of a profile (read-only) |
create_profile | Create a profile |
update_profile | Update a profile |
subscribe_profile_to_marketing | Subscribe a profile to marketing for a given channel and list |
unsubscribe_profile_from_marketing | Unsubscribe a profile from marketing for a given channel and list |
get_bulk_import_profiles_job | Get the status of a bulk profile import job (read-only) |
get_bulk_suppress_profiles_job | Get the status of a bulk profile suppression job (read-only) |
get_bulk_unsuppress_profiles_job | Get the status of a bulk profile unsuppression job (read-only) |
get_push_token | Get details of a push token (read-only) |
get_bulk_import_profiles_jobs | List bulk profile import jobs (read-only) |
get_bulk_suppress_profiles_jobs | List bulk profile suppression jobs (read-only) |
get_bulk_unsuppress_profiles_jobs | List bulk profile unsuppression jobs (read-only) |
get_push_tokens | List push tokens (read-only) |
create_or_update_profile | Create or update a profile |
create_push_token | Create or update a push token |
delete_push_token | Delete a push token |
bulk_import_profiles | Import profiles in bulk |
bulk_suppress_profiles | Suppress profiles from marketing in bulk |
bulk_unsuppress_profiles | Unsuppress profiles in bulk |
merge_profiles | Merge two profiles |
get_download_for_profile_bulk_export_job | Get the download URL for a profile bulk export job (beta) (read-only) |
get_profile_bulk_export_job | Get the status of a profile bulk export job (read-only) |
get_campaign_report | Get a report of your campaign performance (read-only) |
get_flow_report | Get a report of your flow performance (read-only) |
query_form_values | Query form performance values (read-only) |
query_form_series | Query form performance over time (read-only) |
query_segment_values | Query segment membership values (read-only) |
query_segment_series | Query segment membership over time (read-only) |
create_email_template | Create an HTML email template |
get_email_template | Get the details of an email template (read-only) |
create_dnd_email_template | Create a drag-and-drop (DND) email template with a structured definition |
update_dnd_email_template | Update an existing drag-and-drop (DND) email template |
list_email_templates | List your email templates (read-only) |
update_email_template | Update an HTML email template |
clone_email_template | Clone an email template |
delete_email_template | Delete an email template |
render_email_template | Render an email template with provided context (read-only) |
get_universal_content | Get details of a universal content block (read-only) |
get_all_universal_content | List universal content blocks (read-only) |
create_universal_content | Create a universal content block |
update_universal_content | Update a universal content block |
delete_universal_content | Delete a universal content block |
create_template_preview_send_job | Send a preview of a template to specified recipients (beta) |
get_translations | List all translation collections (beta) (read-only) |
get_translation | Get a translation collection, optionally with locale values (beta) (read-only) |
create_translation | Create a translation collection for a message, template or content block (beta) |
update_translation | Update translation settings (locales) and/or import translated values for a resource (beta) |
delete_translation | Delete a translation collection and all its localized values (beta) |
get_coupon | Get details of a coupon (read-only) |
get_bulk_create_coupon_codes_job | Get the status of a bulk coupon code create job (read-only) |
get_coupons | List coupons (read-only) |
get_coupon_codes | List coupon codes (read-only) |
get_coupon_code | Get details of a coupon code (read-only) |
get_bulk_create_coupon_code_jobs | List bulk coupon code create jobs (read-only) |
create_coupon | Create a coupon |
update_coupon | Update a coupon |
create_coupon_code | Create a coupon code |
update_coupon_code | Update a coupon code |
delete_coupon_code | Delete a coupon code |
delete_coupon | Delete a coupon |
bulk_create_coupon_codes | Create coupon codes in bulk |
get_tag_group | Get details of a tag group (read-only) |
get_tags | List tags (read-only) |
get_tag | Get details of a tag (read-only) |
get_tag_groups | List tag groups (read-only) |
create_tag | Create a tag |
update_tag | Update a tag |
delete_tag | Delete a tag |
create_tag_group | Create a tag group |
update_tag_group | Update a tag group |
delete_tag_group | Delete a tag group |
tag_campaigns | Add a tag to campaigns |
tag_flows | Add a tag to flows |
tag_lists | Add a tag to lists |
tag_segments | Add a tag to segments |
remove_tag_from_campaigns | Remove a tag from campaigns |
remove_tag_from_flows | Remove a tag from flows |
remove_tag_from_lists | Remove a tag from lists |
remove_tag_from_segments | Remove a tag from segments |
get_webhook | Get details of a webhook (read-only) |
get_webhook_topics | List webhook topics (read-only) |
get_webhook_topic | Get details of a webhook topic (read-only) |
get_webhooks | List webhooks (read-only) |
create_webhook | Create a webhook |
update_webhook | Update a webhook |
delete_webhook | Delete a webhook |
get_form | Get details of a form (read-only) |
get_forms | List forms (read-only) |
get_form_version | Get details of a form version (read-only) |
create_form | Create a form |
delete_form | Delete a form |
get_reviews | List your reviews (read-only) |
get_review | Get details of a review (read-only) |
update_review | Update a review |
request_profile_deletion | Request deletion of a profile's data |
get_applications | List OAuth applications (beta) (read-only) |
list_billing_usage | List billing usage records (beta) (read-only) |
get_billing_usage | Get details of a billing usage record (beta) (read-only) |
create_brand_button | Create a brand button (beta) |
create_brand_color | Create a brand color (beta) |
create_brand_logo | Create a brand logo (beta) |
create_brand_social_group | Create a brand social group (beta) |
delete_brand_button | Delete a brand button (beta) |
delete_brand_color | Delete a brand color (beta) |
delete_brand_logo | Delete a brand logo (beta) |
delete_brand_social_group | Delete a brand social group (beta) |
get_brand_button | Get details of a brand button (beta) (read-only) |
get_brand_buttons | List brand buttons (beta) (read-only) |
get_brand_color | Get details of a brand color (beta) (read-only) |
get_brand_colors | List brand colors (beta) (read-only) |
get_brand_email_default | Get details of a brand email default (beta) (read-only) |
get_brand_email_defaults | List brand email defaults (beta) (read-only) |
get_brand_logo | Get details of a brand logo (beta) (read-only) |
get_brand_logos | List brand logos (beta) (read-only) |
get_brand_social_group | Get details of a brand social group (beta) (read-only) |
get_brand_social_groups | List brand social groups (beta) (read-only) |
get_brand_voice | Get the brand voice (beta) (read-only) |
update_brand_button | Update a brand button (beta) |
update_brand_color | Update a brand color (beta) |
update_brand_email_default | Update a brand email default (beta) |
update_brand_logo | Update a brand logo (beta) |
update_brand_social_group | Update a brand social group (beta) |
update_brand_voice | Update the brand voice (beta) |
create_agent_knowledge | Create an agent knowledge entry (beta) |
create_agent_skill | Create an agent skill (beta) |
create_agent_tool | Create an agent tool (beta) |
create_customer_agent_response | Create a customer agent response (beta) |
delete_agent_knowledge | Delete an agent knowledge entry (beta) |
delete_agent_secret | Delete an agent secret (beta) |
delete_agent_skill | Delete an agent skill (beta) |
delete_agent_tool | Delete an agent tool (beta) |
get_agent_knowledge | Get details of an agent knowledge entry (beta) (read-only) |
list_agent_knowledge | List agent knowledge entries (beta) (read-only) |
get_agent_secret | Get details of an agent secret (beta) (read-only) |
get_agent_secrets | List agent secrets (beta) (read-only) |
get_agent_skill | Get details of an agent skill (beta) (read-only) |
get_agent_skills | List agent skills (beta) (read-only) |
get_agent_tool | Get details of an agent tool (beta) (read-only) |
get_agent_tools | List agent tools (beta) (read-only) |
get_customer_agent | Get details of a customer agent (beta) (read-only) |
retrieve_customer_agent_conversation | Get details of a customer agent conversation (beta) |
list_customer_agent_conversations | List customer agent conversations (beta) (read-only) |
get_agent_messages_for_customer_agent_conversation | List messages in a customer agent conversation (beta) (read-only) |
get_skills_for_agent_tool | List the skills for an agent tool (beta) (read-only) |
get_secrets_for_agent_tool | List the secrets for an agent tool (beta) (read-only) |
get_secret_ids_for_agent_tool | List the IDs of the secrets for an agent tool (beta) (read-only) |
get_tools_for_agent_secret | List the agent tools that use a secret (beta) (read-only) |
get_tool_ids_for_agent_secret | List the IDs of the agent tools that use a secret (beta) (read-only) |
query_customer_agent_skill_values | Query customer agent skill values (beta) (read-only) |
query_customer_agent_values | Query customer agent values (beta) (read-only) |
update_agent_knowledge | Update an agent knowledge entry (beta) |
update_agent_skill | Update an agent skill (beta) |
update_agent_tool | Update an agent tool (beta) |
update_customer_agent | Update a customer agent (beta) |
update_customer_agent_conversation | Update a customer agent conversation (beta) |
create_sending_domain_activation_job | Create a sending domain activation job (beta) |
create_sending_domain | Create a sending domain (beta) |
delete_sending_domain | Delete a sending domain (beta) |
get_sending_domain | Get details of a sending domain (beta) (read-only) |
get_sending_domains | List sending domains (beta) (read-only) |
create_sending_domain_verification_job | Create a sending domain verification job (beta) |
create_text_messaging_configuration | Create a text messaging configuration (beta) |
create_text_messaging_sender | Create a text messaging sender (beta) |
create_text_messaging_sender_registration | Create a text messaging sender registration (beta) |
get_messaging_sender_registration_id_for_text_messaging_sender | Get the registration ID for a text messaging sender (beta) (read-only) |
get_text_messaging_configuration | Get details of a text messaging configuration (beta) (read-only) |
get_text_messaging_sender | Get details of a text messaging sender (beta) (read-only) |
get_text_messaging_sender_registration | Get details of a text messaging sender registration (beta) (read-only) |
get_text_messaging_senders | List text messaging senders (beta) (read-only) |
report_unsupported_task | Report a task the tools could not complete, if you consent to sharing (read-only) |
Suggested access for each AI app
The documentation this list comes from doesn't mark Klaviyo's tools as read-only or destructive. Read each tool's description and decide per app before allowing it.
Coding agent in Claude Code or Cursor. Allow the read tools so the agent can look things up without stopping, and require approval for tools that change shared data.
Chat or research app in Claude Desktop. Allow reading and searching. Allow writes only where you want the app to act for you.
Unattended agent, such as a scheduled Codex job. No one is watching the session, so keep it narrow: allow what the job needs, require approval for changes and block the rest.
Blocked tools are removed from the tool list an app sees, so it won't try them. Because rules apply per app, the same Klaviyo connection can be broad in one app and read-only in another, and the credential stays in Toolstile instead of each app's config file.
How it works with Toolstile
- Connect once. Add Klaviyo to a workspace (browser sign-in). Toolstile keeps the credential, so no agent config holds it.
- Choose access per app. Give Claude Code every Klaviyo tool, give Cursor only the read tools, or keep Klaviyo away from an app entirely.
- Share approved accounts. Teammates use the connection without copying tokens, and you can remove access in one place.
- Review activity. See which app called which tool and when, so you can tighten access with evidence.
Add the Klaviyo MCP server to an AI app
Through Toolstile, every AI app uses one gateway entry, whichever servers you connect. In Claude Code:
claude mcp add --transport http toolstile 'https://mcp.toolstile.com/mcp'Then connect Klaviyo in your workspace and choose which of its tools that app may use. Client setup covers Codex, Cursor and Claude Desktop.
To connect directly instead, add the Klaviyo endpoint to each app separately. In Claude Code:
claude mcp add --transport http klaviyo 'https://mcp.klaviyo.com/mcp'In Cursor's mcp.json:
{
"mcpServers": {
"klaviyo": {
"url": "https://mcp.klaviyo.com/mcp"
}
}
}Some servers accept only clients they have approved, or need a token header. Check the Klaviyo MCP documentation for what your client needs.
Before you connect
A Klaviyo account. Sign-in uses your Klaviyo permissions.
Server details
| Detail | Value |
|---|---|
| Publisher | Klaviyo |
| Endpoint | https://mcp.klaviyo.com/mcp |
| Authentication | Browser sign-in |
| Categories | Marketing & research, Sales & support |
| Tool list | 272 tools, observed 29 October 2026 (docs) |