Klaviyo MCP
Klaviyo MCP: Klaviyo's own server, and email revenue next to ad spend
Klaviyo runs a remote MCP server at mcp.klaviyo.com/mcp with over 260 tools that read and write campaigns, flows, segments, profiles and templates, reachable from Claude, ChatGPT, Cursor and VS Code by anyone with an Owner, Admin or Manager role. This page says what it does, how to keep it read-only, and what the Adrails MCP server adds: Klaviyo's daily email and SMS totals read with a read-only key and set next to Meta and Google Ads spend for the same dates, with agents, automations and a review step on every ad change.
Reviewed Oct 4, 2026
Side by side
Klaviyo's MCP server against the Adrails MCP server
Two different jobs: Klaviyo's server works inside the Klaviyo account; Adrails reads its results and sets them next to the ads.
| Criterion | Klaviyo MCP server, by Klaviyo | Adrails MCP server |
|---|---|---|
| Address | mcp.klaviyo.com/mcp, remote, Streamable HTTP; also listed in Claude's directory and as the Klaviyo app in ChatGPT; a local server runs with uvx and a private API key | adrails.ai/api/mcp, added as a custom connector; Klaviyo connected once in Adrails under Integrations |
| Sign-in | Klaviyo OAuth with dynamic client registration, for a user with an Owner, Admin or Manager role; scopes are read and write on nearly every resource | Your Adrails sign-in, OAuth, one workspace per connection; Klaviyo authorized to Adrails with a private key created as Read-Only Key |
| What it reads | Campaigns and their reports, flows and their reports, lists, segments, profiles, events, metrics and aggregates, catalog items, templates, forms, reviews, coupons | Daily totals for campaigns and flows: messages received, opened and clicked, unsubscribes and Klaviyo-attributed revenue; plus spend and results on every Meta and Google Ads account |
| What it writes | Campaigns, including send_campaign, flows, segments, lists, profiles and subscriptions, templates, images, coupons, webhooks; read-only=true on a custom connector disables every write tool | Nothing in Klaviyo. Advertising changes come back as proposals you apply in Adrails, created paused, budget moves capped at 30% |
| Ad spend next to it | No. The server reads Klaviyo only | Yes. Email and SMS results against ad spend for the same period, source kept apart |
| Clients | Claude and Claude Desktop through the listed connector or a custom connector, ChatGPT through the Klaviyo app or a custom server in Developer mode, Cursor, VS Code, any remote MCP client | Claude, ChatGPT in Developer mode, Claude Code, Codex and any remote MCP client with OAuth |
| Price | Not priced on its documentation; a Klaviyo account with the right role, and a paid Claude plan for custom connectors | Adrails plans from $149 a month with unlimited ad accounts; a tool call uses no agent credit |
| Who runs it | Klaviyo, listed as Anthropic verified in Claude's directory since January 2026 | Adrails |
Klaviyo's column from developers.klaviyo.com, its Help Center and the Klaviyo connector page in Claude's directory, read on 4 October 2026. Adrails' column from the Klaviyo integration page and the MCP tools reference in the Adrails docs.
01
Klaviyo MCP: one server, over 260 tools, and three ways in
Klaviyo MCP is Klaviyo's own remote Model Context Protocol server at https://mcp.klaviyo.com/mcp, a wrapper on Klaviyo's public APIs that lets an AI client read your account and take supported actions once you have signed in with OAuth. Its Available tools page, read on 4 October 2026, says the server exposes over 260 tools, grouped by category: accounts, campaigns, catalogs, events and metrics, flows, lists and segments, images, profiles, reporting, templates, translations, coupons, tags, webhooks, forms, reviews, data privacy and more. By default the remote server loads a core set of about 40 tools; the full set is loaded by leaving the core-tools-only parameter off.
There are three ways in. The listed Klaviyo connector in Claude's directory, made by Klaviyo, Anthropic verified and added in January 2026, lists 27 tools and is the simplest way to connect one account. A custom connector with the server URL, which Klaviyo recommends for several accounts and which needs a Claude Pro, Max, Team or Enterprise plan, lets you add the query parameters described below and a company parameter to tell accounts apart. In ChatGPT the same choice exists between the Klaviyo app and a custom MCP server in Developer mode, and Cursor, VS Code and any other remote MCP client take the URL directly. A local server, installed with uvx and a private API key, exists for clients that run on your computer.
Whichever way in, the Klaviyo user must hold an Owner, Admin or Manager role, and Klaviyo says it cannot restrict which AI clients connect, since the server is client-agnostic. API Analytics in Klaviyo shows which tools were called and whether data was read or written, though the interface does not yet show which user authorized the connection.
- Listed connector: one account, 27 tools, no query parameters
- Custom connector: several accounts, query parameters, a paid Claude plan
- ChatGPT app or custom server; Cursor; VS Code; a local server with a private key
- Owner, Admin or Manager role in Klaviyo in every case
02
What Klaviyo's server reads and writes, and how to keep it read-only
The tool table marks each tool as read-only or not. Reads cover campaigns, flows and their reports, lists, segments, profiles, events, metrics and metric aggregates, catalog items, templates, forms and reviews. Writes go further than the help articles of early 2026 suggested: on 4 October 2026 the remote server listed create_campaign, send_campaign and cancel_campaign_send, create_flow, update_flow and delete_flow, create_segment, update_segment and create_list, create_profile, update_profile, subscribe_profile_to_marketing and unsubscribe_profile_from_marketing, plus templates, images, coupons and webhooks. The Help Center article on the ChatGPT app, updated 15 August 2026, still says the app cannot send campaigns, build or edit flows, or modify segments or lists, so read the tool table rather than an article before you rely on a boundary. The OAuth scopes granted at sign-in are read and write on nearly every resource, data privacy included.
Klaviyo gives a custom connector four controls worth knowing. read-only=true disables every tool that can write. disable-tools-with-user-generated-content=true removes the tools that read profile properties, event data or reviews, which could carry instructions a model might follow; Klaviyo asks you to review each tool call for that reason. core-tools-only=true keeps the server to the core set of about 40 tools, which helps clients with small context windows; it is the default for ChatGPT. toolsets limits the server to tools whose scopes you list, such as profiles:read,campaigns:read. None of these can be set on the listed Claude connector or the ChatGPT app, which is the case for a custom connector even with one account.
Two more facts from Klaviyo's own pages. The connector can surface personal data, email addresses and phone numbers among profile properties, and once that data has gone to the AI client it is governed by your agreement with the client's vendor, not by Klaviyo. And Klaviyo's guide for agencies, published in July 2026, recommends one custom connector per client account with the company parameter in the URL, one Claude project per client with a standing instruction naming the connector, and blocking or requiring confirmation on the write tools in the client's tool permissions.
03
What Adrails reads from Klaviyo, and how fresh it is
Adrails connects to Klaviyo with a private API key you create in Klaviyo as a Read-Only Key and paste under Integrations. It reads the daily totals of your campaigns and flows: messages received, opened and clicked, unsubscribes, and the revenue Klaviyo attributes to its own sends. The read runs every 6 hours. Adrails never writes to Klaviyo, sends no message and changes no flow, and disconnecting removes the stored key.
The source stays explicit, because Klaviyo-attributed revenue and Meta-attributed revenue come from two measurement systems and Shopify's orders from a third; Adrails shows them next to each other, never merged. Klaviyo remains the system that sends email and SMS. What Adrails adds is the comparison with acquisition: what the ads spent and brought on the same days the emails went out.
In the app this feeds two places. The agent answers questions about email and SMS results next to ad spend. Automations ship with the Email revenue template, which posts the figures on a schedule to Slack, Discord or email, with the other templates that read the store and the ad accounts.
04
The tools an AI client gets from Adrails for email next to ads
Once Adrails is added as a custom connector, your client sees 63 tools; metrics_daily is the one that reads Klaviyo. It returns the daily series the integrations measure, and on the marketing side that means emails received, opened and clicked, alongside the store's sessions, conversion rate and sales and the analytics side's net profit, CPA and ROAS when those sources are connected. Called without metrics it returns everything measured over the period, which is how to discover the names; breakdown splits the store series by product, traffic source or country.
The advertising reads sit next to it. reporting_overview gives spend, attributed revenue and conversion events across every connected Meta and Google Ads account for a period; performance_period gives one account's spend, results, CPA and ROAS over an exact range with a comparison range. metric_compare puts an observed value against a target, and business_review checks an explanation of a revenue movement from figures quoted word for word from earlier results. workflows_list shows the automations and templates, and workflows_manage creates the Email revenue automation from its template, for an owner or admin who granted Manage automations.
The changes are proposals, not writes. campaigns_pause, campaigns_change_budget, campaigns_duplicate_to_draft, campaigns_split_test and campaigns_launch each prepare one exact change and return a link; the person who connected, as an owner or admin on an active plan, reviews it in Adrails and applies or declines it within 30 minutes. Budgets move by at most 30% per change, everything Adrails creates on a platform starts paused, and an applied change can be undone while the platform still matches what Adrails wrote. A tool call uses no agent credit.
- metrics_daily: emails received, opened and clicked by day, next to store and profit series
- reporting_overview and performance_period: the ad side for the same dates
- metric_compare and business_review: targets and explanations checked from quoted figures
- workflows_manage: the Email revenue automation from its template
- campaigns_pause, campaigns_change_budget: proposals applied in Adrails
05
When to connect Klaviyo's server, Adrails, or both
Connect Klaviyo's server when the work is inside Klaviyo: a campaign to draft from last month's winner, a template to build, a segment to inspect or create, a profile to fix, a flow audit across an account, or, for an agency, the same question asked across every client account at once. It is the only one of the two that writes to Klaviyo, and its own read-only parameter is the way to keep a connection safe when writing is not the job. It knows nothing about your ads.
Connect Adrails when the question joins email to acquisition: what email brought against what the ads spent, whether the emails or the ads moved revenue this week, how a budget cut shows up in the email totals over the same days. Adrails reads Klaviyo with a read-only key, keeps each figure with its source, and turns the ad decision into a proposal with a review step rather than touching Meta or Google Ads from the chat.
A lifecycle team and a paid media team working in one Claude account will often have both: Klaviyo's connector, kept read-only unless a campaign is being built, and Adrails for the comparison and the ad changes. Agencies get the same split per client: one Klaviyo custom connector per account, and one Adrails workspace per client, each with its own connection.
06
Set up both in a few minutes
For Klaviyo's server in Claude, open Customize, then Connectors, choose Browse connectors, search for Klaviyo and connect it; allow the access on Claude's side and the permissions on Klaviyo's side, signed in to the right Klaviyo account as an Owner, Admin or Manager. For several accounts, or to add read-only=true, choose Add custom connector instead and paste https://mcp.klaviyo.com/mcp with your parameters, once per account. In ChatGPT, add the Klaviyo app, or turn on Developer mode and create a custom server with the same URL and OAuth. Cursor and VS Code take the URL in their MCP configuration and ask you to sign in.
For Adrails, first connect Klaviyo inside Adrails: in Klaviyo create a private API key as a Read-Only Key, then open Integrations in Adrails, choose Klaviyo and paste it. Then add Adrails to your client. In Claude, open Customize, then Connectors, choose Add custom connector, name it Adrails and paste https://adrails.ai/api/mcp; connect it, sign in to Adrails, choose the workspace and the permissions, and allow access. In ChatGPT, turn on Developer mode and add a custom MCP server with the same URL and OAuth. Claude Code takes claude mcp add --transport http adrails https://adrails.ai/api/mcp, then /mcp to sign in.
The consent screen offers Read workspace data and Stay connected first; select Prepare advertising changes only if you want pauses, budget moves and launches prepared for you to apply, and Manage automations if the assistant should create the Email revenue automation. A good first question: what did email bring last week next to what the ads brought.
Which server answers
Five questions a marketer asks, and which server answers each
Anything that happens inside Klaviyo is Klaviyo's server; anything that joins email to the ads is Adrails.
| Question | Klaviyo MCP server | Adrails |
|---|---|---|
| What did email bring last week next to what the ads brought? | Half of it: get_campaign_report and get_flow_report give the email side, nothing gives the ads | Both halves: metrics_daily for messages, clicks and attributed revenue by day, reporting_overview for spend and results on the same dates |
| Create the sale campaign from last year's best one | get_campaign_report to find it, create_campaign_clone or create_campaign and assign_template_to_campaign_message to build it | Not available. Adrails does not write to Klaviyo |
| Which flow lost conversions since we cut the budget? | get_flow_report for each flow, with no view of the budget | performance_period for the spend cut by day, metrics_daily for the email totals over the same days; the per-flow detail stays in Klaviyo |
| Unsubscribe this profile and fix its properties | update_profile and unsubscribe_profile_from_marketing | Not available. Adrails stores no Klaviyo profiles |
| Send me email revenue against ad spend every Monday | A prompt each time; the server answers questions, it does not schedule them | The Email revenue automation template, created from workflows_manage, posting on a schedule to Slack, Discord or email |
Tool names from Klaviyo's Available tools page and from the Adrails MCP tools reference, both read on 4 October 2026.
Go further
Read more
- Klaviyo integrationThe read-only key, what is read every 6 hours and how the agent uses it.
- Meta Ads MCP serverRead, launch and change Meta campaigns from Claude, ChatGPT or Claude Code.
- Claude and AdrailsAdd Adrails as a custom connector in Claude, step by step.
- MCP tools referenceEvery tool, its inputs, what it reads or prepares, and who can call it.
Sources checked
- Klaviyo Developers: Klaviyo MCP server
- Klaviyo Developers: Connect to the MCP server
- Klaviyo Developers: Available tools
- Klaviyo Help Center: Klaviyo MCP Server Guide For Agencies
- Klaviyo Help Center: Frequently Asked Questions About Klaviyo App For Claude
- Klaviyo Help Center: How to use the Klaviyo app for ChatGPT
- Klaviyo Help Center: Frequently Asked Questions for the Klaviyo app for ChatGPT
- Claude connectors directory: Klaviyo
- Adrails docs: Klaviyo integration
- Adrails docs: MCP tools reference
FAQ
Common questions
Is there a Klaviyo MCP server?
Yes. Klaviyo runs a remote MCP server at mcp.klaviyo.com/mcp with OAuth sign-in, documented on developers.klaviyo.com and listed in Claude's directory since January 2026 as made by Klaviyo, with a local server for clients that run on your computer. Its tool table lists over 260 tools, about 40 of them loaded by default, and the listed Claude connector shows 27.
Can Klaviyo's MCP server send campaigns or edit flows?
On 4 October 2026 its tool table listed send_campaign, cancel_campaign_send, create_flow, update_flow and delete_flow as available on the remote server, next to create_segment and create_list. Klaviyo's Help Center article on the ChatGPT app, updated in August 2026, still says the app cannot send campaigns or build flows, so check the tool table; read-only=true on a custom connector disables every write tool.
Does the Adrails MCP server write to Klaviyo?
No. Adrails reads Klaviyo with a private key created as Read-Only Key and imports daily totals for campaigns and flows every 6 hours: messages received, opened and clicked, unsubscribes and attributed revenue. It sends no message and changes no flow; its write tools concern the ad accounts and return a proposal you apply in Adrails.
Which Klaviyo role or plan do I need for the MCP server?
The Klaviyo user must be an Owner, Admin or Manager on the account; Klaviyo's pages do not tie the server to a Klaviyo plan. On the client side, the listed connector works with a Claude plan, while a custom connector, needed for several accounts or for the query parameters, requires Claude Pro, Max, Team or Enterprise, or ChatGPT's Developer mode.
Can an agency connect several Klaviyo accounts?
Yes. Klaviyo's guide for agencies recommends one custom connector per client account, with the account named in the connector and a company parameter in the URL, and one Claude project per client whose instructions name the connector. In Adrails each client is a workspace with its own Klaviyo key and its own MCP connection.