使用说明
OpenProject MCP API服务器
此存储库包含 模型上下文协议(MCP)工具服务器 将OpenProject REST API公开为结构化MCP工具。
它旨在供MCP兼容的客户端使用(例如通过以下方式打开WebUI mcpo)以及 在stdio上运行不是HTTP。
该服务器提供OpenProject功能的全面覆盖,包括项目、工作包、用户、组、通知、附件、自定义操作和模式发现。
此服务器有意采用单片式,以最大限度地扩大OpenProject API的覆盖范围。 如果需要,可以将其拆分为特定于域的MCP服务器(项目、工作包、用户等)以实现可扩展性。
架构概述
- 协议: 模型上下文协议(MCP)
- 运输: 标准输入(JSON-RPC)
- 服务器框架:
FastMCP - 执行模式: CLI进程(无ASGI、无FastAPI、无Uvicorn)
- 集成: MCP OpenAPI代理(
mcpo)
此服务器是 不 web服务。它不直接公开HTTP端点。
特性
项目管理
- 创建、查看、列出、更新项目
- 检索项目状态
- 查询项目成员和受让人
工作包
- 创建、查看、列出、更新工作包
- 管理工作包活动和评论
- 检索可用的受让人和观察者
- 添加和删除观察者
- 对工作包执行自定义操作
附件
- 上传附件(无容器或直接附加)
- 列出、查看和删除附件
- 将文件附加到工作包
用户和组
- 列出具有过滤和分页功能的用户
- 列出具有过滤和排序功能的组
通知
- 列出通知
- 检索通知详细信息
自定义操作
- 检索自定义操作定义
- 对工作包执行自定义操作
架构搜索
- 查询本地SQLite OpenProject架构数据库
- 动态发现可用的API端点
需求
- Python 3.11或更高版本(推荐3.12)
uvmcpo- OpenProject实例的网络访问
- OpenProject API密钥(基本身份验证)
安装
pip install mcp mcpo httpx
配置
环境变量(推荐)
export OPENPROJECT_HOST=pm.v.spaceagecu.org
export OPENPROJECT_API_KEY=<base64-encoded-api-key>
运行MCP服务器
此服务器 必须在stdio上运行。
正确的命令
uvx mcpo --port 8034 -- python 03_mcpserver_agent.py
