Skip to main content
Glama

@slorenzot/mcp-azure

用于 Azure DevOps 的 MCP (Model Context Protocol) 服务器。它允许从任何兼容的 MCP 客户端与工作项、Git 仓库、Pull Request、冲刺、区域、评论和附件进行交互。

安装

npm install -g @slorenzot/mcp-azure

或者直接使用 npx:

npx @slorenzot/mcp-azure

配置

环境变量

服务器使用以下环境变量自动配置:

变量

替代方案

描述

必需

AZURE_DEVOPS_ORG

ADO_ORG

组织 URL (例如: https://dev.azure.com/mi-org)

AZURE_DEVOPS_PAT

ADO_PAT

个人访问令牌 (Personal Access Token)

AZURE_DEVOPS_PROJECT

ADO_PROJECT

项目名称

在 Claude Desktop 中配置

在你的 claude_desktop_config.json 文件中添加以下配置:

{
  "mcpServers": {
    "azure-devops": {
      "command": "npx",
      "args": ["-y", "@slorenzot/mcp-azure"],
      "env": {
        "AZURE_DEVOPS_ORG": "https://dev.azure.com/tu-organizacion",
        "AZURE_DEVOPS_PAT": "tu-pat-aqui",
        "AZURE_DEVOPS_PROJECT": "tu-proyecto"
      }
    }
  }
}

在 OpenCode 中配置

OpenCode 使用相同的 MCP,但可以通过两种方式进行配置:

选项 1:使用环境变量进行初始配置

  1. 在你的系统或 OpenCode 配置中设置环境变量:

    export AZURE_DEVOPS_ORG="https://dev.azure.com/tu-organizacion"
    export AZURE_DEVOPS_PAT="tu-pat-aqui"
    export AZURE_DEVOPS_PROJECT="tu-proyecto"
  2. 或者在你的 OpenCode 配置中添加 MCP 服务器:

    {
      "mcpServers": {
        "azure-devops": {
          "command": "npx",
          "args": ["-y", "@slorenzot/mcp-azure"],
          "env": {
            "AZURE_DEVOPS_ORG": "https://dev.azure.com/tu-organizacion",
            "AZURE_DEVOPS_PAT": "tu-pat-aqui",
            "AZURE_DEVOPS_PROJECT": "tu-proyecto"
          }
        }
      }
    }

选项 2:使用 ado_configure 进行动态配置

OpenCode 允许在会话期间使用 ado_configure 命令直接配置连接:

{
  "organization": "https://dev.azure.com/tu-organizacion",
  "project": "tu-proyecto",
  "pat": "tu-pat-aqui"
}

此选项适用于在不同组织或项目之间切换,而无需修改配置文件。

注意:当你使用 ado_configure 时,连接在当前的 OpenCode 会话期间保持有效。

获取个人访问令牌 (PAT)

  1. 前往你的 Azure DevOps 组织

  2. 点击你的头像(右上角)

  3. 选择 Personal Access Tokens

  4. 创建一个具有以下权限的新令牌:

    • Work Items: Read & Write

    • Code: Read & Write (用于仓库和 Pull Request 操作)

    • Project and Team: Read (可选)

可用工具

身份验证

工具

描述

ado_configure

配置组织、项目和 PAT 的连接

工作项 (Work Items)

工具

描述

ado_get_work_item

通过 ID 获取工作项

ado_create_work_item

创建新的工作项 (用户故事、Bug、任务等)

ado_update_work_item

更新现有的工作项

ado_get_work_item_type_fields

获取类型的可用/必需字段

查询

工具

描述

ado_query_sprint

查询特定冲刺的工作项

ado_query_area

查询特定区域的工作项

ado_query_wiql

执行自定义 WIQL 查询

项目结构

工具

描述

ado_list_iterations

列出项目的迭代/冲刺

ado_list_areas

列出项目的区域

Git 仓库

工具

描述

ado_list_repositories

列出项目的所有 Git 仓库

ado_get_repository

通过名称或 ID 获取特定仓库的详细信息

ado_list_branches

列出仓库的分支

Pull Requests

工具

描述

ado_list_pull_requests

列出带有可选过滤器 (状态、分支、创建者、审阅者) 的 Pull Request

ado_get_pull_request

获取 Pull Request 的完整详细信息

ado_create_pull_request

创建新的 Pull Request

ado_update_pull_request

更新 Pull Request 的属性 (标题、描述、草稿)

ado_complete_pull_request

使用可配置策略完成 (合并) Pull Request

ado_abandon_pull_request

放弃 Pull Request

Pull Request 审阅

工具

描述

ado_approve_pull_request

批准 Pull Request (投票: 10)

ado_reject_pull_request

拒绝 Pull Request (投票: -10)

ado_get_pull_request_reviewers

获取 Pull Request 的所有审阅者及其投票

ado_add_pull_request_reviewer

向 Pull Request 添加审阅者

Pull Request 评论

工具

描述

ado_get_pull_request_threads

获取 Pull Request 的所有评论线程

ado_create_pull_request_thread

创建新的评论线程 (通用或代码相关)

ado_reply_to_pull_request_thread

回复现有的评论线程

Pull Request 信息

工具

描述

ado_get_pull_request_commits

获取 Pull Request 的所有提交

ado_get_pull_request_work_items

获取链接到 Pull Request 的工作项

ado_update_pull_request_thread_status

更新评论线程的状态 (Fixed, WontFix 等)

评论与讨论

工具

描述

ado_add_comment

向工作项添加评论 (支持 Markdown)

ado_get_comments

获取工作项的评论

附件

工具

描述

ado_upload_attachment

上传文件并返回附件 URL

ado_add_attachment

将附件添加到工作项

ado_get_attachments

列出工作项的附件

使用示例

创建用户故事

{
  "title": "Implementar login con OAuth",
  "type": "User Story",
  "description": "Como usuario quiero poder iniciar sesión con mi cuenta de Google",
  "areaPath": "MiProyecto\\Backend",
  "iterationPath": "MiProyecto\\Sprint 5",
  "fields": {
    "Custom.OKR": "Seguridad",
    "Custom.Prioridad": "Alta"
  }
}

自定义 WIQL 查询

{
  "wiql": "SELECT [System.Id], [System.Title] FROM WorkItems WHERE [System.State] = 'Active' AND [System.AssignedTo] = @Me ORDER BY [System.CreatedDate] DESC",
  "getDetails": true
}

添加 Markdown 评论

{
  "id": 12345,
  "comment": "## Análisis completado\n\n- Revisado el código\n- Identificados 3 issues\n\n**Próximo paso:** Corregir validaciones"
}

上传并附加文件

{
  "workItemId": 12345,
  "filePath": "/ruta/al/archivo.pdf",
  "comment": "Documento de especificaciones",
  "name": "Especificaciones Funcionales v2.0"
}

链接现有附件

{
  "workItemId": 12345,
  "attachmentUrl": "https://dev.azure.com/org/proj/_apis/wit/attachments/abc123",
  "comment": "Diseño de arquitectura",
  "name": "Arquitectura del Sistema"
}

列出仓库

{
  "includeHidden": false,
  "top": 50
}

列出活跃的 Pull Request

{
  "status": "Active",
  "top": 20
}

创建 Pull Request

{
  "repositoryId": "mi-repo",
  "sourceRefName": "refs/heads/feature-login",
  "targetRefName": "refs/heads/main",
  "title": "Implementar login con OAuth",
  "description": "Esta PR agrega soporte para login con Google OAuth",
  "reviewerIds": ["12345678-1234-1234-1234-1234567890ab"],
  "isDraft": false
}

批准 Pull Request

{
  "pullRequestId": 12345,
  "repositoryId": "mi-repo"
}

完成 (合并) Pull Request

{
  "pullRequestId": 12345,
  "repositoryId": "mi-repo",
  "mergeStrategy": "Squash",
  "deleteSourceBranch": true,
  "mergeCommitMessage": "Merge de feature-login"
}

创建代码评论

{
  "pullRequestId": 12345,
  "repositoryId": "mi-repo",
  "content": "Por favor extraer esto en una función separada",
  "filePath": "/src/components/Login.tsx",
  "startLine": 45,
  "endLine": 52
}

可用提示词 (Prompts)

服务器包含预定义的提示词,以简化常见任务:

提示词

描述

connect

连接到 Azure DevOps 的指南

analyze_sprint

分析冲刺状态

create_user_story

创建结构化的用户故事

daily_standup

生成每日站会报告

plan_sprint

协助规划冲刺

bulk_update

批量更新工作项

project_report

生成项目报告

report_bug

创建结构化的 Bug 报告

资源

资源

URI

描述

连接状态

ado://connection/status

当前连接状态信息

开发

要求

  • Node.js 18+

  • npm 或 yarn

本地安装

git clone https://github.com/slorenzot/mcp-azure.git
cd mcp-azure
npm install
npm run build

可用脚本

npm run build    # Compila TypeScript
npm run start    # Inicia el servidor
npm run dev      # Modo desarrollo con watch

许可证

MIT

作者

Soulberto Lorenzo - @slorenzot

版本

2.4.1 - 34 个可用于 Azure DevOps 的工具 (工作项、Git 仓库、Pull Request 等)

Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - A tier

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/soulberto/mcp-azure'

If you have feedback or need assistance with the MCP directory API, please join our Discord server