mcpField
E
eyeot ERP

eyeot ERP

远程服务
github.com/Termi24商业与营销123 周前更新
代码仓库

关于 eyeot ERP

eyeot ERP 的 eyeot-mcp 是一个 stdio 到 HTTP 桥接器,让 MCP 客户端连接 ERP 的业务操作。它通过 OAuth 登录或 API key 认证,并将请求转发至服务器端处理。

主要功能

  1. 01将 MCP JSON-RPC stdio 请求转发至 HTTPS
  2. 02通过浏览器 OAuth 流程登录
  3. 03支持 API key 认证
  4. 04自动刷新 OAuth 访问令牌
  5. 05可指定自托管 ERP 部署

适用场景

  1. 01从 Claude Desktop 查询 ERP 发票
  2. 02让 Agent 执行 CRM 或库存操作
  3. 03在 CI/CD 或批处理作业中使用 API key
  4. 04将桥接器连接至自托管 ERP

MCP 相关

该桥接器让 stdio MCP 客户端访问 eyeot ERP 的 MCP 服务,ERP 服务端根据 OpenAPI 规范生成约 600 个业务工具。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://erp.eyeot.fr/api/v1/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

33

此工具无需参数。

详细介绍

eyeot-mcp

将 Claude Desktop 接入你的 ERP。

eyeot ERP MCP 服务官方 stdio ↔ HTTP 桥接工具。 约 600 个业务工具,只需一次 pip install。


PyPI version Python License: MIT MCP

Dependencies LOC Auditable Auth

产品主页 · 文档 · PyPI · 问题反馈



⚡ 60 秒安装

pip install eyeot-mcp        # 1.  install the bridge
eyeot-mcp login              # 2.  authenticate via browser (OAuth Device Flow)

然后将以下内容粘贴到 Claude Desktop 配置中:

{
  "mcpServers": {
    "eyeot": {
      "command": "eyeot-mcp"
    }
  }
}

重启 Claude Desktop。完成。试着询问:“列出我最近的 5 张发票。”

配置位置 · macOS ~/Library/Application Support/Claude/claude_desktop_config.json · Windows %APPDATA%\Claude\claude_desktop_config.json


🧩 这是什么?

eyeot ERP 提供约 600 项业务操作——CRM、销售、库存、维护、人力资源、财务、IT 服务管理、GED、RGPD 合规,以及 6 个 V2 市场模块(POS、配送与路线规划、招聘、BPM、现场服务、供应链)——并以 HTTPS 上的 MCP 工具形式提供。

但 Claude Desktop、Cursor 和大多数本地 Agent 只支持 stdio 上的 MCP。

eyeot-mcp 正是连接它们的缺失环节。

flowchart LR
    A["🤖 Claude Desktop<br/>Cursor / custom agent"] -- "JSON-RPC<br/>over stdio" --> B["📦 eyeot-mcp<br/>(this package)"]
    B -- "HTTPS POST<br/>Bearer token" --> C["🏢 eyeot ERP<br/>(your tenant)"]
    C -. "Auth · RBAC · audit<br/>multi-tenant isolation<br/>license guard" .-> C

    style A fill:#eef2ff,stroke:#6366f1,color:#1e293b
    style B fill:#f0fdf4,stroke:#10b981,color:#065f46
    style C fill:#fef3c7,stroke:#f59e0b,color:#78350f

桥接工具中不包含任何业务逻辑。 所有操作都在服务端完成——身份验证、RBAC、审计日志、许可证执行、多租户隔离、幂等性。这个 CLI 仅约 290 行 Python 标准库代码,10 分钟即可审计完毕。


🎯 你的 Agent 能做什么?

安装后,你的 MCP 客户端即可使用以下操作:

领域试着这样说……
💼 CRM“为 ACME 创建一份报价——PROD-001,10 件,按标准价目表计价。”
📊 销售“列出我最近的 5 张发票及其付款状态。”
📦 库存“里昂站点有哪些产品低于临界阈值?”
🔧 维护“本周哪些设备已逾期,尚未进行预防性维护?”
👥 人力资源“显示我团队待审批的休假申请。”
💰 财务“按业务单元列出第三季度的收入预测。”
🎫 IT 支持“创建一张工单:营销团队的 VPN 故障,优先级 P1。”
📄 GED“查找与合作伙伴 XYZ 签署的所有 NDA。”
🧠 智能分析“统计所有活跃客户账户的客户健康度分布。”
🧾 POS / 收银台“列出里昂收银台今天的 Z 报表总额。”
🚚 配送“优化车辆 TL-204 今天的路线,并通知收件人。”
🧑‍💼 招聘“为高级开发人员职位筛选候选人。”
⚙️ 流程 / BPM“我的收件箱里有哪些待处理的审批任务?”
🏗️ 现场服务“为客户 XYZ 安排下周二的现场服务。”
🔩 供应链“运行 MRP,列出本周需要重新订购的组件。”

