Token导航 LogoToken导航TokenDH.com
Azure Dev Ops MCP logo
运维云端stdio官方级别未说明来源级核验

Azure Dev Ops MCP

MCP Server

@ryancardin/azuredevops-mcp-server@latest

一个强大的Azure DevOps集成工具,通过Model Context Protocol (MCP)服务器提供对工作项、代码仓库、项目、看板和迭代的无缝访问。

工具数

96

提示词数

0

GitHub Stars

56

资源数

0
代码管理TypeScriptClaude开发工具Claude DesktopClaudeCursor

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

RyanCardin15

提供方

RyanCardin15

最后核验

2026/5/17 21:04

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx @ryancardin/azuredevops-mcp-server@latest

详细介绍

Azure DevOps MCP集成

星史

![Star History Chart](https://star-history.com/#RyanCardin15/AzureDevOps-MCP&Date)

Azure DevOps的强大集成,通过模型上下文协议(MCP)服务器提供对工作项、存储库、项目、板和冲刺的无缝访问。

概述

该服务器为与Azure DevOps服务交互提供了一个方便的API,使人工智能助手和其他工具能够管理工作项、代码存储库、板、疾跑等。它基于模型上下文协议构建,为与Azure DevOps通信提供了一个标准化的接口。

演示

Azure DevOps MCP Demo

特性

集成分为八个主要工具类别:

工作项工具

  • 使用WIQL查询列出工作项
  • 按ID获取工作项详细信息
  • 搜索工作项
  • 获取最近更新的工作项
  • 获取分配的工作项
  • 创建新工作项
  • 更新现有工作项
  • 向工作项添加注释
  • 更新工作项状态
  • 分配工作项
  • 在工作项之间创建链接
  • 批量创建/更新工作项

板子和Sprints工具

  • 获取团队公告板
  • 获取板柱
  • 获取板项
  • 移动板上的卡片
  • 冲刺
  • 获取当前冲刺
  • 获取sprint工作项
  • 获得冲刺能力
  • 获取团队成员

项目工具

  • 列出项目
  • 获取项目详细信息
  • 创建新项目
  • 获取区域
  • 获取迭代
  • 创建区域
  • 创建迭代
  • 获取流程模板
  • 获取工作项类型
  • 获取工作项类型字段

Git工具

  • 列出存储库
  • 获取存储库详细信息
  • 创建存储库
  • 列出分支
  • 搜索代码
  • 浏览仓库
  • 获取文件内容
  • 获取提交历史记录
  • 列出拉取请求
  • 创建拉取请求
  • 获取拉取请求详细信息
  • 在pull请求中获取更改的文件
  • 获取pull请求注释
  • 批准拉取请求
  • 合并拉取请求

测试能力工具

  • 运行自动化测试
  • 获取测试自动化状态
  • 配置测试代理
  • 创建测试数据生成器
  • 管理测试环境
  • 获取测试片状分析
  • 获取测试差距分析
  • 运行测试影响分析
  • 获取测试运行状况仪表板
  • 运行测试优化
  • 创建探索性会话
  • 记录探索性测试结果
  • 将调查结果转换为工作项
  • 获取探索性测试统计数据

DevSecOps工具

  • 运行安全扫描
  • 获取安全扫描结果
  • 跟踪安全漏洞
  • 生成安全合规报告
  • 整合SARIF结果
  • 运行合规性检查
  • 获取合规状态
  • 创建合规报告
  • 管理安全策略
  • 跟踪安全意识
  • 旋转秘密
  • 审核机密使用情况
  • 配置vault集成

工件管理工具

  • 列出工件提要
  • 获取软件包版本
  • 发布包
  • 推广套餐
  • 删除软件包版本
  • 列出容器图像
  • 获取容器图像标签
  • 扫描集装箱图像
  • 管理容器策略
  • 管理通用包
  • 创建包下载报告
  • 检查包依赖关系

人工智能辅助开发工具

  • 获取AI驱动的代码评论
  • 建议代码优化
  • 识别代码气味
  • 获取预测性错误分析
  • 获取开发人员生产力指标
  • 获取预测性工作量估算
  • 获取代码质量趋势
  • 建议改进工作项
  • 建议自动化机会
  • 创建智能警报
  • 预测构建失败
  • 优化测试选择

安装

NPX快速入门(推荐)

使用Azure DevOps MCP服务器的最简单方法是通过NPX:

npx @ryancardin/azuredevops-mcp-server@latest

无需安装或构建步骤!只需设置环境变量并运行。

光标一键安装

单击下面的按钮直接在Cursor中安装Azure DevOps MCP服务器:

![Add Azure DevOps MCP to Cursor](cursor://anysphere.cursor-deeplink/mcp/install?name=azure-devops&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyJAcnlhbmNhcmRpbi9henVyZWRldm9wcy1tY3Atc2VydmVyQGxhdGVzdCJdLCJlbnYiOnsiQVpVUkVfREVWT1BTX09SR19VUkwiOiJodHRwczovL2Rldi5henVyZS5jb20veW91ci1vcmdhbml6YXRpb24iLCJBWlVSRV9ERVZPUFNfUFJPSkVDVCI6InlvdXItcHJvamVjdCIsIkFaVVJFX0RFVk9QU19JU19PTl9QUkVNSVNFUyI6ImZhbHNlIiwiQVpVUkVfREVWT1BTX0FVVEhfVFlQRSI6InBhdCIsIkFaVVJFX0RFVk9QU19QRVJTT05BTF9BQ0NFU1NfVE9LRU4iOiJ5b3VyLXBlcnNvbmFsLWFjY2Vzcy10b2tlbiJ9fQo=)

重要提示: 在Cursor中安装后,您必须使用实际的Azure DevOps详细信息更新Cursor MCP配置中的环境变量。

了解有关Cursor深度链接的更多信息,请访问 https://docs.cursor.com/deeplinks

替代安装方法

全球NPM安装

npm install -g @ryancardin/azuredevops-mcp-server
azuredevops-mcp-server

通过史密瑟里(克劳德桌面)

npx -y @smithery/cli install @RyanCardin15/azuredevops-mcp --client claude

开发环境

对于开发或定制:

  1. 克隆存储库:
   git clone https://github.com/RyanCardin15/AzureDevOps-MCP.git
   cd AzureDevOps-MCP
  1. 安装依赖项:
   npm install
  1. 构建项目:
   npm run build
  1. 在本地运行:
   npm start

配置

先决条件

  • Node.js(v16或更高版本)
  • 具有个人访问令牌(PAT)或适当凭据的Azure DevOps帐户

环境变量

使用环境变量配置服务器。你可以在你的shell中设置这些, .env 文件,或在MCP客户端配置中:

适用于Azure DevOps服务(云)

AZURE_DEVOPS_ORG_URL=https://dev.azure.com/your-organization
AZURE_DEVOPS_PROJECT=your-default-project
AZURE_DEVOPS_IS_ON_PREMISES=false
AZURE_DEVOPS_AUTH_TYPE=pat
AZURE_DEVOPS_PERSONAL_ACCESS_TOKEN=your-personal-access-token

适用于Azure DevOps服务器(内部部署)

AZURE_DEVOPS_ORG_URL=https://your-server/tfs
AZURE_DEVOPS_PROJECT=your-default-project
AZURE_DEVOPS_IS_ON_PREMISES=true
AZURE_DEVOPS_COLLECTION=your-collection
AZURE_DEVOPS_API_VERSION=6.0
AZURE_DEVOPS_AUTH_TYPE=pat
AZURE_DEVOPS_PERSONAL_ACCESS_TOKEN=your-personal-access-token

替代身份验证方法(本地)

# NTLM Authentication
AZURE_DEVOPS_AUTH_TYPE=ntlm
AZURE_DEVOPS_USERNAME=your-username
AZURE_DEVOPS_PASSWORD=your-password
AZURE_DEVOPS_DOMAIN=your-domain

# Basic Authentication
AZURE_DEVOPS_AUTH_TYPE=basic
AZURE_DEVOPS_USERNAME=your-username
AZURE_DEVOPS_PASSWORD=your-password

# Entra ID Authentication (requires az CLI)
AZURE_DEVOPS_AUTH_TYPE=entra

客户端配置

光标配置

将此添加到光标MCP设置中:

{
  "mcpServers": {
    "azure-devops": {
      "command": "npx",
      "args": ["@ryancardin/azuredevops-mcp-server@latest"],
      "env": {
        "AZURE_DEVOPS_ORG_URL": "https://dev.azure.com/your-organization",
        "AZURE_DEVOPS_PROJECT": "your-project",
        "AZURE_DEVOPS_IS_ON_PREMISES": "false",
        "AZURE_DEVOPS_AUTH_TYPE": "pat",
        "AZURE_DEVOPS_PERSONAL_ACCESS_TOKEN": "your-personal-access-token"
      }
    }
  }
}

Claude桌面配置

将此添加到您的Claude Desktop MCP配置文件中:

{
  "mcpServers": {
    "azure-devops": {
      "command": "npx",
      "args": ["@ryancardin/azuredevops-mcp-server@latest"],
      "env": {
        "AZURE_DEVOPS_ORG_URL": "https://dev.azure.com/your-organization",
        "AZURE_DEVOPS_PROJECT": "your-project",
        "AZURE_DEVOPS_IS_ON_PREMISES": "false",
        "AZURE_DEVOPS_AUTH_TYPE": "pat",
        "AZURE_DEVOPS_PERSONAL_ACCESS_TOKEN": "your-personal-access-token"
      }
    }
  }
}

创建个人访问令牌(PAT)

对于Azure DevOps服务(云),您需要创建具有适当权限的个人访问令牌:

  1. 转到您的Azure DevOps组织
  2. 点击右上角的个人资料图标
  3. 选择“个人访问令牌”
  4. 点击“新建令牌”
  5. 为其命名并选择适当的范围:

- 工作项目:读写 - 代码:读写 - 项目和团队:读写 - 构建:阅读 - 发布:阅读

对于Azure DevOps Server(本地),请按照类似的步骤在本地实例中创建PAT。

完整的环境变量参考

变量描述必填默认
AZURE_DEVOPS_ORG_URL您的AZURE DEVOPS组织或服务器的URL-
AZURE_DEVOPS_PROJECT要使用的默认项目-
AZURE_DEVOPS_ISON_前提条件是否使用AZURE DEVOPS服务器false
AZURE_DEVOPS_COLLECTION本地集合名称否\*-
AZURE_DEVOPS_API_VERSION内部部署的API版本-
AZURE_DEVOPS_AUTH_TYPE身份验证类型(pat/ntlm/basic/entra)pat
AZURE_DEVOPS_PERSONAL_ACCES_TOKEN个人访问令牌(用于“pat”身份验证)否\*\*-
AZURE_DEVOPS_USERNAMENTLM/基本身份验证的用户名否\*\*-
AZURE_DEVOPS_PASSWORDNTLM/基本身份验证密码否\*\*-
AZURE_DEVOPS_DOMAINNTLM身份验证域-
ALLOWED_TOOLS要启用的工具方法的逗号分隔列表所有工具

\*如果需要 AZURE_DEVOPS_IS_ON_PREMISES=true\ \*\*根据所选的身份验证类型需要

使用ALLOWED_TOOLS进行工具筛选

ALLOWED_TOOLS 环境变量允许您限制可用的工具方法。这是完全可选的-如果未指定,将启用所有工具。

格式:逗号分隔的方法名称列表,不含空格。

例子:

ALLOWED_TOOLS=listWorkItems,getWorkItemById,searchWorkItems,createWorkItem

这将仅启用指定的工作项方法,而禁用所有其他方法。

Entra ID身份验证

对于Entra ID身份验证,请确保已安装Azure CLI并通过身份验证:

az login

只要您通过身份验证,服务器就支持AZ CLI、AZD和Azure PowerShell模块。

用法

服务器运行后,您可以使用MCP协议与它进行交互。该服务器为不同的Azure DevOps功能提供了多种工具。

可用工具

注: 默认情况下,只有一部分工具在 index.ts 文件,以保持初始实现的简单性。请参阅 工具注册 有关如何注册其他工具的信息,请参阅第节。

示例:列出工作项

{
  "tool": "listWorkItems",
  "params": {
    "query": "SELECT [System.Id], [System.Title], [System.State] FROM WorkItems WHERE [System.State] = 'Active' ORDER BY [System.CreatedDate] DESC"
  }
}

示例:创建工作项

{
  "tool": "createWorkItem",
  "params": {
    "workItemType": "User Story",
    "title": "Implement new feature",
    "description": "As a user, I want to be able to export reports to PDF.",
    "assignedTo": "john@example.com"
  }
}

示例:列出存储库

{
  "tool": "listRepositories",
  "params": {
    "projectId": "MyProject"
  }
}

示例:创建拉取请求

{
  "tool": "createPullRequest",
  "params": {
    "repositoryId": "repo-guid",
    "sourceRefName": "refs/heads/feature-branch",
    "targetRefName": "refs/heads/main",
    "title": "Add new feature",
    "description": "This PR adds the export to PDF feature"
  }
}

建筑

该项目的结构如下:

  • src/

- Interfaces/:参数和响应的类型定义 - Services/:用于与Azure DevOps API交互的服务类 - Tools/:向客户端公开功能的工具实现 - index.ts:注册工具和启动服务器的主要入口点 - config.ts:配置处理

服务层

服务层处理与Azure DevOps API的直接通信:

  • WorkItemService:工作项操作
  • BoardsSprintsService:板和冲刺操作
  • ProjectService:项目管理业务
  • GitService:Git存储库操作
  • TestingCapabilitiesService:测试能力操作
  • DevSecOpsService:DevSecOps操作
  • ArtifactManagementService:工件管理操作
  • AIAssistedDevelopmentService:人工智能辅助开发操作

工具层

工具层封装服务,并为MCP协议提供一致的接口:

  • WorkItemTools:工作项操作工具
  • BoardsSprintsTools:棋盘和短跑操作工具
  • ProjectTools:项目管理操作工具
  • GitTools:Git操作工具
  • TestingCapabilitiesTools:用于测试能力操作的工具
  • DevSecOpsTools:DevSecOps操作工具
  • ArtifactManagementTools:工件管理操作工具
  • AIAssistedDevelopmentTools:人工智能辅助开发操作工具

工具注册

MCP服务器要求在 index.ts 文件。默认情况下,只注册所有可能工具的一个子集,以保持初始实现的可管理性。

要注册更多工具:

  1. 打开 src/index.ts 文件
  2. 按照现有工具的模式添加新的工具注册
  3. 构建并重新启动服务器

工具注册的综合指南可在 TOOL_REGISTRATION.md 存储库中的文件。

注: 注册工具时,请注意使用正确的参数类型,特别是枚举值。中的类型定义 Interfaces 目录定义了每个参数的预期类型。使用错误的类型(例如,使用 z.string() 而不是 z.enum() 对于枚举值)将导致构建过程中出现TypeScript错误。

注册新工具的示例:

server.tool("searchCode", 
  "Search for code in repositories",
  {
    searchText: z.string().describe("Text to search for"),
    repositoryId: z.string().optional().describe("ID of the repository")
  },
  async (params, extra) => {
    const result = await gitTools.searchCode(params);
    return {
      content: result.content,
      rawData: result.rawData,
      isError: result.isError
    };
  }
);

故障排除

常见问题

身份验证错误

  • 确保您的个人访问令牌有效并具有所需的权限
  • 检查组织URL是否正确

unexpected status code: 203

  • 这通常表示使用了占位符或不正确的配置值
  • 验证 AZURE_DEVOPS_ORG_URL 使用您的真实组织URL(不是 your-organization)
  • 验证 AZURE_DEVOPS_PROJECTAZURE_DEVOPS_PERSONAL_ACCESS_TOKEN 是真正的价值

高上下文/令牌消耗

  • 限制工具注册 ALLOWED_TOOLS 只使用您需要的方法
  • 例子: ALLOWED_TOOLS=listWorkItems,getWorkItemById,listPullRequests,getPullRequestChangedFiles

构建过程中的TypeScript错误

  • 使用 npm run build:ignore-errors 绕过TypeScript错误
  • 检查是否缺少或不正确的类型定义

运行期错误

  • 验证指定的Azure DevOps项目是否存在并且可以访问

贡献

欢迎投稿!以下是您如何做出贡献:

  1. 分叉存储库
  2. 创建要素分支(git checkout -b feature/amazing-feature)
  3. 提交您的更改(git commit -m 'Add some amazing feature')
  4. 推到分支(git push origin feature/amazing-feature)
  5. 打开拉取请求

请确保您的代码通过linting并包含适当的测试。

![Verified on MseeP](https://mseep.ai/app/22aecb18-6269-482a-9b0c-a96653410bf3)

](https://smithery.ai/server/@RyanCardin15/azuredevops-mcp)

目录标签

目录标签

代码管理TypeScriptClaude开发工具AzureDevOps集成本地部署MCP协议项目管理

支持客户端

Claude DesktopClaudeCursor

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

token

运行时(runtime,运行环境)

Node.js

部署方式(deploymentType,部署类型)

remote-capable

来源包(packageName,安装包名)

@ryancardin/azuredevops-mcp-server@latest

工具数量(toolCount,工具数)

96

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiotokenremote-capable

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP