
Azure Devops
Azure DevOps 的 MCP 服务器
Azure DevOps MCP 服务器
一个为 Azure DevOps 实现的模型上下文协议 (MCP) 服务器,允许 AI 助手通过标准化协议与 Azure DevOps API 进行交互。
概述
该服务器为 Azure DevOps 实现了 Model Context Protocol (MCP),使像 Claude 这样的 AI 助手能够安全地与 Azure DevOps 资源进行交互。该服务器充当 AI 模型与 Azure DevOps API 之间的桥梁,提供了一种标准化的方式来:
- 访问和管理项目、工作项、存储库等
- 创建和更新工作项、分支以及拉取请求
- 通过自然语言执行常见的 DevOps 工作流
- 通过标准化资源 URI 访问存储库内容
- 安全地对 Azure DevOps 资源进行身份验证和交互
服务器结构
该服务器围绕 Model Context Protocol (MCP) 构建,用于与 AI 助手通信。它提供了与 Azure DevOps 资源交互的工具,包括:
- 项目
- 工作项
- 存储库
- 拉取请求
- 分支
- 管道
核心组件
- AzureDevOpsServer: 初始化 MCP 服务器并注册工具的主服务器类
- 工具处理器: 每个 Azure DevOps 操作的模块化函数
- 配置: 基于环境的组织 URL、PAT 等配置
入门指南
前置条件
- Node.js (v16+)
- npm 或 yarn
- 具有适当访问权限的 Azure DevOps 账户
- 身份验证凭据(详情请参阅 身份验证指南):
- 个人访问令牌 (PAT),或
- Azure Identity 凭据,或
- Azure CLI 登录
使用 NPX 运行
与 Claude Desktop/Cursor AI 集成
要与 Claude Desktop 或 Cursor AI 集成,请将以下配置之一添加到您的配置文件中。
Azure Identity 身份验证
确保您已使用 az login
登录到 Azure CLI,然后添加以下内容:
json
{
"mcpServers": {
"azureDevOps": {
"command": "npx",
"args": ["-y", "@tiberriver256/mcp-server-azure-devops"],
"env": {
"AZURE_DEVOPS_ORG_URL": "https://dev.azure.com/your-organization",
"AZURE_DEVOPS_AUTH_METHOD": "azure-identity",
"AZURE_DEVOPS_DEFAULT_PROJECT": "your-project-name"
}
}
}
}
个人访问令牌 (PAT) 身份验证
json
{
"mcpServers": {
"azureDevOps": {
"command": "npx",
"args": ["-y", "@tiberriver256/mcp-server-azure-devops"],
"env": {
"AZURE_DEVOPS_ORG_URL": "https://dev.azure.com/your-organization",
"AZURE_DEVOPS_AUTH_METHOD": "pat",
"AZURE_DEVOPS_PAT": "<YOUR_PAT>",
"AZURE_DEVOPS_DEFAULT_PROJECT": "your-project-name"
}
}
}
}
有关详细的配置说明和更多身份验证选项,请参阅 身份验证指南。
身份验证方法
该服务器支持多种连接到 Azure DevOps API 的身份验证方法。有关详细的设置说明、配置示例和故障排除提示,请参阅 身份验证指南。
支持的身份验证方法
- 个人访问令牌 (PAT) - 简单的基于令牌的身份验证
- Azure Identity (DefaultAzureCredential) - 使用 Azure Identity SDK 的灵活身份验证
- Azure CLI - 使用您的 Azure CLI 登录进行身份验证
每种身份验证方法的示例配置文件可在 examples 目录 中找到。
环境变量
有关环境变量及其描述的完整列表,请参阅 身份验证指南。
关键环境变量包括:
变量 | 描述 | 是否必需 | 默认值 |
---|---|---|---|
AZURE_DEVOPS_AUTH_METHOD |
身份验证方法 (pat , azure-identity , 或 azure-cli ) - 不区分大小写 |
否 | azure-identity |
AZURE_DEVOPS_ORG_URL |
您的 Azure DevOps 组织的完整 URL | 是 | - |
AZURE_DEVOPS_PAT |
个人访问令牌(用于 PAT 身份验证) | 仅在使用 PAT 身份验证时需要 | - |
AZURE_DEVOPS_DEFAULT_PROJECT |
如果未指定,默认项目 | 否 | - |
AZURE_DEVOPS_API_VERSION |
使用的 API 版本 | 否 | 最新 |
AZURE_TENANT_ID |
Azure AD 租户 ID(用于服务主体) | 仅在使用服务主体时需要 | - |
AZURE_CLIENT_ID |
Azure AD 应用程序 ID(用于服务主体) | 仅在使用服务主体时需要 | - |
AZURE_CLIENT_SECRET |
Azure AD 客户端密钥(用于服务主体) | 仅在使用服务主体时需要 | - |
LOG_LEVEL |
日志记录级别(debug, info, warn, error) | 否 | info |
故障排查身份验证
有关每种身份验证方法的详细故障排查信息,请参阅 身份验证指南。
常见问题包括:
- 无效或过期的凭据
- 权限不足
- 网络连接问题
- 配置错误
身份验证实现细节
有关 Azure DevOps MCP 服务器中身份验证实现的技术细节,请参阅 身份验证指南 和 src/auth
目录中的源代码。
可用工具
Azure DevOps MCP 服务器提供了多种与 Azure DevOps 资源交互的工具。有关每个工具的详细文档,请参阅相应的文档。
用户工具
get_me
: 获取已认证用户的信息(id、displayName、email)
组织工具
list_organizations
: 列出所有可访问的组织
项目工具
list_projects
: 列出组织中的所有项目get_project
: 获取特定项目的详细信息get_project_details
: 获取项目的全面详细信息,包括流程、工作项类型和团队
存储库工具
list_repositories
: 列出项目中的所有存储库get_repository
: 获取特定存储库的详细信息get_repository_details
: 获取存储库的详细信息,包括统计信息和引用get_file_content
: 从存储库中获取文件或目录的内容
工作项工具
get_work_item
: 通过 ID 检索工作项create_work_item
: 创建新的工作项update_work_item
: 更新现有的工作项list_work_items
: 列出项目中的工作项manage_work_item_link
: 添加、删除或更新工作项之间的链接
搜索工具
search_code
: 在项目中的存储库中搜索代码search_wiki
: 在项目中的维基页面中搜索内容search_work_items
: 在 Azure DevOps 中跨项目搜索工作项
管道工具
- list_pipelines: 列出项目中的管道
- get_pipeline: 获取特定管道的详细信息
- trigger_pipeline: 使用可定制参数触发管道运行
有关所有工具的综合文档,请参阅 工具文档。
贡献
欢迎贡献!请参阅 CONTRIBUTING.md 获取贡献指南。
Star 历史
许可证
MIT