Customer Io

live Reference

MCP server for Customer Io

4 tools
0ms auth
free tier 50 calls/day

Tools

cio_list_campaigns

Return Customer.io lifecycle campaigns with IDs, names, state, trigger configuration, actions, tags, and timestamps. Answers which automations exist and whether they are running, drafted, or stopped.

No parameters required.

Try it
cio_campaign_metrics

Return time-bucketed Customer.io delivery, bounce, open, click, unsubscribe, and conversion metrics for one campaign. Answers how a lifecycle campaign performed and when engagement changed.

No parameters required.

Try it
cio_list_segments

Return Customer.io audience segments with IDs, names, descriptions, dynamic or manual type, build progress, tags, and timestamps. Answers which audiences are available for targeting or analysis.

No parameters required.

Try it
cio_list_messages

Return a bounded page of Customer.io message deliveries with recipients, channel, campaign or newsletter parent, and delivery engagement timestamps. Answers which messages reached, bounced, opened, cl

No parameters required.

Try it

Test with curl

The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.

List available tools
bash
curl -X POST https://gateway.pipeworx.io/customer-io/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Call a tool
bash
curl -X POST https://gateway.pipeworx.io/customer-io/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"cio_list_campaigns","arguments":{}}}'

Use with the SDK

Install @pipeworx/sdk to call tools from any TypeScript/Node project.

TypeScript
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("cio_list_campaigns", {});
ask_pipeworx
// Or ask in plain English:
const answer = await px.ask("mcp server for customer io");