返回市场
雅虎追踪器mcp

雅虎追踪器mcp

作者:aikts29 星标更新:2025-11-08

项目介绍

Yandex Tracker MCP Server

PyPI - 版本 测试工作流 Docker工作流 打包工作流 smithery徽章

mcp-name: io.github.aikts/yandex-tracker-mcp

一个全面的模型上下文协议(MCP)服务器,使AI助手能够与Yandex Tracker API进行交互。此服务器提供了对Yandex Tracker问题、队列、评论、工作日志和搜索功能的安全认证访问,并可选地使用Redis缓存以提高性能。

<a href="https://glama.ai/mcp/servers/@aikts/yandex-tracker-mcp"> <img width="380" height="200" src="https://glama.ai/mcp/servers/@aikts/yandex-tracker-mcp/badge" /> </a>

俄语文档可在这里找到 / 文档在俄语中也可在这里找到。

功能

  • 完整的队列管理:列出并访问所有可用的Yandex Tracker队列,支持分页和标签检索
  • 用户管理:获取用户账户信息,包括登录详情、电子邮件地址、许可证状态和组织数据
  • 问题操作:获取详细的问题信息、评论、相关链接、工作日志和附件
  • 字段管理:访问全局字段、队列特定本地字段、状态和问题类型
  • 高级查询语言:完全支持Yandex Tracker查询语言,包括复杂的过滤、排序和日期函数
  • 性能缓存:可选的Redis缓存层以提高响应时间
  • 安全控制:可配置的队列访问限制和安全令牌处理
  • 多种传输选项:支持stdio、SSE(已弃用)和HTTP传输,以实现灵活集成
  • OAuth 2.0 认证:动态令牌认证,支持自动刷新,作为静态API令牌的替代方案
  • 组织支持:兼容标准和云组织ID

组织ID配置

根据您的Yandex组织类型选择以下之一:

  • Yandex Cloud 组织:对于Yandex Cloud管理的组织,请稍后使用TRACKER_CLOUD_ORG_ID环境变量
  • Yandex 360 组织:对于Yandex 360组织,请稍后使用TRACKER_ORG_ID环境变量

您可以在Yandex Tracker URL或组织设置中找到您的组织ID。

MCP客户端配置

在Claude Desktop中安装扩展

Yandex Tracker MCP Server可以作为扩展一键安装到Claude Desktop中。

先决条件

只有一个要求——系统上必须安装Python 3.12。

对于macOS用户,您可以使用以下命令进行安装:

brew install python@3.12

安装

  1. GitHub Releases下载适用于您的操作系统和平台的*.dxt文件。
  2. 双击下载的文件将其安装到Claude Desktop中。 img.png
  3. 当提示时提供您的Yandex Tracker OAuth令牌。 img.png
  4. 确保扩展已启用——现在您可以使用这个MCP Server了。

手动安装

先决条件

  • 已全局安装uv
  • 具有适当权限的有效Yandex Tracker API令牌

以下部分展示了如何为不同的AI客户端配置MCP服务器。您可以使用uvx yandex-tracker-mcp@latest或Docker镜像ghcr.io/aikts/yandex-tracker-mcp:latest。两者都需要这些环境变量:

  • 认证(以下之一):
    • TRACKER_TOKEN - 您的Yandex Tracker OAuth令牌
    • TRACKER_IAM_TOKEN - 您的IAM令牌
    • TRACKER_SA_KEY_IDTRACKER_SA_SERVICE_ACCOUNT_IDTRACKER_SA_PRIVATE_KEY - 服务账户凭据
  • TRACKER_CLOUD_ORG_IDTRACKER_ORG_ID - 您的Yandex Cloud(或Yandex 360)组织ID
<details> <summary><strong>Claude Desktop</strong></summary>

配置文件路径:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

使用uvx:

