mcp-crm
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., "@mcp-crmsearch CRM accounts for Acme"
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.
mcp-crm
A learning project: a Model Context Protocol server that exposes a CRM to an MCP client over stdio.
Sign-in goes through Microsoft Entra using the device-code flow. The resulting identity token is exchanged for a CRM access token, so CRM queries run as the signed-in user and return only what that user is allowed to see.
Requirements
Node.js 20+
An Entra app registration with the device-code (public client) flow enabled
A CRM API that accepts an Entra token at
POST /api/auth/entraand servesGET /api/accounts
Related MCP server: M365 Copilot Web Bridge
Setup
npm installCreate a .env in the project root:
ENTRA_CLIENT_ID=<your app registration's client id>
ENTRA_TENANT_ID=<your directory tenant id>
CRM_API_BASE_URL=https://your-crm.example.comAll three are required — the server throws on startup if any is missing. .env is gitignored; never commit it.
Running
npx tsx src/index.ts # run directly
npx tsc # type-check and build to dist/The server speaks MCP over stdio, so it is normally launched by a client rather than by hand. To register it with Claude Code:
{
"mcpServers": {
"crm": {
"command": "npx",
"args": ["tsx", "/absolute/path/to/mcp-crm/src/index.ts"]
}
}
}Log output goes to stderr, since stdout carries the MCP protocol.
Tools
Tool | Description |
| Begins Entra device-code sign-in and returns the code and URL to visit. Returns immediately; the sign-in completes in the background. |
| Reports whether that sign-in has finished, is still pending, or failed. |
| Searches real CRM accounts by name. Requires a completed sign-in. Returns up to 25 matches with |
| Searches a small hardcoded list of sample accounts. No auth needed — used for testing the wiring without a live CRM. |
Sign-in flow
start_crm_login cannot block until Entra finishes, so it is split in two:
Call
start_crm_login. It returns the device code and the URL to open.Complete sign-in in the browser.
Call
crm_login_statusto confirm. Once it reports a signed-in user,search_crm_accountswill work.
The token is held in memory only — restarting the server means signing in again.
License
ISC
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
- FlicenseNot gradedqualityDmaintenanceBridges stdio-based LLM harnesses to OAuth-protected remote MCP servers via Streamable HTTP, handling PKCE browser login and token refresh automatically.9
- AlicenseNot gradedqualityCmaintenanceExposes a user-authenticated Microsoft 365 Copilot Chat browser session as a stdio MCP server, enabling AI-powered chat interactions via MCP tools like copilot_chat and copilot_status.1MIT
- AlicenseNot gradedqualityAmaintenanceEnables managing Onde Inference accounts and model catalog operations through MCP tools such as login, app management, model registration, and assignment. Returns structured JSON over stdio for use with any MCP client.Apache 2.0
- FlicenseNot gradedqualityBmaintenanceProvides MCP tools to interact with GoHighLevel CRM data, including contacts, conversations, call transcripts, broker lead overviews, pipelines/opportunities, and task creation. Supports both stdio and HTTP transports for local and remote use.
Related MCP Connectors
Browser MCP for logged-in tasks. Uses your Chrome — credentials stay local. Zero-token replay.
Official Microsoft MCP Server to query Microsoft Entra data using natural language
Query SEC EDGAR filings, XBRL financials, and company data through MCP. STDIO & Streamable HTTP.
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/Saipranoy/mcp-crm'
If you have feedback or need assistance with the MCP directory API, please join our Discord server