项目工具服务器

OpenProject MCP API服务器是一个基于Model Context Protocol(MCP)的工具服务器,通过stdio提供OpenProject REST API的功能,支持项目管理、工作包管理、用户和组管理、通知管理等功能。

  • by Nels2
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 Nels2/mcp-openproject

使用说明

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)
  • uv
  • mcpo
  • 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