{
  "mcpServers": {
    "yandex-tracker": {
      "command": "uvx",
      "args": ["yandex-tracker-mcp@latest"],
      "env": {
        "TRACKER_TOKEN": "your_tracker_token_here",
        "TRACKER_CLOUD_ORG_ID": "your_cloud_org_id_here",
        "TRACKER_ORG_ID": "your_org_id_here"
      }
    }
  }
}

使用Docker:

{
  "mcpServers": {
    "yandex-tracker": {
      "command": "docker",
      "args": [
        "run", "--rm", "-i",
        "-e", "TRACKER_TOKEN",
        "-e", "TRACKER_CLOUD_ORG_ID",
        "-e", "TRACKER_ORG_ID",
        "ghcr.io/aikts/yandex-tracker-mcp:latest"
      ],
      "env": {
        "TRACKER_TOKEN": "your_tracker_token_here",
        "TRACKER_CLOUD_ORG_ID": "your_cloud_org_id_here",
        "TRACKER_ORG_ID": "your_org_id_here"
      }
    }
  }
}
</details> <details> <summary><strong>Claude Code</strong></summary>

使用uvx:

claude mcp add yandex-tracker uvx yandex-tracker-mcp@latest \
  -e TRACKER_TOKEN=your_tracker_token_here \
  -e TRACKER_CLOUD_ORG_ID=your_cloud_org_id_here \
  -e TRACKER_ORG_ID=[your_org_id_here] \
  -e TRANSPORT=stdio

使用Docker:

claude mcp add yandex-tracker docker "run --rm -i -e TRACKER_TOKEN=your_tracker_token_here -e TRACKER_CLOUD_ORG_ID=your_cloud_org_id_here -e TRACKER_ORG_ID=your_org_id_here -e TRANSPORT=stdio ghcr.io/aikts/yandex-tracker-mcp:latest"
</details> <details> <summary><strong>Cursor</strong></summary>

配置文件路径:

  • 项目特定:项目目录中的.cursor/mcp.json
  • 全局:~/.cursor/mcp.json

使用uvx:

{
  "mcpServers": {
    "yandex-tracker": {
      "command": "uvx",
      "args": ["yandex-tracker-mcp@latest"],
      "env": {
        "TRACKER_TOKEN": "your_tracker_token_here",
        "TRACKER_CLOUD_ORG_ID": "your_cloud_org_id_here",
        "TRACKER_ORG_ID": "your_org_id_here"
      }
    }
  }
}

使用Docker:

{
  "mcpServers": {
    "yandex-tracker": {
      "command": "docker",
      "args": [
        "run", "--rm", "-i",
        "-e", "TRACKER_TOKEN",
        "-e", "TRACKER_CLOUD_ORG_ID",
        "-e", "TRACKER_ORG_ID",
        "ghcr.io/aikts/yandex-tracker-mcp:latest"
      ],
      "env": {
        "TRACKER_TOKEN": "your_tracker_token_here",
        "TRACKER_CLOUD_ORG_ID": "your_cloud_org_id_here",
        "TRACKER_ORG_ID": "your_org_id_here"
      }
    }
  }
}
</details> <details> <summary><strong>Windsurf</strong></summary>

配置文件路径:

  • ~/.codeium/windsurf/mcp_config.json

通过:Windsurf 设置 → 级联标签 → 模型上下文协议(MCP)服务器 → "查看原始配置"

使用uvx:

{
  "mcpServers": {
    "yandex-tracker": {
      "command": "uvx",
      "args": ["yandex-tracker-mcp@latest"],
      "env": {
        "TRACKER_TOKEN": "your_tracker_token_here",
        "TRACKER_CLOUD_ORG_ID": "your_cloud_org_id_here",
        "TRACKER_ORG_ID": "your_org_id_here"
      }
    }
  }
}

使用Docker:

