ERPNext MCP桥接器

一个连接Claude Desktop与ERPNext实例的桥接工具,支持通过MCP工具调用直接操作ERPNext文档、报表和工作流。

  • by No-Smoke
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 No-Smoke/erpnext-mcp-bridge

使用说明

ERPNext MCP网桥

连接的stdio桥 克劳德桌面版 (或任何MCP客户端) Frappe助理核心 在ERPNext实例上运行。

这使Claude能够直接创建、读取、更新和删除ERPNext文档,运行报告,执行工作流,并在ERP中搜索——所有这些都是通过本机MCP工具调用完成的。

先决条件

  • Python 3.10+
  • Frappe助理核心 已安装在ERPNext网站上
  • 具有管理员或系统管理员角色的ERPNext API密钥

快速安装

# Clone and install
git clone https://github.com/No-Smoke/erpnext-mcp-bridge.git
cd erpnext-mcp-bridge
pip install -e .

# Or install directly
pip install git+https://github.com/No-Smoke/erpnext-mcp-bridge.git

设置

运行安装脚本以自动配置Claude Desktop:

python setup_claude.py

或手动添加到 ~/.config/Claude/claude_desktop_config.json (Linux)或 ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):

{
  "mcpServers": {
    "erpnext-fac": {
      "command": "erpnext-mcp-bridge",
      "args": [],
      "env": {
        "FRAPPE_SERVER_URL": "https://your-site.example.com",
        "FRAPPE_API_KEY": "your-api-key",
        "FRAPPE_API_SECRET": "your-api-secret"
      }
    }
  }
}

环境变量

变量 必填 描述
FRAPPE_SERVER_URL 是 您的ERPNext网站URL(例如。, https://erp.example.com)
FRAPPE_API_KEY 是 ERPNext中用户设置中的API键
FRAPPE_API_SECRET 是 API机密(创建API密钥时生成)
MCP_DEBUG 否 设置为 1 用于将调试日志记录到stderr

可用工具(16)

连接后,Claude可以访问这些ERPNext工具:

工具 说明
create_document 创建具有验证和子表支持的新文档
get_document 检索文档详细信息
update_document 修改现有文档
delete_document 删除文档
list_documents 搜索和筛选文档列表
submit_document 提交文件草稿
search_documents 跨所有DocType的全局搜索
search_doctype 在特定DocType中搜索
search_link 搜索链接字段选项
search 矢量搜索(如果已配置)
fetch 按ID检索完整文档
get_doctype_info 获取DocType元数据和字段信息
generate_report 执行业务报告
report_list 发现可用报告
report_requirements 获取报告筛选器要求
run_workflow 执行工作流操作(批准、拒绝等)

运作原理

Claude Desktop <--stdio--> erpnext-mcp-bridge <--HTTPS--> Frappe Assistant Core (ERPNext)

桥:

  1. 从stdin(克劳德桌面)读取JSON-RPC消息
  2. 通过HTTPS将它们转发到ERPNext上的FAC MCP端点
  3. 解开Frappe的回复信封
  4. 在stdout上返回JSON-RPC响应

身份验证使用Frappe的标准API密钥/密钥令牌身份验证。

生成API密钥

  1. 以管理员身份登录ERPNext
  2. 首选 用户设置 > API访问
  3. 点击 生成密钥
  4. 保存API机密(仅显示一次)
  5. API密钥在用户设置中始终可见

对于管理员级别的访问,在管理员用户帐户上生成密钥。

故障排除

“连接失败”:验证您的 FRAPPE_SERVER_URL 可访问,并且安装了Frappe Assistant Core。

“未列入白名单”:API关键用户需要管理员或系统管理员角色。

超时错误:网桥对每个请求使用5秒超时。对于大型操作,这可能需要调整。

调试模式:设置 MCP_DEBUG=1 在env中查看stderr的请求/响应详细信息。

许可证

麻省理工学院

学分

基于stdio桥 Frappe助理核心 保罗·克林顿。