项目简介

'mcp-for-azure-devops-boards' 是一个基于 Model Context Protocol (MCP) 的服务器端应用,它允许大语言模型(LLM)客户端安全、高效地访问和操作 Azure DevOps Boards 中的项目、团队、工作项和看板信息。它通过提供一系列标准化的工具,将复杂的Azure DevOps API操作抽象化,便于LLM理解和调用,同时优化了输出格式以减少LLM的令牌消耗。

主要功能点

  • 工作项管理: 创建、更新、获取单个或多个工作项,支持按ID或复杂筛选条件进行查询(包括WIQL语言)。
  • 看板与团队集成: 列出Azure DevOps组织、项目、团队、看板及其详细信息。
  • 迭代/冲刺管理: 获取团队当前或所有迭代的详细信息。
  • 元数据查询: 列出项目中的所有工作项类型和标签。
  • 任务自动化: 支持为工作项添加评论,以及在工作项之间创建父子、相关、依赖等链接关系。
  • LLM优化输出: 对API返回数据进行简化和格式化,例如将HTML内容转换为纯文本,并以紧凑的JSON或CSV格式呈现,从而降低LLM处理的复杂度和成本。

安装步骤

  1. 安装Azure CLI: 该服务器依赖Azure CLI进行认证。如果您尚未安装,请通过以下命令安装:
    • macOS用户: 'brew install azure-cli'
    • Windows用户 (使用Chocolatey): 'choco install azure-cli'
    • 其他系统请参考 Azure CLI 官方安装指南
  2. 登录Azure CLI: 在终端中运行 'az login' 并按照提示完成认证,以便服务器能够获取您的Azure DevOps凭据。
  3. 安装MCP服务器:
    • macOS (使用Homebrew):
      brew tap danielealbano/mcp-tools
      brew install mcp-for-azure-devops-boards
      安装后,二进制文件通常位于 '/opt/homebrew/bin/mcp-for-azure-devops-boards'。
    • 从源代码构建:
      1. 确保已安装 Rust (最新稳定版)。
      2. 克隆仓库: 'git clone https://github.com/danielealbano/mcp-for-azure-devops-boards.git && cd mcp-for-azure-devops-boards'
      3. 构建项目: 'cargo build --release' 构建完成后,可执行文件位于 'target/release/mcp-for-azure-devops-boards'。

服务器配置 (供MCP客户端使用)

MCP服务器支持两种运行模式:标准输入/输出 (stdio) 模式(默认且推荐,更安全)和HTTP服务器模式(支持SSE)。MCP客户端需要知道如何启动此服务器并与其通信。

以下是针对常见MCP客户端的配置示例。请将 'path/to/mcp-for-azure-devops-boards' 替换为实际的二进制文件路径。

  • Claude Desktop 客户端配置示例 (推荐使用 stdio 模式): 将以下JSON配置添加到您的 'claude_desktop_config.json' 文件中:
    {
      "mcpServers": {
        "azure-devops-boards": {
          "command": "path/to/mcp-for-azure-devops-boards",
          "args": [], // stdio 模式下无需额外参数
          "description": "连接到Azure DevOps Boards,管理工作项和看板。"
        }
      }
    }
  • 如果需要运行为HTTP服务器模式 (不推荐用于共享凭据):
    {
      "mcpServers": {
        "azure-devops-boards": {
          "command": "path/to/mcp-for-azure-devops-boards",
          "args": ["--server", "--port", "3000"], // --server 启用HTTP模式,--port 指定端口
          "description": "连接到Azure DevOps Boards,管理工作项和看板,通过HTTP服务器模式运行在端口3000。"
        }
      }
    }
    在HTTP服务器模式下,服务器会监听 '0.0.0.0' (所有网络接口)。

基本使用方法

  1. 启动服务器: MCP客户端会自动根据配置启动服务器。您无需手动运行服务器命令。
  2. 在LLM中调用工具: 一旦MCP客户端与服务器连接成功,LLM就可以通过调用暴露的工具(例如 'azdo_list_organizations', 'azdo_create_work_item', 'azdo_query_work_items' 等)来与Azure DevOps进行交互。LLM将根据您的指令和上下文自动选择合适的工具和参数。
  3. 示例交互 (LLM视角):
    • LLM用户: "列出我所有有权访问的Azure DevOps组织。"
    • LLM (内部调用): 'azdo_list_organizations()'
    • 服务器响应 (简化后): '['MyOrg1', 'MyOrg2']'
    • LLM用户: "在'MyOrg1'组织的'ProjectA'项目中,创建一个标题为'Fix login bug'的Bug,并指派给'John Doe'。"
    • LLM (内部调用): 'azdo_create_work_item(organization='MyOrg1', project='ProjectA', work_item_type='Bug', title='Fix login bug', assigned_to='John Doe')'
    • 服务器响应 (简化后): '{id:1234,Type:B,Title:Fix login bug,AssignedTo:John Doe}'

信息

分类

开发者工具