Skip to main content

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

  1. Log into your Frappe CRM instance
  2. Go to User → your user → API Access
  3. Click Generate Keys
  4. 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 filters
  • deals_get - Get a single deal
  • deals_create - Create a new deal
  • deals_update - Update deal fields

Leads

  • leads_list - List leads with optional filters
  • leads_get - Get a single lead
  • leads_update - Update lead fields
  • leads_convert - Convert a lead to a deal

Contacts

  • contacts_search - Search contacts by name/email
  • contacts_get - Get a single contact
  • contacts_get_deals - Get deals linked to a contact

Organizations

  • organizations_list - List organizations
  • organizations_get - Get a single organization

Notes

  • notes_list - List notes on a deal or lead
  • notes_add - Add a note to a deal or lead

Tasks

  • tasks_list - List tasks with optional filters
  • tasks_get - Get a single task
  • tasks_add - Create a new task
  • tasks_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

frappe_crm_mcp-0.0.1.tar.gz (86.9 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.1-py3-none-any.whl (13.5 kB view details)

Uploaded Python 3

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

Hashes for frappe_crm_mcp-0.0.1.tar.gz
Algorithm Hash digest
SHA256 c99db15e2d9431926519886c7cfb96b62b7a584b0ce86dbac58a44187166300b
MD5 5b8c4fc0e325e9d0491fa83bf3e6b878
BLAKE2b-256 270f36dc21f2a8c6f829b4cb4fa231a85911bd85ce49f87e47e7655584de8bd0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for frappe_crm_mcp-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5212b71e79941fc57df2064f6f6c03f99c19ae4b72c00f66060446388c08e37b
MD5 bbf40debffa5819c27589cac950d299a
BLAKE2b-256 13cd61e123b1bab15f4a920eb42e83484967363340dc804baaa1ff89881716cd

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