Thanks to visit codestin.com
Credit goes to github.com

Skip to content

本项目实现了 MCP (Model Context Protocol) 协议与 OpenProject 的集成,为团队领导者提供项目管理工具。通过标准化的 MCP 接口,可以集成到各种 AI 助手和自动化工具中。

License

Notifications You must be signed in to change notification settings

boma086/mcp-pm-openproject

Repository files navigation

OpenProject MCP 服务器

🎯 为团队领导者提供智能化的项目报告生成工具

Python MCP FastAPI

✨ 核心功能

  • 📊 智能报告生成 - 自动生成周报、月报、进度报告
  • 🎯 风险评估 - 实时项目风险识别和评估
  • 👥 工作负载分析 - 团队成员工作量分析和优化建议
  • 🎨 模板系统 - 支持自定义报告模板,包含专业的日本式商务报告
  • 🔌 MCP 协议 - 标准协议,易于集成到 Claude Desktop、Cursor 等 AI 工具

🚀 快速开始

📋 解决方案选择指南

解决方案 稳定性 推荐场景 端口
HTTP 方案 ✅ 生产稳定 生产环境部署 8010
FastAPI 方案 ✅ 功能完整 开发测试使用 8020
FastMCP 方案 ⚠️ 实验性 技术评估测试 8010

生产环境推荐使用 HTTP 解决方案

1. 启动 OpenProject (可选)

# 使用 Docker 启动 OpenProject (如果还没有 OpenProject 实例)
docker-compose up -d

# 访问 OpenProject: http://localhost:8090
# 默认账号: admin / admin

2. 选择并启动解决方案

🎯 方案一:HTTP 解决方案 (推荐生产使用)

cd solution-http
python3 -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate
pip install -r requirements.txt
pip install -e ../mcp-core

# 配置环境变量
cp .env.example .env
# 编辑 .env 文件,设置 OpenProject URL 和 API Key

# 启动服务
python3 -m src.main

🚀 方案二:FastAPI 解决方案 (推荐开发使用)

cd solution-fastapi
python3 -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate
pip install -r requirements.txt
pip install -e ../mcp-core

# 配置环境变量
cp .env.example .env
# 编辑 .env 文件,设置 OpenProject URL 和 API Key

# 启动服务
python app/main.py

💡 详细启动说明: 查看 服务启动操作手册

3. 访问服务

HTTP 解决方案 (端口 8010)

FastAPI 解决方案 (端口 8020)

🎨 模板系统

支持多种专业报告模板:

  • 日本式週報 - 符合日本商务文化的详细周报
  • 日本式月報 - 综合的月度总结报告
  • 日本式進捗報告 - 专业的进度状况报告
  • 自定义模板 - 通过 Web 界面创建和编辑

🔧 集成到 AI 工具

Claude Desktop

{
  "mcpServers": {
    "openproject": {
      "command": "curl",
      "args": ["-X", "POST", "http://localhost:8020/mcp"]
    }
  }
}

Cursor

在 Cursor 中添加 MCP 服务器配置,指向 http://localhost:8020/mcp

📚 使用示例

生成周报 (使用 HTTP 解决方案)

curl -X POST http://localhost:8010/mcp \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/call",
    "params": {
      "name": "generate_report_from_template",
      "arguments": {
        "template_id": "japanese_weekly_report",
        "project_id": "1"
      }
    }
  }'

评估项目风险

curl -X POST http://localhost:8010/mcp \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 2,
    "method": "tools/call",
    "params": {
      "name": "assess_project_risks",
      "arguments": {
        "project_id": "1"
      }
    }
  }'

📖 更多使用示例: 查看 服务启动操作手册

🔧 配置

环境变量

# OpenProject 配置(必需)
OPENPROJECT_URL=https://your-openproject.com
OPENPROJECT_API_KEY=your-api-key-here

# 服务器配置 (HTTP 解决方案)
HOST=0.0.0.0
PORT=8010
LOG_LEVEL=INFO

# 服务器配置 (FastAPI 解决方案)  
PORT=8020  # 注意端口不同

🔧 详细配置说明: 查看 服务启动操作手册

获取 API Key

  1. 登录 OpenProject
  2. 进入 "我的账户" → "访问令牌"
  3. 创建新的 API 密钥
  4. 复制密钥到 .env 文件

🆘 故障排除

常见问题

Q: 服务启动失败,提示端口被占用

# 查找占用端口的进程并终止
lsof -ti:8010 | xargs kill -9  # HTTP 解决方案端口
lsof -ti:8020 | xargs kill -9  # FastAPI 解决方案端口

# 或者修改配置使用其他端口
# 在 .env 文件中修改 PORT 设置

Q: 无法连接到 OpenProject

  • 检查 OpenProject 是否正在运行
  • 验证 API Key 是否正确
  • 确认网络连接正常
  • 查看服务器日志获取详细错误信息

Q: 模板预览生成失败

  • 检查项目 ID 是否存在
  • 确认有访问该项目的权限
  • 查看服务器日志获取详细错误信息

🔧 更多故障排除: 查看 服务启动操作手册

📄 许可证

MIT License - 详见 LICENSE 文件

🤝 贡献

欢迎提交 Issue 和 Pull Request!


📖 扩展文档

查看 docs/ 目录获取详细文档:

服务链接:

About

本项目实现了 MCP (Model Context Protocol) 协议与 OpenProject 的集成,为团队领导者提供项目管理工具。通过标准化的 MCP 接口,可以集成到各种 AI 助手和自动化工具中。

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Packages

No packages published