项目简介
YouTrack MCP 服务器是一个基于 Model Context Protocol (MCP) 构建的后端应用,旨在为 LLM (大型语言模型) 客户端提供与 JetBrains YouTrack 项目管理和问题跟踪系统集成的桥梁。通过此服务器,LLM 应用能够以标准化的方式访问和操作 YouTrack 中的 issue 数据,实现更智能的任务管理和工作流程自动化。
主要功能点
- 问题搜索: 允许 LLM 客户端根据关键词或 YouTrack 查询语法搜索 issue。
- 问题详情: 获取指定 issue 的详细信息,包括 summary, description, 状态, 指派人, 自定义字段等。
- 问题更新: 支持 LLM 客户端更新 issue 的各种字段,例如状态、指派人、优先级等。
- 添加评论: 允许 LLM 客户端向 YouTrack issue 添加评论,方便协作和信息记录。
- 服务器信息: 提供服务器自身的状态和版本信息,方便客户端监控和管理。
安装步骤
-
克隆仓库: 将 GitHub 仓库 'youtrack_mcp' 克隆到本地。
git clone https://github.com/av-frox/youtrack_mcp.git cd youtrack_mcp -
安装依赖: 使用 pip 安装项目依赖。
pip install -r requirements.txt -
配置 YouTrack 连接:
- 创建 '.env' 文件在项目根目录下,并填入 YouTrack 实例 URL 和 API Token。
YOUTRACK_URL=https://your-instance.youtrack.cloud YOUTRACK_TOKEN=your-permanent-token MCP_SERVER_NAME=YouTrack MCP Server MCP_LOG_LEVEL=INFO - 或者,您也可以在启动服务器时通过命令行参数指定这些配置。
- 创建 '.env' 文件在项目根目录下,并填入 YouTrack 实例 URL 和 API Token。
服务器配置
对于 MCP 客户端,需要配置连接到 YouTrack MCP 服务器的命令和参数。以下是基于仓库信息生成的配置示例 (JSON 格式):
{ "server_name": "YouTrack MCP Server", "command": "python", "args": [ "server.py" ], "description": "连接到 YouTrack 的 MCP 服务器", "capabilities": [ "tools", "resources" ] }
参数注释:
- 'server_name': 服务器名称,可以自定义,用于在 MCP 客户端中识别和管理服务器。
- 'command': 启动服务器的命令,这里是 'python',假设您的 Python 环境已配置好。
- 'args': 传递给 'python' 命令的参数,'server.py' 是服务器主程序文件名。
- 'description': 服务器的描述信息,方便用户理解服务器的用途。
- 'capabilities': 声明服务器提供的 MCP 功能,包括 'tools' (工具) 和 'resources' (资源)。
注意:
- 请确保您的 MCP 客户端能够执行 'python' 命令,并且 'server.py' 文件路径相对于客户端的执行环境是正确的。
- 如果您选择通过命令行参数配置 YouTrack 连接信息,请将相应的参数添加到 'args' 数组中,例如 '--youtrack-url' 和 '--youtrack-token'。
基本使用方法
-
启动服务器: 在项目根目录下运行以下命令启动 YouTrack MCP 服务器。
python server.py -
配置 MCP 客户端: 在您的 MCP 客户端 (如 Claude Desktop) 中,添加并激活上述配置的 YouTrack MCP 服务器。
-
使用 LLM 客户端: 在 LLM 应用中,通过 MCP 协议调用服务器提供的工具 (Tools) 和资源 (Resources) 来与 YouTrack 进行交互。例如,可以使用 'youtrack_search_issues' 工具搜索 issue,或使用 'youtrack_get_issue' 工具获取 issue 详情。
工具调用示例 (JSON 格式):
{ "type": "tool_call", "name": "youtrack_search_issues", "parameters": { "query": "project: YourProject", "top": 10 } }资源请求示例 (JSON 格式):
{ "type": "resource_request", "uri": "server://info" }请参考仓库的 README.md 和代码示例了解更多工具和资源的使用方法。
信息
分类
开发者工具