Skip to main content

MCP server for Frappe CRM - interact with your CRM through AI assistants

Project description

Frappe CRM MCP Server

PyPI Version PyPI Downloads License Python

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

  1. A Frappe CRM instance (cloud or self-hosted)
  2. API credentials (see Generate API Keys)
  3. 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

  1. Log into your Frappe CRM instance
  2. Go to User → your user → API Access
  3. Click Generate Keys
  4. 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

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

frappe_crm_mcp-0.0.6.tar.gz (92.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

frappe_crm_mcp-0.0.6-py3-none-any.whl (18.5 kB view details)

Uploaded Python 3

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

Hashes for frappe_crm_mcp-0.0.6.tar.gz
Algorithm Hash digest
SHA256 7177f12e94a74e1b638efd638c8c8c10dfc97c6b2febce752d6ec88c4709fd7c
MD5 6cf30fbc07423754765099b2a71ef22f
BLAKE2b-256 4f9e0ef2b98693493d18f5c6a694334433f35f4f820cf3f6d9772cfff23ca691

See more details on using hashes here.

File details

Details for the file frappe_crm_mcp-0.0.6-py3-none-any.whl.

File metadata

File hashes

Hashes for frappe_crm_mcp-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 6a917622b9c6a2dda89fe5227137ae7d35c3fa62af9e6f7589747aec8ad06609
MD5 f8c9b94e42eecef35d162ae720845086
BLAKE2b-256 19b55f25ca75b722ed440d361d9b9a6e34b415dd433425004a3ab2c82257b14a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page