Frappe CRM MCP Server
Connect your AI tools to Frappe CRM using the Model Context Protocol.
Once connected, your AI assistants can interact with your CRM data:
- "Show me all open deals"
- "Create a lead for John at Acme Corp"
- "What's happening with the Tesla deal?"
- "Add a note to the Stripe deal about our call today"
Prerequisites
- A Frappe CRM instance (cloud or self-hosted)
- API credentials (see Generate API Keys)
- Python 3.11+ and uv (for local installation)
Installation
Claude Code
claude mcp add frappe-crm \
-e FRAPPE_URL=https://your-site.frappe.cloud \
-e FRAPPE_API_KEY=your_api_key \
-e FRAPPE_API_SECRET=your_api_secret \
-- uvx frappe-crm-mcp
Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"frappe-crm": {
"command": "uvx",
"args": ["frappe-crm-mcp"],
"env": {
"FRAPPE_URL": "https://your-site.frappe.cloud",
"FRAPPE_API_KEY": "your_api_key",
"FRAPPE_API_SECRET": "your_api_secret"
}
}
}
}
Cursor
Add to .cursor/mcp.json in your project:
{
"mcpServers": {
"frappe-crm": {
"command": "uvx",
"args": ["frappe-crm-mcp"],
"env": {
"FRAPPE_URL": "https://your-site.frappe.cloud",
"FRAPPE_API_KEY": "your_api_key",
"FRAPPE_API_SECRET": "your_api_secret"
}
}
}
}
Windsurf
Add to your Windsurf MCP config:
{
"mcpServers": {
"frappe-crm": {
"command": "uvx",
"args": ["frappe-crm-mcp"],
"env": {
"FRAPPE_URL": "https://your-site.frappe.cloud",
"FRAPPE_API_KEY": "your_api_key",
"FRAPPE_API_SECRET": "your_api_secret"
}
}
}
}
Generate API Keys
- Log into your Frappe CRM instance
- Go to User → your user → API Access
- Click Generate Keys
- Copy the API Key and API Secret (secret is only shown once)
Available Tools
| Tool | Description |
|---|---|
deals_list |
List deals with optional filters |
deals_get |
Get a single deal by ID |
deals_create |
Create a new deal |
deals_update |
Update deal fields |
deals_get_contacts |
Get contacts linked to a deal |
deals_add_contact |
Link a contact to a deal |
deals_remove_contact |
Unlink a contact from a deal |
deals_set_primary_contact |
Set a deal's primary contact |
leads_list |
List leads with optional filters |
leads_get |
Get a single lead by ID |
leads_create |
Create a new lead |
leads_update |
Update lead fields |
leads_convert |
Convert a lead to a deal |
contacts_search |
Search contacts by name or email |
contacts_get |
Get a single contact by ID |
contacts_create |
Create a new contact |
contacts_update |
Update contact fields |
contacts_get_deals |
Get deals linked to a contact |
organizations_list |
List organizations |
organizations_get |
Get a single organization by ID |
organizations_create |
Create a new organization |
organizations_update |
Update organization fields |
notes_list |
List notes on a deal or lead |
notes_add |
Add a note to a deal or lead |
tasks_list |
List tasks with optional filters |
tasks_get |
Get a single task by ID |
tasks_add |
Create a new task |
tasks_update |
Update task fields |
activities_get |
Get activity timeline for a deal or lead |
deal_statuses_list |
List all deal pipeline statuses |
deal_statuses_create |
Create a new deal status |
deal_statuses_update |
Update a deal status |
lead_statuses_list |
List all lead pipeline statuses |
lead_statuses_create |
Create a new lead status |
lead_statuses_update |
Update a lead status |
get_field_options |
Get allowed values for any constrained field (Link/Select types) |
Development
git clone https://github.com/joehaddad2000/frappe-crm-mcp.git
cd frappe-crm-mcp
uv sync
# Run with environment variables
FRAPPE_URL=... FRAPPE_API_KEY=... FRAPPE_API_SECRET=... uv run frappe-crm-mcp
License
MIT
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
frappe_crm_mcp-0.0.6.tar.gz
(92.3 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file frappe_crm_mcp-0.0.6.tar.gz.
File metadata
- Download URL: frappe_crm_mcp-0.0.6.tar.gz
- Upload date:
- Size: 92.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.9.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7177f12e94a74e1b638efd638c8c8c10dfc97c6b2febce752d6ec88c4709fd7c
|
|
| MD5 |
6cf30fbc07423754765099b2a71ef22f
|
|
| BLAKE2b-256 |
4f9e0ef2b98693493d18f5c6a694334433f35f4f820cf3f6d9772cfff23ca691
|
File details
Details for the file frappe_crm_mcp-0.0.6-py3-none-any.whl.
File metadata
- Download URL: frappe_crm_mcp-0.0.6-py3-none-any.whl
- Upload date:
- Size: 18.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.9.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6a917622b9c6a2dda89fe5227137ae7d35c3fa62af9e6f7589747aec8ad06609
|
|
| MD5 |
f8c9b94e42eecef35d162ae720845086
|
|
| BLAKE2b-256 |
19b55f25ca75b722ed440d361d9b9a6e34b415dd433425004a3ab2c82257b14a
|