@alexandrebouchez/batch-mcp

@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.

Category
Visit Server

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 direct fetch(), 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-plugins marketplace (Claude Code) OR .zip upload (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


<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)

Deploy with 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>

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured