Skip to main content

Frappe MCP Server

PyPI Python Docker Hub Docker pulls GHCR MCP Registry License

frappe_mcp MCP server

mcp-name: io.github.muthanii/frappe_mcp

A Model Context Protocol (MCP) server for Frappe Framework. Connect Claude Desktop, VS Code Copilot, and other MCP clients to any Frappe/ERPNext site via its REST API.

Where to get it

Distribution Reference Page
PyPI frappe-mcp-server pypi.org/project/frappe-mcp-server
Docker Hub muthanii/frappe-mcp hub.docker.com/r/muthanii/frappe-mcp
GitHub Container Registry ghcr.io/muthanii/frappe-mcp ghcr package
MCP Registry io.github.muthanii/frappe_mcp registry API
Glama — glama.ai/mcp/servers/muthanii/frappe_mcp
Source — github.com/muthanii/frappe_mcp

Features

  • Document CRUD — get, create, update, delete Frappe doctypes
  • Search — full-text and filtered document search
  • Remote method calls — invoke any server-side Python method
  • Authentication — API key + secret (token-based auth)
  • Docker-first — single docker run command, no Python install needed

Quick start

With uvx (no install):

FRAPPE_URL=https://your-site.com \
FRAPPE_API_KEY=your-api-key \
FRAPPE_API_SECRET=your-api-secret \
  uvx frappe-mcp-server

With pip:

pip install frappe-mcp-server
frappe-mcp-server

With Docker (Docker Hub):

docker run -i --rm \
  -e FRAPPE_URL=https://your-site.com \
  -e FRAPPE_API_KEY=your-api-key \
  -e FRAPPE_API_SECRET=your-api-secret \
  muthanii/frappe-mcp

With Docker (GHCR):

docker run -i --rm \
  -e FRAPPE_URL=https://your-site.com \
  -e FRAPPE_API_KEY=your-api-key \
  -e FRAPPE_API_SECRET=your-api-secret \
  ghcr.io/muthanii/frappe-mcp

Available tools

Every tool ships MCP tool annotations and a declared outputSchema, so a client can tell read tools from destructive ones before calling them.

Tool Description Access Destructive Idempotent
frappe_ping Check connectivity and credentials read-only no yes
frappe_get_doc Retrieve a single document by doctype + name read-only no yes
frappe_search_docs Search/list documents with filters read-only no yes
frappe_create_doc Create a new document write no no
frappe_update_doc Update an existing document write yes yes
frappe_delete_doc Delete a document — irreversible write yes no
frappe_run_method Call a whitelisted server-side method write yes no

frappe_run_method is marked destructive because its effect is determined entirely by the method you name.

Configuration

Environment variable Required Description
FRAPPE_URL Yes Base URL of your Frappe site (e.g. https://erp.example.com)
FRAPPE_API_KEY Yes Frappe API key
FRAPPE_API_SECRET Yes Frappe API secret
FRAPPE_VERIFY_SSL No Set to false to skip TLS verification (default: true)
FRAPPE_TIMEOUT No Request timeout in seconds (default: 30)

MCP client config

Add this to your claude_desktop_config.json or Copilot config.

Via uvx:

{
  "mcpServers": {
    "frappe": {
      "command": "uvx",
      "args": ["frappe-mcp-server"],
      "env": {
        "FRAPPE_URL": "https://your-site.com",
        "FRAPPE_API_KEY": "your-api-key",
        "FRAPPE_API_SECRET": "your-api-secret"
      }
    }
  }
}

Via Docker:

{
  "mcpServers": {
    "frappe": {
      "command": "docker",
      "args": [
        "run", "-i", "--rm",
        "-e", "FRAPPE_URL",
        "-e", "FRAPPE_API_KEY",
        "-e", "FRAPPE_API_SECRET",
        "muthanii/frappe-mcp"
      ],
      "env": {
        "FRAPPE_URL": "https://your-site.com",
        "FRAPPE_API_KEY": "your-api-key",
        "FRAPPE_API_SECRET": "your-api-secret"
      }
    }
  }
}

Local development

pip install -e .
frappe-mcp

License

MIT — see LICENSE.


frappe_mcp MCP server

Metadata

Release files for frappe-mcp-server 1.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for frappe-mcp-server 1.2.0
File Size Uploaded Provenance
frappe_mcp_server-1.2.0.tar.gz 19.8 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for frappe-mcp-server 1.2.0
File Interpreter ABI Platform
frappe_mcp_server-1.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 35.7 kB

Release files / frappe_mcp_server-1.2.0.tar.gz

Download URL frappe_mcp_server-1.2.0.tar.gz
Size 19.8 kB
Tags Source
SHA-256 checksum
How to use checksums
bbf1425559d5ae75fedad45b6ad87c71861f4105f799b15e461da7f3fd136c50
BLAKE2b-256 checksum
How to use checksums
1b17bf55b8e3632b780c0ce971d41f4e96090ac291cfc3317aad5c6524d4ab08
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.13

Release files / frappe_mcp_server-1.2.0-py3-none-any.whl

Download URL frappe_mcp_server-1.2.0-py3-none-any.whl
Size 15.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2b7da8e7bf93d5f295c72546d9de73b1576faa1cb8f86f7d453bdf81f7888c74
BLAKE2b-256 checksum
How to use checksums
1de03dc8d9306276cd7f3f82ffe5db4481eb439e98f97f26dc542011ad1ecab7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.13

Security for frappe-mcp-server 1.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page