使用说明
YouTrack MCP 服务器
MCP 服务器 YouTrack 通过工具提供访问权限,以便人工智能助手管理问题、冲刺、依赖性、时间跟踪和知识库。
快速入门
git clone https://git.eloware.com.br/felipe.mendes/youtrack-mcp.git
cd youtrack-mcp
npm install
cp .env.example .env # configurar YOUTRACK_URL + YOUTRACK_TOKEN
npm run build
npm start # servidor MCP stdio
远程(SSE)用于托管/定制ChatGPT连接器:
npm run start:remote # http://localhost:3001/mcp/sse
环境和配置
.env 最小值 :
YOUTRACK_URL=https://your-instance.youtrack.cloud
YOUTRACK_TOKEN=your-permanent-token
PROJECT_ID=PROJECT-1
LOG_LEVEL=info
CACHE_ENABLED=true
CACHE_TTL=300000
ENABLE_WEBHOOKS=false
WEBHOOK_PORT=3000
WEBHOOK_SECRET=
| 变量 | 强制性 | 描述 | 标准 |
|---|---|---|---|
YOUTRACK_URL |
✅ | 基本 URL (没有结尾条) | — |
YOUTRACK_TOKEN |
✅ | 永久令牌(配置文件→令牌) | - |
PROJECT_ID |
— | 默认项目的shortName | — |
LOG_LEVEL |
-- | 错误/警告/信息/调试 | 信息 |
CACHE_ENABLED |
— | 启用内存缓存 | true |
CACHE_TTL |
-- | TTL执行缓存em ms | 300000 |
ENABLE_WEBHOOKS |
- | 启动Webhook侦听器 | 错误 |
WEBHOOK_PORT |
— | Webhook端口 | 3000 |
WEBHOOK_SECRET HMAC的秘密 |
与 MCP 客户端集成
克劳德桌面(~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"youtrack": {
"command": "node",
"args": ["/abs/path/youtrack-mcp/dist/index.js"],
"env": {
"YOUTRACK_URL": "https://your-instance.youtrack.cloud",
"YOUTRACK_TOKEN": "token",
"PROJECT_ID": "PRJ" // Opcional
}
}
}
}
VSCode(.vscode/settings.json):
{
"servers": {
"youtrack": {
"command": "node",
"args": ["./dist/index.js"],
"env": {
"YOUTRACK_URL": "https://your-instance.youtrack.cloud",
"YOUTRACK_TOKEN": "token"
}
}
}
}
Continue.dev(continue.json):
{
"mcp": {
"servers": [
{
"name": "youtrack",
"command": "node",
"args": ["/abs/youtrack-mcp/dist/index.js"],
"env": {
"YOUTRACK_URL": "https://your-instance.youtrack.cloud",
"YOUTRACK_TOKEN": "token"
}
}
]
}
}
临床/通用:
{
"mcpServers": {
"youtrack": {
"command": "node",
"args": ["/abs/youtrack-mcp/dist/index.js"],
"env": {
"YOUTRACK_URL": "https://your-instance.youtrack.cloud",
"YOUTRACK_TOKEN": "token"
}
}
}
}
Zed:
{
"context_servers": {
"youtrack": {
"command": "node",
"args": ["/abs/youtrack-mcp/dist/index.js"],
"env": {
"YOUTRACK_URL": "https://your-instance.youtrack.cloud",
"YOUTRACK_TOKEN": "token"
}
}
}
}
本地测试 :
YOUTRACK_URL=https://your-instance.youtrack.cloud \
YOUTRACK_TOKEN=token \
node dist/index.js
重要使用绝对路径,URL中没有结尾条,完整令牌,JSON中的env值是字符串。
可用工具
| 类别 | 工具 |
|---|---|
| 问题 | create_issue, update_issue, add_issue_comment, search_issues |
| Estado | start_working_on_issue, change_issue_state, complete_issue |
| 敏捷 | create_sprint, list_sprints, assign_issue_to_sprint |
| 知识 | create_article, update_article, search_articles |
| 项目 | list_projects, get_project_details |
| 分析 | generate_gantt_chart, get_critical_path, create_issue_dependency |
| 温度 | log_work_item, get_time_report |
解决问题
- 401 未授权重新生成具有必要权限的令牌
- 工程未找到检查项目ID或访问权限
- 使用
LOG_LEVEL=debug用于详细检查
安全
令牌所需的权限问题(R/W)、项目(阅读)、知识库(R/W)、敏捷/冲刺(R/W)
⚠️ 永远不要提交令牌 使用环境变量
