OpenTeleCRM MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@OpenTeleCRM MCP ServerShow me the leads assigned to me today"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
OpenTeleCRM
1:1 FOSS clone of TeleCRM — a telecalling-first sales CRM. Multi-tenant from line one, self-hosted natively (no Docker), PostgreSQL with RLS.
Surface | Status | Details |
REST API | ✅ 75/75 tests | NestJS + Fastify on port 3005 |
JSON-RPC MCP | ✅ 15/15 tests · 13 tools | Streamable HTTP on port 3100 (dev) |
Bruno collection | ✅ 27 reqs, 58 assertions | TeleCRM wire-compatible |
✅ 14/14 tests · wwebjs driver | Pairing-code auth, templates, broadcasts | |
Telephony | ✅ 11/11 tests | Dialer + callbacks, OSS provider on Asterisk |
Quick start
make setup # provision deps + install + db-init + db-migrate + db-seed
pnpm dev # API on :3005, MCP on :3100
pnpm test # 75 API + 15 MCP + 14 whatsapp + 11 telephony tests, 13 suitesOr step by step:
make provision # system deps (Debian)
make install # pnpm install
make db-init # create DB + role
make db-migrate # Drizzle migrations
make db-seed # demo enterprise, 5000 leads, 3 users, 2 pipelinesBruno collection
cd collections/opentelecrm
bash ../../scripts/bruno-bootstrap-jwt.sh # inject a dev JWT
npx @usebruno/cli run --env local -r . # 27 requests, 58 assertionsRelated MCP server: Outlet das Cores CRM
Architecture
A Turborepo monorepo (pnpm@9.15.4, turbo run …). ESM-only, Node ≥ 22.
opentelecrm/
├── services/
│ ├── api/ # NestJS REST API (Fastify, port 3005)
│ ├── mcp/ # JSON-RPC MCP (Express, port 3006)
│ └── whatsapp/ # WhatsApp driver (whatsapp-web.js, pairing-code)
├── packages/
│ └── db/ # Drizzle schema, RLS, migrations, seed data
├── apps/
│ ├── web/ # Next.js web app (placeholder)
│ ├── widget/ # Embeddable widget(placeholder)
│ ├── extension/ # Browser extension(placeholder)
│ └── mobile/ # React Native app (placeholder)
├── collections/
│ └── opentelecrm/ # Bruno API test collection
├── docs/ # ARCHITECTURE.md, PARITY.md, ADRs
└── scripts/
└── provision/ # Native Debian setup (no Docker)Auth flow
Dev JWT — HS256 signed with
DEV_JWT_SECRET, used in local dev + BrunoAPI tokens —
telekrm_async_/telekrm_sync_tokens, stored as SHA-256 hashOIDC — Zitadel id-tokens (future)
All requests route through AuthGuard + RLS via withTenant(eid) — no row can leak across tenants.
TeleCRM parity
Area | Status |
Foundation (multi-tenant, RLS, seed data) | ✅ |
Lead CRUD + search + upsert | ✅ |
Action logging (note, call, WhatsApp) | ✅ |
Async autoupdate + validation | ✅ |
API token management | ✅ |
Team member list | ✅ |
Custom actions | ✅ |
WhatsApp (conversations, send, templates) | ✅ |
Telephony (calls, dialer, callbacks, recordings) | ✅ |
Automation (rules, schedule, distribution, webhook) | ✅ |
Web app, widget, extension, mobile | 🚧 — web desk shipped (real-stats dashboard, lead action bar, dialer, automations, templates, broadcasts, callbacks, webhooks); widget/extension/mobile empty |
Full detail: docs/PARITY.md
Test surface
pnpm test # all workspace tests (75 API + 15 MCP + 14 whatsapp + 11 telephony)
cd services/api && npx vitest run --config vitest.contract.config.ts # focused: 75 tests, 9 files
make typecheck # tsc --noEmit across all workspaces
pnpm lint # BiomeTests spin up the real API (dev JWT + seeded DB), hit authGuard + RLS — no mocking.
Tech stack
Runtime — Node.js ≥ 22, ESM
Package management — pnpm + Turborepo
API — NestJS 10 + Fastify adapter
DB — PostgreSQL 16, Drizzle ORM + Drizzle Kit, native RLS
Auth — HS256 JWTs + SHA-256 API tokens + Zitadel OIDC (future)
Deps — TypeScript 5.7, Biome 1.9, Vitest
WhatsApp — whatsapp-web.js (wwebjs), pairing-code auth
Infra — Native Debian 13, systemd units, no Docker
License
AGPL-3.0 — see docs/LICENSES.md.
This is not affiliated with TeleCRM. It is an independent, clean-room implementation of the documented API surface for self-hosted use.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Flicense-quality-maintenanceEnables AI agents to interact with Bitrix24 CRM for managing contacts, deals, tasks, and leads via a comprehensive set of tools. It supports advanced features like sales team monitoring, performance analytics, and automated CRM searching.Last updated
- Flicense-qualityDmaintenanceIntegrates CRM data with AI agents to manage leads, track pipeline statistics, and search price catalogs via Supabase. It enables automated lead creation, stage updates, and history tracking through natural language commands.Last updated
- Alicense-qualityCmaintenanceEnables AI agents to interact with Bitrix24 CRM through standardized MCP tools, including searching and managing contacts, deals, leads, tasks, and replying in chats.Last updatedMIT
- Alicense-qualityCmaintenanceA multi-tenant MCP server that exposes DataCrazy CRM REST API as 63 auto-generated tools, allowing AI assistants to query leads, conversations, pipelines, and more through natural language.Last updatedMIT
Related MCP Connectors
Agent-native CRM. 25 tools — contacts, deals, sequences, enrichment waterfall, audit log.
LeadConnector / GoHighLevel MCP Pack — wraps the GoHighLevel CRM for AI agents.
Vruum AI revenue platform — outbound, deals, pipeline & CRM automation over one MCP.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/iamsrishanth/OpenTeleCRM'
If you have feedback or need assistance with the MCP directory API, please join our Discord server