{
  "mcpServers": {
    "yandex-tracker": {
      "command": "docker",
      "args": [
        "run", "--rm", "-i",
        "-e", "TRACKER_TOKEN",
        "-e", "TRACKER_CLOUD_ORG_ID",
        "-e", "TRACKER_ORG_ID",
        "ghcr.io/aikts/yandex-tracker-mcp:latest"
      ],
      "env": {
        "TRACKER_TOKEN": "your_tracker_token_here",
        "TRACKER_CLOUD_ORG_ID": "your_cloud_org_id_here",
        "TRACKER_ORG_ID": "your_org_id_here"
      }
    }
  }
}
</details> <details> <summary><strong>Zed</strong></summary>

配置文件路径:

  • ~/.config/zed/settings.json

通过:Cmd+,(macOS)或Ctrl+,(Linux/Windows)或命令面板:"zed: 打开设置"

注意:需要Zed预览版以支持MCP。

使用uvx:

{
  "context_servers": {
    "yandex-tracker": {
      "source": "custom",
      "command": {
        "path": "uvx",
        "args": ["yandex-tracker-mcp@latest"],
        "env": {
          "TRACKER_TOKEN": "your_tracker_token_here",
          "TRACKER_CLOUD_ORG_ID": "your_cloud_org_id_here",
          "TRACKER_ORG_ID": "your_org_id_here"
        }
      }
    }
  }
}

使用Docker:

{
  "context_servers": {
    "yandex-tracker": {
      "source": "custom",
      "command": {
        "path": "docker",
        "args": [
          "run", "--rm", "-i",
          "-e", "TRACKER_TOKEN",
          "-e", "TRACKER_CLOUD_ORG_ID",
          "-e", "TRACKER_ORG_ID",
          "ghcr.io/aikts/yandex-tracker-mcp:latest"
        ],
        "env": {
          "TRACKER_TOKEN": "your_tracker_token_here",
          "TRACKER_CLOUD_ORG_ID": "your_cloud_org_id_here",
          "TRACKER_ORG_ID": "your_org_id_here"
        }
      }
    }
  }
}
</details> <details> <summary><strong>GitHub Copilot (VS Code)</strong></summary>

配置文件路径:

  • 工作区:项目目录中的.vscode/mcp.json
  • 全局:VS Code settings.json

选项1:工作区配置(推荐用于安全性)

创建.vscode/mcp.json

使用uvx:

{
  "inputs": [
    {
      "type": "promptString",
      "id": "tracker-token",
      "description": "Yandex Tracker Token",
      "password": true
    },
    {
      "type": "promptString",
      "id": "cloud-org-id",
      "description": "Yandex Cloud Organization ID"
    },
    {
      "type": "promptString",
      "id": "org-id",
      "description": "Yandex Tracker Organization ID (optional)"
    }
  ],
  "servers": {
    "yandex-tracker": {
      "type": "stdio",
      "command": "uvx",
      "args": ["yandex-tracker-mcp@latest"],
      "env": {
        "TRACKER_TOKEN": "${input:tracker-token}",
        "TRACKER_CLOUD_ORG_ID": "${input:cloud-org-id}",
        "TRACKER_ORG_ID": "${input:org-id}",
        "TRANSPORT": "stdio"
      }
    }
  }
}

使用Docker:

{
  "inputs": [
    {
      "type": "promptString",
      "id": "tracker-token",
      "description": "Yandex Tracker Token",
      "password": true
    },
    {
      "type": "promptString",
      "id": "cloud-org-id",
      "description": "Yandex Cloud Organization ID"
    },
    {
      "type": "promptString",
      "id": "org-id",
      "description": "Yandex Tracker Organization ID (optional)"
    }
  ],
  "servers": {
    "yandex-tracker": {
      "type": "stdio",
      "command": "docker",
      "args": [
        "run", "--rm", "-i",
        "-e", "TRACKER_TOKEN",
        "-e", "TRACKER_CLOUD_ORG_ID",
        "-e", "TRACKER_ORG_ID",
        "ghcr.io/aikts/yandex-tracker-mcp:latest"
      ],
      "env": {
        "TRACKER_TOKEN": "${input:tracker-token}",
        "TRACKER_CLOUD_ORG_ID": "${input:cloud-org-id}",
        "TRACKER_ORG_ID": "${input:org-id}",
        "TRANSPORT": "stdio"
      }
    }
  }
}

