Skip to main content
ClaudeWave

MCP Server for the Frappe Framework.

MCP ServersOfficial Registry0 stars0 forksPythonMITUpdated today
Install in Claude Code / Claude Desktop
Method: UVX (Python) · frappe-mcp-server
Claude Code CLI
claude mcp add frappe-mcp -- uvx frappe-mcp-server
claude_desktop_config.json (Claude Desktop)
{
  "mcpServers": {
    "frappe-mcp": {
      "command": "uvx",
      "args": ["frappe-mcp-server"],
      "env": {
        "FRAPPE_URL": "<frappe_url>",
        "FRAPPE_API_KEY": "<frappe_api_key>",
        "FRAPPE_API_SECRET": "<frappe_api_secret>"
      }
    }
  }
}
1. Run the command above in your terminal (Claude Code), or paste the JSON config into claude_desktop_config.json (Claude Desktop).
2. Replace any <placeholder> values with your API keys or paths.
3. Restart Claude. The MCP server and its tools appear automatically.
Detected environment variables
FRAPPE_URLFRAPPE_API_KEYFRAPPE_API_SECRET
Use cases

MCP Servers overview

# Frappe MCP Server

[![PyPI](https://img.shields.io/pypi/v/frappe-mcp-server.svg?logo=pypi&logoColor=white)](https://pypi.org/project/frappe-mcp-server/)
[![Python](https://img.shields.io/badge/python-3.10%2B-blue.svg?logo=python&logoColor=white)](https://pypi.org/project/frappe-mcp-server/)
[![Docker Hub](https://img.shields.io/docker/v/muthanii/frappe-mcp?sort=semver&logo=docker&logoColor=white&label=docker%20hub)](https://hub.docker.com/r/muthanii/frappe-mcp)
[![Docker pulls](https://img.shields.io/docker/pulls/muthanii/frappe-mcp.svg?logo=docker&logoColor=white)](https://hub.docker.com/r/muthanii/frappe-mcp)
[![GHCR](https://img.shields.io/badge/ghcr.io-frappe--mcp-181717?logo=github&logoColor=white)](https://github.com/muthanii/frappe_mcp/pkgs/container/frappe-mcp)
[![MCP Registry](https://img.shields.io/badge/MCP%20registry-io.github.muthanii%2Ffrappe__mcp-6E56CF)](https://registry.modelcontextprotocol.io/v0/servers?search=io.github.muthanii/frappe_mcp)
[![License](https://img.shields.io/github/license/muthanii/frappe_mcp.svg)](LICENSE)

[![frappe_mcp MCP server](https://glama.ai/mcp/servers/muthanii/frappe_mcp/badges/score.svg)](https://glama.ai/mcp/servers/muthanii/frappe_mcp)

```
mcp-name: io.github.muthanii/frappe_mcp
```

A **Model Context Protocol (MCP) server** for [Frappe Framework](https://frappeframework.com).
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](https://pypi.org/project/frappe-mcp-server/) |
| **Docker Hub** | `muthanii/frappe-mcp` | [hub.docker.com/r/muthanii/frappe-mcp](https://hub.docker.com/r/muthanii/frappe-mcp) |
| **GitHub Container Registry** | `ghcr.io/muthanii/frappe-mcp` | [ghcr package](https://github.com/muthanii/frappe_mcp/pkgs/container/frappe-mcp) |
| **MCP Registry** | `io.github.muthanii/frappe_mcp` | [registry API](https://registry.modelcontextprotocol.io/v0/servers?search=io.github.muthanii/frappe_mcp) |
| **Glama** | — | [glama.ai/mcp/servers/muthanii/frappe_mcp](https://glama.ai/mcp/servers/muthanii/frappe_mcp) |
| **Source** | — | [github.com/muthanii/frappe_mcp](https://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):**

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

**With `pip`:**

```bash
pip install frappe-mcp-server
frappe-mcp-server
```

**With Docker (Docker Hub):**

```bash
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):**

```bash
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](https://modelcontextprotocol.io/specification/server/tools) 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`:**

```json
{
  "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:**

```json
{
  "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

```bash
pip install -e .
frappe-mcp
```

## License

MIT — see [LICENSE](LICENSE).

---

[![frappe_mcp MCP server](https://glama.ai/mcp/servers/muthanii/frappe_mcp/badges/card.svg)](https://glama.ai/mcp/servers/muthanii/frappe_mcp)
frappeglamamcp

What people ask about frappe_mcp

What is muthanii/frappe_mcp?

+

muthanii/frappe_mcp is mcp servers for the Claude AI ecosystem. MCP Server for the Frappe Framework. It has 0 GitHub stars and was last updated today.

How do I install frappe_mcp?

+

You can install frappe_mcp by cloning the repository (https://github.com/muthanii/frappe_mcp) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.

Is muthanii/frappe_mcp safe to use?

+

muthanii/frappe_mcp has not been audited yet by our security agent. Review the original repository on GitHub before using it in production.

Who maintains muthanii/frappe_mcp?

+

muthanii/frappe_mcp is maintained by muthanii. The last recorded GitHub activity is from today, with 0 open issues.

Are there alternatives to frappe_mcp?

+

Yes. On ClaudeWave you can browse similar mcp servers at /categories/mcp, sorted by popularity or recent activity.

Deploy frappe_mcp to your cloud

Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.

Maintain this repo? Add a badge to your README

Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.

Featured on ClaudeWave: muthanii/frappe_mcp
[![Featured on ClaudeWave](https://claudewave.com/api/badge/muthanii-frappe-mcp)](https://claudewave.com/repo/muthanii-frappe-mcp)
<a href="https://claudewave.com/repo/muthanii-frappe-mcp"><img src="https://claudewave.com/api/badge/muthanii-frappe-mcp" alt="Featured on ClaudeWave: muthanii/frappe_mcp" width="320" height="64" /></a>

More MCP Servers

frappe_mcp alternatives