🦞 泛微OA Ecology E9 MCP Server
基于 Model Context Protocol (MCP) 的泛微OA接口集成服务。
通过 MCP 协议,让 AI 客户端(如 Claude Desktop、Cursor、VS Code 等)直接调用泛微 OA 的接口。
快速开始
1. 安装
# 下载项目
git clone https://github.com/tanzhangjia/weaver-ecology-mcp.git
cd weaver-ecology-mcp
# 安装依赖
npm install
# 构建
npm run build
2. OA 侧准备
在泛微 OA 系统中执行以下操作:
a. 配置接口白名单
编辑 ecology/WEB-INF/prop/weaver_session_filter.properties,在 unchecksessionurl= 后添加:
/api/ec/dev/auth/regist;/api/ec/dev/auth/applytoken;
b. 插入许可证
INSERT INTO ECOLOGY_BIZ_EC(ID, APPID, NAME)
VALUES('123456', '你的APPID', 'MCP服务');
3. MCP 客户端配置
Claude Desktop
编辑 claude_desktop_config.json:
{
"mcpServers": {
"weaver-ecology": {
"command": "node",
"args": ["/path/to/weaver-ecology-mcp/dist/index.js"],
"env": {
"WEAVER_BASE_URL": "http://192.168.1.100",
"WEAVER_APP_ID": "EEAA5436-7577-4BE0-8C6C-89E9D88805EA",
"WEAVER_RSA_PRIVATE_KEY": "-----BEGIN RSA PRIVATE KEY-----...-----END RSA PRIVATE KEY-----",
"WEAVER_RSA_PUBLIC_KEY": "-----BEGIN PUBLIC KEY-----...-----END PUBLIC KEY-----"
}
}
}
}
Cursor
在 Cursor 的 MCP 配置中,Command 填写:
node /path/to/weaver-ecology-mcp/dist/index.js
认证流程
MCP 服务自动处理泛微 OA 的 Token 认证:
┌──────────┐ ┌──────────────┐ ┌──────────┐
│ 注册请求 │───▶│ POST /regist │───▶│ 返回 │
│ (APPID + │ │ │ │ secrit │
│ 公钥) │ │ │ │ + spk │
└──────────┘ └──────────────┘ └──────────┘
│
┌──────────┐ ┌──────────────┐ ┌──────────┐
│ 获取Token│───▶│POST /apply- │───▶│ 返回 │
│ (spk加密 │ │ token │ │ token │
│ secrit) │ │ │ │ │
└──────────┘ └──────────────┘ └──────────┘
│
┌──────────┐ ┌──────────────┐ ┌──────────┐
│ 调用接口 │───▶│ 业务API │───▶│ 返回 │
│ (token + │ │ │ │ 数据 │
│ userid) │ │ │ │ │
└──────────┘ └──────────────┘ └──────────┘