AllMCP
Open-source MCP hub providing a single endpoint for AI agents to access dozens of business integrations (CRMs, spreadsheets, telephony, ads) with multi-tenancy, OAuth, and context-efficient tool discovery.
README
AllMCP
One MCP endpoint, every business integration — multi-tenant, context-efficient, self-hostable.
AllMCP is an open-source MCP hub: point any MCP client at a single endpoint and your AI agents get native, typed tools for CRMs, spreadsheets, telephony, ads platforms, and more. You host it; your users self-service their own provider connections through one-click browser flows. AllMCP handles OAuth, token refresh, credential encryption, and every API call.
Claude / ChatGPT / any MCP client
│
▼
https://your-host/mcp/ ← one endpoint, one API key
│
├─ bitrix24_list_contacts()
├─ google_sheets_values_get()
├─ amocrm_create_lead()
└─ … 12 providers, hundreds of tools
Why AllMCP
- Native three-level multi-tenancy.
Client → Organization → Useris built into the connection layer (URL + headers), not bolted on with string tags. One deployment serves an entire AI platform's customer base; every end user connects their own accounts, and credentials are encrypted per user per provider. - Context-efficient by design. Advertising hundreds of tools kills an agent's context window. AllMCP shows only system tools plus the connected providers' core tools; everything else stays hidden until the agent calls
describe_category()— or is revealed automatically on dispatch. Agents keep their context; tools stay one call away. - Native connectors, typed responses. Every tool is a hand-written connector returning typed, documented schemas — no proxying third-party MCP servers, no raw JSON dumps. Provider quirks (pagination, error shapes, rate limits) are absorbed inside the connector and documented in per-provider
findings.mdresearch notes. - Per-category agent skills. Connectors ship with workflow guides that
describe_category()serves to agents — the agent learns how to use a provider's tools, not just their signatures. - MCP OAuth 2.1 authorization server. Header-less clients (Claude web/mobile/Desktop connectors, ChatGPT dev mode) connect with nothing but the URL — authorization-code + PKCE, dynamic client registration, rotating refresh tokens.
- Production-grade engineering. Real-database tests (PostgreSQL + DragonflyDB via containers), structured logging, Prometheus metrics, encrypted credential storage, strict pre-commit gauntlet (isort → black → ruff → mypy → bandit).
Providers
| Provider | Category |
|---|---|
| Bitrix24 | CRM |
| amoCRM / Kommo | CRM |
| SalesDrive | CRM |
| Google Sheets | Spreadsheets |
| Google Docs | Documents |
| Google Ads | Advertising |
| Binotel | Telephony |
| Altegio | Booking |
| iiko | Restaurant ERP |
| YouGile | Project management |
| Linear | Issue tracking |
Adding a connector is deliberately cheap: one folder, a CONNECTOR_META, and tool modules that follow a documented pattern. See CONTRIBUTING.md.
Quickstart (self-host)
Requirements: Docker + Docker Compose, uv.
git clone https://github.com/Perception-Dynamics-Inc/allmcp.git
cd allmcp
cp .env.example .env # dev defaults work out of the box
make dev # postgres + dragonfly + rabbitmq + app + celery
make migrate # apply schema
The MCP endpoint is now at http://localhost:8000/mcp/, the REST API at http://localhost:8000/api, interactive docs at http://localhost:8000/docs.
Register a client and connect an agent (set PUBLIC_API_REGISTRATION_ENABLED=true in .env first — self-registration is off by default):
curl -X POST http://localhost:8000/api/auth/register \
-H 'Content-Type: application/json' \
-d '{"name": "my-platform"}'
# → returns your API key (shown once): allmcp_...
{
"mcpServers": {
"allmcp": {
"url": "http://localhost:8000/mcp/",
"headers": { "X-API-Key": "allmcp_..." }
}
}
}
Multi-tenant mode: append ?org_id=<your-org-ref>&user_id=<your-user-ref> to the URL and AllMCP scopes every credential and tool call to that end user — no other changes required.
There is also a CLI: npx allmcp (npm, source in cli/).
Provider OAuth apps
For OAuth2 providers (Google, amoCRM, …) each deployment registers its own OAuth app with the provider, then stores the client credentials in the provider_oauth_apps table:
INSERT INTO provider_oauth_apps (_id, provider, client_id, client_secret_encrypted, ...)
Secrets are encrypted with your ENCRYPTION_KEY — see src/allmcp/services/oauth.py for the exact row shape. API-key providers (Bitrix24 webhooks, YouGile, …) need no setup: users paste their key into the hosted connect page.
Architecture
src/allmcp/
├── core/ # config, database, cache, logger, security, celery
├── models/ # SQLAlchemy ORM — UUID7 PKs, one file per table
├── schemas/ # Pydantic — typed request/response models
├── services/ # business logic — ServiceResult[T], no exceptions
├── mcp/ # FastMCP server, tenant middleware, system tools
│ ├── middleware.py # per-call tenant resolution, rate limits, usage logs
│ └── tools/ # list_providers, connect_provider, describe_category, …
├── connectors/ # one folder per provider — the heart of the project
└── api/ # FastAPI REST — dashboard, OAuth callbacks, key entry
The agent loop every MCP client follows:
list_providers() → connect_provider("bitrix24", api_key=…) → bitrix24_list_deals()
For OAuth providers, connect_provider returns a browser URL; the end user clicks, consents, and the agent's next call just works.
Hosted version
Don't want to run infrastructure? The managed cloud version lives at allmcp.co — same core, plus a hosted dashboard, usage analytics, and zero-setup provider OAuth apps.
Contributing
New connectors, bug fixes, and docs are all welcome — see CONTRIBUTING.md for the connector-authoring guide and dev workflow. Security reports: see SECURITY.md.
License
Apache-2.0 © Perception Dynamics, Inc.
推荐服务器
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 模型以安全和受控的方式获取实时的网络信息。