@dancumberland/kit-mcp
The most complete MCP server for Kit.com (formerly ConvertKit). 13 agent-optimized tools covering 100% of the Kit V4 API โ including engagement analytics, bulk operations, and broadcast click tracking that no other Kit MCP offers.
How This Is Different
Other Kit MCP servers wrap each API endpoint as a separate tool (29+ tools). That approach breaks in practice:
Engagement Analytics (Exclusive)
This is the only Kit MCP that can answer "who are my most engaged subscribers?":
> Find my most engaged 100 subscribers who've been on my list over 6 months
Subscriber Comparison (100 of 100 loaded, sorted by open rate):
1. Alice <[email protected]> โ Open: 82.3% | Click: 24.1% | Sent: 95 | Last open: 2026-03-15 (ID: 456)
2. Bob <[email protected]> โ Open: 71.0% | Click: 18.5% | Sent: 102 | Last open: 2026-03-14 (ID: 789)
...
Other Kit MCPs can list subscribers and get basic profiles, but can't fetch engagement stats, compare across subscribers, or filter by engagement metrics.
What This Does
Connects any MCP client (Claude Desktop, Claude Code, Cursor, Windsurf, etc.) to your Kit.com email marketing account. Ask questions naturally:
- "How many subscribers do I have and how's my list growing?"
- "Show me my broadcast stats from last week"
- "Find my most engaged subscribers from the past 6 months"
- "Tag everyone who signed up through my landing page"
- "Create a draft broadcast for my newsletter"
- "Which links got the most clicks in my last broadcast?"
No coding required โ just set it up and start talking.
Prerequisites
- Node.js 22+ โ Download from nodejs.org. Check with
node --version. - A Kit.com account โ Free or paid, any plan.
- Your Kit API key โ kit.com โ Account Settings โ Developer. Starts with
kit_.
Setup: Claude Desktop App (Recommended)
Step 1: Find your config file
Mac:
open ~/Library/Application\ Support/Claude/
Open claude_desktop_config.json in any text editor.
Windows:
%APPDATA%\Claude\claude_desktop_config.json
Step 2: Add the Kit MCP server
If the file is empty or doesn't exist, paste this (replace your-kit-api-key with your actual key):
{
"mcpServers": {
"kit": {
"command": "npx",
"args": ["-y", "@dancumberland/kit-mcp@latest"],
"env": {
"KIT_API_KEY": "your-kit-api-key"
}
}
}
}
If you already have other MCP servers, add "kit" inside the existing "mcpServers" block with a comma after the previous entry.
Step 3: Restart Claude Desktop
Fully quit (not just close the window) and reopen.
Step 4: Verify it works
Test my Kit connection
Claude should respond with your account name, auth method, and rate limit.
Setup: Claude Desktop with Cowork
Cowork is Claude Desktop's background agent. After completing the setup above, Cowork automatically has access to your Kit tools.
Example tasks:
- "Every morning at 8am, summarize my subscriber growth and email performance from the last 24 hours."
- "Every Monday at 9am, compare my broadcast stats from the past week โ open rates, click rates, and unsubscribes."
- "Every Friday, list all tags with fewer than 10 subscribers (candidates for cleanup)."
Setup: Claude Code (CLI)
Add to .claude/settings.local.json or ~/.claude/settings.json:
{
"mcpServers": {
"kit": {
"command": "npx",
"args": ["-y", "@dancumberland/kit-mcp@latest"],
"env": {
"KIT_API_KEY": "your-kit-api-key"
}
}
}
}
Setup: Cursor
- Open Settings (Cmd+,)
- Search for "MCP"
- Click "Add MCP Server"
- Add:
{
"kit": {
"command": "npx",
"args": ["-y", "@dancumberland/kit-mcp@latest"],
"env": {
"KIT_API_KEY": "your-kit-api-key"
}
}
}
Tools
Things You Can Ask
Authentication
API Key (covers most features): Get at kit.com โ Developer. Set as KIT_API_KEY.
OAuth Token (optional, for purchases and bulk operations): Set KIT_OAUTH_TOKEN alongside your API key.
{
"env": {
"KIT_API_KEY": "your-api-key",
"KIT_OAUTH_TOKEN": "your-oauth-token"
}
}
Rate limits enforced automatically: 120 req/min (API key) or 600 req/min (OAuth), with retry + backoff on 429s.
Architecture: Why 13 Tools Instead of 29+
Most MCP servers create one tool per API endpoint. For Kit's API, that means 29+ tools โ which causes real problems:
- Context bloat โ 8,000+ tokens just for tool definitions, leaving less room for your actual conversation
- Poor accuracy โ AI tool selection degrades measurably beyond 20 tools (research)
- Compatibility โ Cursor has a hard limit of 40 tools across all servers; 29 tools from one server leaves almost no room for others
This server uses 13 composite tools with a discriminated action parameter. Same API coverage, 60% fewer tokens, better accuracy. Each tool groups related operations (e.g., all subscriber actions under manage_subscribers) so the AI picks the right tool on the first try.
Error Handling
Errors include recovery hints that Claude can act on:
Error 401: Invalid API key
Recovery: Check your KIT_API_KEY. Find your key at kit.com โ Account Settings โ Developer.
- 429 (rate limit): Automatic retry with exponential backoff, up to 3 attempts
- 5xx (server error): Automatic retry once
- 422 (validation): No retry โ returns the error immediately with a fix suggestion
Troubleshooting
Development
npm install
npm run dev # Watch mode
npm run build # Production build
npm test # Unit tests (179 tests)
npm run test:int # Integration tests (requires KIT_API_KEY)
npm run lint # Biome check
npm run typecheck # TypeScript check
License
MIT