选项2:全局配置

添加到VS Code settings.json

使用uvx:

{
  "github.copilot.chat.mcp.servers": {
    "yandex-tracker": {
      "type": "stdio",
      "command": "uvx",
      "args": ["yandex-tracker-mcp@latest"],
      "env": {
        "TRACKER_TOKEN": "your_tracker_token_here",
        "TRACKER_CLOUD_ORG_ID": "your_cloud_org_id_here",
        "TRACKER_ORG_ID": "your_org_id_here"
      }
    }
  }
}

使用Docker:

{
  "github.copilot.chat.mcp.servers": {
    "yandex-tracker": {
      "type": "stdio",
      "command": "docker",
      "args": [
        "run", "--rm", "-i",
        "-e", "TRACKER_TOKEN",
        "-e", "TRACKER_CLOUD_ORG_ID",
        "-e", "TRACKER_ORG_ID",
        "ghcr.io/aikts/yandex-tracker-mcp:latest"
      ],
      "env": {
        "TRACKER_TOKEN": "your_tracker_token_here",
        "TRACKER_CLOUD_ORG_ID": "your_cloud_org_id_here",
        "TRACKER_ORG_ID": "your_org_id_here"
      }
    }
  }
}
</details> <details> <summary><strong>其他MCP兼容客户端</strong></summary>

对于其他MCP兼容客户端,使用标准MCP服务器配置格式:

使用uvx:

{
  "mcpServers": {
    "yandex-tracker": {
      "command": "uvx",
      "args": ["yandex-tracker-mcp@latest"],
      "env": {
        "TRACKER_TOKEN": "your_tracker_token_here",
        "TRACKER_CLOUD_ORG_ID": "your_cloud_org_id_here",
        "TRACKER_ORG_ID": "your_org_id_here"
      }
    }
  }
}

使用Docker:

{
  "mcpServers": {
    "yandex-tracker": {
      "command": "docker",
      "args": [
        "run", "--rm", "-i",
        "-e", "TRACKER_TOKEN",
        "-e", "TRACKER_CLOUD_ORG_ID",
        "-e", "TRACKER_ORG_ID",
        "ghcr.io/aikts/yandex-tracker-mcp:latest"
      ],
      "env": {
        "TRACKER_TOKEN": "your_tracker_token_here",
        "TRACKER_CLOUD_ORG_ID": "your_cloud_org_id_here",
        "TRACKER_ORG_ID": "your_org_id_here"
      }
    }
  }
}
</details>

重要注意事项:

  • 使用实际凭证替换占位符值
  • 配置更改后重启您的AI客户端
  • 确保uvx已安装并在系统PATH中可用
  • 对于生产用途,考虑使用环境变量而不是硬编码令牌

可用的MCP工具

该服务器通过MCP协议公开以下工具:

队列管理

  • queues_get_all:列出所有可用的Yandex Tracker队列

    • 参数:
      • fields(可选):要包含在响应中的字段(例如,["key", "name"])。有助于通过选择所需字段来优化上下文窗口的使用。如果未指定,则返回所有可用字段。
      • page(可选):要返回的页面编号。如果未指定,则会自动检索所有页面。
      • per_page(可选):每页的项目数(默认:100)
    • 返回具有选择性字段包含的分页队列信息
    • 尊重TRACKER_LIMIT_QUEUES限制
  • queue_get_local_fields:获取特定队列的本地字段

    • 参数:queue_id(字符串,队列键如"SOMEPROJECT")
    • 返回队列特定的自定义字段及其id、名称和键
    • 尊重TRACKER_LIMIT_QUEUES限制
  • queue_get_tags:获取特定队列