@alexandrebouchez/batch-mcp
MCP server for Batch.com's Customer Engagement and Mobile Engagement APIs, enabling agents to manage profiles, send push notifications, orchestrate campaigns, and handle data exports through typed tools.
README
batch-mcp — archived, superseded by batch-cep
⚠️ This repo is archived. The active project is now
batch-cep— a Claude skill (Cowork / Claude Code) that wraps Batch.com via directfetch(), without an MCP server in the middle.
Why the pivot
This repository was a TypeScript MCP server for Batch.com (CEP v2.x + MEP v1.1) — 60 typed tools, 318 Vitest specs, deployable via npm npx or HTTP on Vercel. Architecturally solid, but the target audience changed mid-project:
- Original target : developers using Claude Code / Claude Desktop with stdio MCP.
- Real target (Drivenlabs clients) : knowledge workers (CEOs, marketers, growth teams) using Claude Cowork in the browser.
Cowork accepts custom Agent Skills (uploadable .zip packages with SKILL.md + scripts) but the MCP-server route there requires OAuth 2.1 (hosted server). For a per-customer credentials model — every Batch user has their own REST API key — the OAuth route means becoming a SaaS, which contradicts the small, self-distributed spirit of the project.
The Skill+scripts approach :
- Distributes via
alexandrebouchez/driven-alex-pluginsmarketplace (Claude Code) OR.zipupload (Cowork). - Runs scripts locally in the Cowork sandbox — no hosting, no OAuth, no SaaS.
- Stores credentials per-customer in
${PROJECT_FOLDER}/batch-credentials.json(server-side from the user's POV, never sent anywhere except api.batch.com). - Same 60 Batch endpoints covered — same surface, just different packaging.
Where it lives now
- Plugin : driven-alex-plugins/batch-cep
- Install Claude Code :
claude plugin marketplace add alexandrebouchez/driven-alex-plugins claude plugin install batch-cep@driven-alex-plugins - Install Cowork : zip
batch-cep/skills/batch-cep/→ upload via Settings > Skills
What stays in this repo
This repo remains accessible (read-only) as a reference of Batch API surface modeling:
- 25 CEP tools fully spec'd + tested (Phase 2, merged to
main, see PR #1) - 34 MEP tools fully spec'd + tested (Phase 3, branch
phase3-mep-tools, see PR #2 — closed without merge) - Comprehensive Zod schemas, error mapping (
BatchApiError), async 202 + indexing_token handling, confirm gates - 318 Vitest specs covering RED cases, happy paths, edge cases
If you ever want to revive the MCP server angle (e.g., for users of Claude Code who prefer MCP), the code here is a complete reference implementation.
Original design docs
- Phase 2 design spec (CEP tools, 973 lines)
- Phase 3 design spec (MEP tools, 1529 lines)
- Phase 2 implementation plan
- Phase 3 implementation plan
<details> <summary>Original README (archived)</summary>
What it did
Let any MCP-compatible agent (Claude Desktop, Claude Code, Cursor, Continue, the Anthropic API, ChatGPT, etc.) operate a Batch.com account: update profiles, manage audiences, send transactional pushes, orchestrate omnichannel campaigns, request data exports, and more — through a curated set of typed tools.
Every Batch endpoint that ships in their public docs was exposed as a tool. Destructive operations required an explicit confirm: true. Async 202 operations returned the indexing token so the agent could poll completion explicitly.
Install (stdio)
npx -y @alexandrebouchez/batch-mcp
Configure your client (Claude Desktop example, ~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"batch": {
"command": "npx",
"args": ["-y", "@alexandrebouchez/batch-mcp"],
"env": {
"BATCH_REST_KEY": "your_rest_key",
"BATCH_PROJECT_KEY": "your_project_key",
"BATCH_IOS_LIVE_KEY": "...",
"BATCH_ANDROID_LIVE_KEY": "..."
}
}
}
}
See .env.example for the full env var list.
Install (HTTP, self-hosted on Vercel)
Once deployed, point your MCP client at https://<your-deploy>.vercel.app/api/mcp.
Development
pnpm install
pnpm dev # starts both packages in watch mode
pnpm test
pnpm typecheck
pnpm lint
Monorepo layout:
packages/server — @alexandrebouchez/batch-mcp (npm)
apps/web — Next.js landing + /api/mcp endpoint (Vercel)
License
AGPL-3.0-only. If you run a modified version of this server as a service, you must publish your source under AGPL-3.0. See LICENSE.
This is intentional: it lets the community fork and improve the server freely, while preventing closed-source SaaS providers (including Batch.com itself) from absorbing the code without contributing back.
Disclaimer
This project is not affiliated with, endorsed by, or sponsored by Batch SAS. "Batch" is a trademark of its respective owner. This is an independent open-source integration built against the public Batch.com REST API.
</details>
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。