multicast-mcp
v0.1.0
Published
MCP gateway for Claude.ai — one integration, all your MCP servers, parallel execution. Deployed on Cloudflare Workers for free.
Maintainers
Readme
Multicast
One integration. All your MCP servers. Parallel execution.
Claude.ai ──> Multicast ──┬──> context-hub
├──> supabase
└──> github
(all in parallel)The Problem
Claude.ai requires a separate integration for each MCP server. 5 servers = 5 integrations, 5 OAuth setups, and sequential execution. Each tool call takes 2-5 seconds. Four sequential calls = 12-20 seconds of waiting.
The Solution
Add Multicast once. It connects to all your MCP servers and calls them in parallel.
- One integration instead of many
- Parallel execution instead of sequential
- Unified discovery -- Claude sees all your tools through one gateway
- $0/month on Cloudflare Workers free tier
Quick Start
npx create-multicastThe installer will:
- Scan your machine for existing MCP configurations (Claude Code, Claude Desktop, Cursor, VS Code)
- Show you which servers are HTTP-compatible (and which are stdio-only)
- Let you select which servers to register
- Auto-detect credentials from existing configs
- Deploy to Cloudflare Workers
- Give you the URL to add to Claude.ai
How It Works
Multicast exposes 3 tools to Claude:
| Tool | Purpose |
|------|---------|
| list_servers | Discover available servers and their tools |
| multicast | Call multiple servers in parallel, get combined results |
| refresh_servers | Force re-discovery of server tools |
Example: Parallel Calls
{
"calls": [
{ "server": "context-hub", "tool": "search_memories", "args": { "query": "project ideas" } },
{ "server": "supabase", "tool": "execute_sql", "args": { "sql": "SELECT count(*) FROM users" } },
{ "server": "github", "tool": "search_code", "args": { "query": "authentication" } }
]
}All three calls execute simultaneously. Results return together:
{
"results": [
{ "server": "context-hub", "tool": "search_memories", "success": true, "output": {...}, "duration_ms": 340 },
{ "server": "supabase", "tool": "execute_sql", "success": true, "output": {...}, "duration_ms": 520 },
{ "server": "github", "tool": "search_code", "success": true, "output": {...}, "duration_ms": 450 }
],
"total_ms": 520,
"completed": 3,
"failed": 0
}Without Multicast: 3 calls x ~4s each = ~12 seconds With Multicast: 1 call, all parallel = ~0.5 seconds
Credentials and Security
You deploy your OWN Multicast instance on your Cloudflare account.
- MCP server URLs stored as encrypted env vars (
MCP_SERVER_*) - Auth tokens stored as encrypted env vars (
MCP_AUTH_*) - Credentials never leave your Cloudflare account
- No shared infrastructure, no central server
- Each user has their own isolated instance
Manual Setup
If you prefer not to use the installer:
# 1. Clone and install
git clone https://github.com/mayankbohra/multicast.git
cd multicast
npm install
# 2. Login to Cloudflare
npx wrangler login
# 3. Create D1 database
npx wrangler d1 create multicast-db
# Copy the database_id from output and update wrangler.toml
# 4. Run migration
npx wrangler d1 execute multicast-db --remote --file=./migrations/0001_init.sql
# 5. Register your MCP servers
npx wrangler secret put MCP_SERVER_CONTEXT_HUB
# Enter: https://context-hub.yourname.workers.dev/mcp
npx wrangler secret put MCP_SERVER_SUPABASE
# Enter: https://supabase-mcp.example.com/mcp
npx wrangler secret put MCP_AUTH_SUPABASE
# Enter: Bearer sb-xxxxxxxxxxxx
# 6. Deploy
npx wrangler deploy
# 7. Add to Claude.ai
# Settings -> Integrations -> Add MCP Server
# Enter: https://multicast.yourname.workers.dev/mcpAdding / Removing Servers
# Add a new server
npx wrangler secret put MCP_SERVER_NEWSERVICE
npx wrangler secret put MCP_AUTH_NEWSERVICE # if auth needed
npx wrangler deploy
# Remove a server
npx wrangler secret delete MCP_SERVER_OLDSERVICE
npx wrangler secret delete MCP_AUTH_OLDSERVICE
npx wrangler deploy
# Refresh tool discovery after changes
# Ask Claude to call: refresh_serversstdio vs HTTP
Multicast runs in the cloud (Cloudflare Workers). It can only call MCP servers that have HTTP endpoints.
| Server Type | Compatible? | Example | |------------|-------------|---------| | HTTP MCP servers | Yes | context-hub, supabase-mcp, any remote MCP | | stdio MCP servers | No | filesystem, git, sqlite (these run locally) |
The installer auto-detects which type each server is and only offers HTTP-compatible ones.
Limitations
- Cannot parallelize Claude's built-in web search (internal to Anthropic)
- Cannot parallelize Claude's managed connectors (Slack, Gmail, Notion)
- Only works with your custom HTTP MCP servers
- Cannot call stdio/local MCP servers (they run on your machine, not in the cloud)
- Requires a free Cloudflare account
Tool Discovery
Multicast caches each server's available tools in a D1 database. The cache refreshes automatically every 24 hours, or on-demand via the refresh_servers tool. This means list_servers responds instantly without calling downstream servers every time.
Cost
| Component | Cost | |-----------|------| | Cloudflare Workers | $0 (100K requests/day free) | | Cloudflare D1 | $0 (5M reads/day free) | | Total | $0/month |
Tech Stack
- Runtime: Cloudflare Workers
- Database: Cloudflare D1 (tool discovery cache only)
- Protocol: Model Context Protocol (MCP) over Streamable HTTP
- Language: TypeScript (single file)
- Auth storage: Cloudflare encrypted environment variables
Related
- Claude Context Hub -- shared AI context across Claude interfaces (same $0 Cloudflare stack)
License
MIT