……还有约 590 项,可通过 OpenAPI 规范自动生成。


🔐 身份验证

两种模式,传输时使用相同的 Bearer 标头,服务端使用相同的 Authorization 装饰器。

🤖 OAuth 2.1(人工用户)
### 🔑 API 密钥(服务)

适用于 Claude Desktop、Cursor 和个人 Agent。

eyeot-mcp login

打开浏览器 → 批准 → 完成。凭据保存到 ~/.eyeot-mcp/config.json(模式 0600)。

  • 令牌格式:eya_<base64> 访问令牌 + eyr_<base64> 刷新令牌
  • 有效期:访问令牌 1 小时 / 刷新令牌 30 天
  • 公共客户端必须使用 PKCE S256
  • 刷新令牌轮换并检测重放攻击——被盗的刷新令牌会使整个令牌家族失效
  • CLI 会自动刷新访问令牌(在过期前主动刷新,并在收到 401 时刷新)——在完整的 30 天刷新窗口内保持连接,无需重新运行 login

适用于 CI/CD Agent、批处理作业和服务器间通信。

{
  "mcpServers": {
    "eyeot": {
      "command": "eyeot-mcp",
      "env": { "EYEOT_TOKEN": "eyk_xxx_xxx" }
    }
  }
}

由组织管理员在 eyeot ERP 设置面板中签发。

  • 令牌格式:eyk_<prefix>_<secret>
  • 有效期:直至撤销
  • 范围:组织级,可配置 RBAC

🛡️ 安全模型

🔒

OAuth 2.1 + PKCE

公共客户端使用 PKCE S256。刷新令牌轮换并检测重放攻击。

👮

服务端 RBAC

每次工具调用都会经过与 UI 相同的 @permissions_required 装饰器。

📝

完整审计记录

每项操作都会记录用户、租户和 IP。符合 RGPD 要求的数据保留政策。

💳

许可证宽限期

订阅已过期?GET 请求仍可使用,以便 Agent 通知你。POST 请求会返回 402 和 activate_url。

本地凭据存储于 ~/.eyeot-mcp/config.json,文件模式为 0600(POSIX)。在 Windows 上,适用文件 ACL。不进行遥测,不会主动联系服务器。


🏗️ 自托管

使用 --base-url 将桥接程序指向任意 eyeot 部署:

eyeot-mcp --base-url https://erp.example.com login
{
  "mcpServers": {
    "eyeot": {
      "command": "eyeot-mcp",
      "args": ["--base-url", "https://erp.example.com"]
    }
  }
}

相同的协议、相同的身份验证,运行于你自己的基础设施。


📚 命令

命令说明
eyeot-mcp使用已保存的凭据启动 stdio 桥接程序(默认模式,即 Claude Desktop 运行的模式)
eyeot-mcp login基于浏览器的 OAuth 设备授权授予流程
eyeot-mcp logout在服务端撤销刷新令牌,并删除本地凭据
eyeot-mcp --token eyk_...使用显式 API 密钥的单次运行模式
eyeot-mcp --base-url URL ...指向自托管部署

🔧 工作原理(底层机制)

  1. Claude Desktop 将 eyeot-mcp 作为子进程启动,并通过 stdin/stdout 管道交换 JSON-RPC 2.0 消息。
  2. 对于从 stdin 收到的每一行,桥接程序都会将 JSON POST 到 ${base_url}/api/v1/mcp,并附带 Authorization: Bearer <token>。
  3. HTTP 响应会原样写入 stdout,并以按行分隔的 JSON 格式封装。
  4. 服务端使用 MCP 2024-11-05 协议,并根据 OpenAPI 规范自动生成约 600 个工具——initialize、tools/list 和 tools/call 的工作方式完全符合 MCP 客户端的预期。

桥接程序不保存状态。除了传输层之外,不进行协议转换。没有意外。


📖 资源

主页与安装
API
规范与协议

## 🧭 版本管理
  • 本软件包:语义化版本。主版本号递增可能会更改 CLI 标志或磁盘上的配置架构。
  • MCP 协议:2024-11-05(由服务端协商)。
  • ERP API:/api/v1(稳定)。不兼容的更改将通过 /api/v2 发布。

📄 许可证

MIT — 可自由分叉、打包、审计,并在此基础上构建。

eyeot ERP 后端是 Eyeot Software 的独立专有产品。此桥接工具采用开源方式,因此任何人都可以审计、分叉、打包到自己的发行版中,或将其作为构建自有 MCP 客户端的参考。



Eyeot Software 出品的 ERP

面向中小企业的多租户、AI 原生 ERP。从一开始就致力于由 AI Agent 操作。

你可以在 UI 中执行的所有操作,都可以通过此桥接工具完成。

🌐 erp.eyeot.fr · ✉️ [email protected]

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。