关于 Frappe MCP Server
Frappe MCP Server 通过 REST API 将 MCP 客户端连接到 Frappe 和 ERPNext 站点。它支持文档操作、搜索及调用白名单服务器端方法。
主要功能
- 01创建、读取、更新和删除文档
- 02全文及筛选搜索
- 03调用白名单服务器端方法
- 04基于令牌的 API 身份验证
- 05工具注释和输出模式
适用场景
- 01读取 Frappe 或 ERPNext 文档
- 02按条件筛选并搜索记录
- 03创建或更新站点记录
- 04调用白名单 Python 方法
MCP 相关
将 Frappe 站点操作作为 MCP 工具提供给客户端。可用工具包括文档增删改查、搜索、连接检查和白名单方法调用。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
mcp.json · 通用配置
启动命令
uvx frappe-mcp-server需要配置的环境变量
FRAPPE_URLBase URL of your Frappe/ERPNext site, e.g. https://your-site.erpnext.comFRAPPE_API_KEY密钥Frappe API key for token-based authenticationFRAPPE_API_SECRET密钥Frappe API secret paired with the API keyFRAPPE_VERIFY_SSLSet to 'false' to skip TLS certificate verification. Defaults to 'true'.FRAPPE_TIMEOUTPer-request timeout in seconds. Defaults to 30.本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
7收录的工具列表 · 更新于 2 周前
此工具无需参数。
详细介绍
Frappe MCP 服务
mcp-name: io.github.muthanii/frappe_mcp
面向 Frappe Framework 的 Model Context Protocol (MCP) 服务。 通过其 REST API,将 Claude Desktop、VS Code Copilot 等 MCP 客户端连接到任意 Frappe/ERPNext 站点。
获取方式
| 发行渠道 | 引用名称 | 页面 |
|---|---|---|
| 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 |
| 源代码 | — | github.com/muthanii/frappe_mcp |
功能
- 文档 CRUD — 获取、创建、更新和删除 Frappe DocType
- 搜索 — 全文搜索和带筛选条件的文档搜索
- 远程方法调用 — 调用任意服务端 Python 方法
- 身份验证 — API 密钥 + 密钥(基于令牌的身份验证)
- Docker 优先 — 一条
docker run命令即可运行,无需安装 Python
快速开始
使用 uvx(无需安装):
FRAPPE_URL=https://your-site.com \
FRAPPE_API_KEY=your-api-key \
FRAPPE_API_SECRET=your-api-secret \
uvx frappe-mcp-server
使用 pip:
pip install frappe-mcp-server
frappe-mcp-server
使用 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
使用 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
可用工具
每个工具都带有 MCP 工具注解,并声明了 outputSchema,客户端可以在调用前区分读取工具和有破坏性的工具。
| 工具 | 描述 | 访问权限 | 有破坏性 | 幂等 |
|---|---|---|---|---|
frappe_ping | 检查连接状态和凭据 | 只读 | 否 | 是 |
frappe_get_doc | 按 DocType + 名称获取单个文档 | 只读 | 否 | 是 |
frappe_search_docs | 使用筛选条件搜索/列出文档 | 只读 | 否 | 是 |
frappe_create_doc | 创建新文档 | 写入 | 否 | 否 |
frappe_update_doc | 更新现有文档 | 写入 | 是 | 是 |
frappe_delete_doc | 删除文档——不可撤销 | 写入 | 是 | 否 |
frappe_run_method | 调用已加入白名单的服务端方法 | 写入 | 是 | 否 |
frappe_run_method 被标记为有破坏性,因为其影响完全取决于你指定的方法。
配置
| 环境变量 | 必填 | 描述 |
|---|---|---|
FRAPPE_URL | 是 | Frappe 站点的基础 URL(例如:https://erp.example.com) |
FRAPPE_API_KEY | 是 | Frappe API 密钥 |
FRAPPE_API_SECRET | 是 | Frappe API 密钥密文 |
FRAPPE_VERIFY_SSL | 否 | 设为 false 可跳过 TLS 验证(默认值:true) |
FRAPPE_TIMEOUT | 否 | 请求超时时间(秒)(默认值:30) |
MCP 客户端配置
将此配置添加到 claude_desktop_config.json 或 Copilot 配置中。
通过 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"
}
}
}
}
通过 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"
}
}
}
}
本地开发
pip install -e .
frappe-mcp
许可证
MIT — 参见 LICENSE。
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。