Customer.io plugin for Claude Code
Install the official Customer.io plugin for Claude Code and Cowork to add the Customer.io MCP connector, skills, and slash commands so Claude can work in your workspace.
Connect Claude Code to your Customer.io workspace with the official Customer.io plugin. It adds the Customer.io MCP connector, skills, and slash commands so Claude can work with automations, profiles, Design Studio, Pipelines, and SDKs. The plugin runs wherever Claude Code and Cowork do—in the Claude desktop apps, on the web, in your terminal, and in IDE extensions.
You need a Customer.io account with MCP enabled. Installing the plugin adds the connector; you still authorize once via OAuth to pick workspaces and permission scopes.
Before you start
- A Customer.io account with MCP enabled. If MCP is off, ask an account admin to turn it on. See Get started with MCP for the toggle, permission scopes, and live-data settings.
- Claude Code or Cowork, on any surface: the Claude desktop apps, the web, your terminal, or an IDE extension.
- If you already added Customer.io as a custom MCP server in Claude Code, remove that server first. See Already using Customer.io MCP in Claude?. A Customer.io connector in claude.ai chat is separate and can stay.
Install the plugin
Once the directory listing is live, run /plugin in Claude Code and install Customer.io from the directory. You can also install it directly:
/plugin marketplace add customerio/claude-plugin
/plugin install customerio@customerio
Restart Claude Code if it asks you to. For Cowork, install from the plugin directory (or ask an org admin to make it available). You don’t need to clone anything from GitHub to install.
Connect your account
- Ask Claude anything Customer.io-related, or run
/mcpand connect the customerio server. - The first Customer.io tool call opens Customer.io OAuth in your browser.
- Complete OAuth. Choose the workspaces and permission scopes you want to grant, then allow access. See permission scopes for details.
- Confirm
/mcpshows a single Customer.io server namedcustomerio, connected.
The connector is mcp.customer.io. After you log in, the session uses your account’s home region automatically—EU and US accounts use the same flow, and you never pick a data center or type a region-specific URL.
What you can ask
Once you’re connected, describe what you want in plain language. A few examples:
- List my Customer.io workspaces—which region am I on?
- List the active automations in my workspace.
- Find people who haven’t opened an email in 30 days and create a win-back segment.
- Draft or review a Design Studio welcome email.
- Add a JavaScript or React Native source in Pipelines.
- Set up Customer.io for my React Native app.
Or start from a slash command:
| Command | What it does |
|---|---|
/customerio:campaign-report | Metrics and recommendations for an automation |
/customerio:build-segment | Build a segment from a plain-English audience description |
/customerio:draft-email | Create a Design Studio draft with a QA review |
/customerio:workspace-health | Read-only deliverability and pipeline diagnosis |
The agent looks up Customer.io skills and API schema instead of guessing endpoints. It previews writes with a dry run, and Claude Code asks for your permission before a live write changes anything.
The plugin’s skills cover:
- Journeys — automations, profiles, segments, broadcasts, transactional, and in-app messages
- Design Studio — emails, components, global styles, review, and publish
- Pipelines — sources, destinations, reverse ETL, and moving data in and out
- SDKs — JavaScript and mobile SDK setup, sandbox testing, and going live
Already using Customer.io MCP in Claude?
Don’t add a second Customer.io MCP server in Claude Code. Two servers for the same host fight each other—duplicate tools, OAuth stuck on an old workspace, or tools that quietly hit the wrong session.
If you previously added Customer.io by hand (with claude mcp add, an .mcp.json edit, or a pasted URL):
- Remove that server—for example, run
claude mcp remove customerio, or delete it from wherever you added it. - Install the plugin and connect as described above.
The Customer.io connector in Claude’s chat is a different install path and doesn’t conflict—if you use the chat connector, see Claude setup.
Troubleshooting
| Symptom | What to do |
|---|---|
| No Customer.io plugin in the directory | The listing may still be in review. Install with /plugin marketplace add customerio/claude-plugin, then /plugin install customerio@customerio. Don’t fall back to pasting mcp.customer.io as a custom server. |
| OAuth never opens, or “needs login” | Confirm an admin enabled Customer.io MCP, then run /mcp and retry the connection. |
| Claude can’t see any Customer.io tools | Run /mcp and confirm customerio is connected, and check the plugin is enabled under /plugin. Restart Claude Code if needed. |
| Duplicate Customer.io tools or servers | A hand-added MCP server is shadowing the plugin. Remove the extra Customer.io servers and keep only the plugin’s customerio server. |
| Writes are blocked, or you get a 403 about live data | The workspace’s Allow agent to edit live data setting is off. That’s an admin setting—see Get started with MCP. |
| You have an EU account and worry you need a different URL | You don’t. It’s the same connector; your region follows your account after OAuth. |
The plugin is open source—see github.com/customerio/claude-plugin (MIT).