MCP server for Frappe CRM - interact with your CRM through AI assistants
Project description
Frappe CRM MCP Server
An MCP server that lets AI assistants interact with Frappe CRM.
Why?
Frappe CRM is a powerful open-source CRM. This MCP server gives AI assistants (like Claude) direct access to your CRM data, enabling natural language interactions:
- "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"
Installation
Requires Python 3.11+.
From PyPI (recommended)
# Using uvx (no install needed)
uvx frappe-crm-mcp
# Or install with pip
pip install frappe-crm-mcp
From source
git clone https://github.com/joehaddad2000/frappe-crm-mcp.git
cd frappe-crm-mcp
uv sync
Configuration
1. Generate Frappe API Keys
- Log into your Frappe CRM instance
- Go to User → your user → API Access
- Click Generate Keys
- Save the API Key and API Secret
2. Add to Claude Code
claude mcp add frappe-crm \
-s user \
-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
3. Add to 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"
}
}
}
}
Available Tools
Deals
deals_list- List deals with optional filtersdeals_get- Get a single dealdeals_create- Create a new dealdeals_update- Update deal fields
Leads
leads_list- List leads with optional filtersleads_get- Get a single leadleads_update- Update lead fieldsleads_convert- Convert a lead to a deal
Contacts
contacts_search- Search contacts by name/emailcontacts_get- Get a single contactcontacts_get_deals- Get deals linked to a contact
Organizations
organizations_list- List organizationsorganizations_get- Get a single organization
Notes
notes_list- List notes on a deal or leadnotes_add- Add a note to a deal or lead
Tasks
tasks_list- List tasks with optional filterstasks_get- Get a single tasktasks_add- Create a new tasktasks_update- Update task fields
Activities
activities_get- Get activity timeline for a deal or lead
Development
# Install dependencies
uv sync
# Run the server (for testing)
FRAPPE_URL=... FRAPPE_API_KEY=... FRAPPE_API_SECRET=... uv run python -m frappe_crm_mcp.server
# Test with FastMCP dev tools
FRAPPE_URL=... FRAPPE_API_KEY=... FRAPPE_API_SECRET=... uv run fastmcp dev src/frappe_crm_mcp/server.py
License
MIT
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
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.1.tar.gz.
File metadata
- Download URL: frappe_crm_mcp-0.0.1.tar.gz
- Upload date:
- Size: 86.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c99db15e2d9431926519886c7cfb96b62b7a584b0ce86dbac58a44187166300b
|
|
| MD5 |
5b8c4fc0e325e9d0491fa83bf3e6b878
|
|
| BLAKE2b-256 |
270f36dc21f2a8c6f829b4cb4fa231a85911bd85ce49f87e47e7655584de8bd0
|
File details
Details for the file frappe_crm_mcp-0.0.1-py3-none-any.whl.
File metadata
- Download URL: frappe_crm_mcp-0.0.1-py3-none-any.whl
- Upload date:
- Size: 13.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5212b71e79941fc57df2064f6f6c03f99c19ae4b72c00f66060446388c08e37b
|
|
| MD5 |
bbf40debffa5819c27589cac950d299a
|
|
| BLAKE2b-256 |
13cd61e123b1bab15f4a920eb42e83484967363340dc804baaa1ff89881716cd
|