leansoftx-aise-mcp-server-azure-devops
v1.0.1
Published
Azure DevOps reference server for the Model Context Protocol (MCP)
Maintainers
Readme
Azure DevOps MCP 服务器
一个实现了模型上下文协议(MCP)的Azure DevOps服务器,允许AI助手通过标准化协议与Azure DevOps API交互。
概述
该服务器实现了Azure DevOps的模型上下文协议(MCP),使AI助手如Claude能够安全地与Azure DevOps资源交互。服务器作为AI模型和Azure DevOps API之间的桥梁,提供标准化方式来:
- 访问和管理项目、工作项、代码仓库等
- 创建和更新工作项、分支和拉取请求
- 通过自然语言执行常见DevOps工作流
- 通过标准化资源URI访问仓库内容
- 安全认证并与Azure DevOps资源交互
服务器结构
服务器围绕模型上下文协议(MCP)构建,用于与AI助手通信。它提供了与Azure DevOps资源交互的工具,包括:
- 项目
- 工作项
- 代码仓库
- 拉取请求
- 分支
- 流水线
核心组件
- AzureDevOpsServer: 主服务器类,初始化MCP服务器并注册工具
- 工具处理器: 每个Azure DevOps操作的模块化函数
- 配置: 基于环境的配置,包括组织URL、PAT等
开始使用
先决条件
- Node.js (v16+)
- npm或yarn
- 具有适当访问权限的Azure DevOps账户
- 认证凭据(详见认证指南):
- 个人访问令牌(PAT),或
- Azure Identity凭据,或
- Azure CLI登录
使用NPX运行
与Claude桌面版/Cursor AI集成使用
要与Claude桌面版或Cursor AI集成,请将以下配置之一添加到您的配置文件中。
Azure Identity认证
确保已通过az login登录Azure CLI,然后添加以下配置:
{
"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)认证
{
"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登录进行认证
每种认证方法的示例配置文件可在示例目录中找到。
环境变量
完整的环境变量列表及其描述,请参阅认证指南。
关键环境变量包括:
| 变量 | 描述 | 必填 | 默认值 |
| ------------------------------ | ---------------------------------------------------------------------------------- | ---------------------------- | ---------------- |
| 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: 在项目的wiki页面中搜索内容search_work_items: 在Azure DevOps中跨项目搜索工作项
流水线工具
list_pipelines: 列出项目中的流水线get_pipeline: 获取特定流水线的详细信息trigger_pipeline: 使用可自定义参数触发流水线运行
Wiki工具
get_wikis: 列出项目中的所有wikiget_wiki_page: 以纯文本形式获取特定wiki页面的内容
拉取请求工具
create_pull_request: 在仓库的分支之间创建新的拉取请求list_pull_requests: 列出和筛选项目或仓库中的拉取请求get_pull_request_comments: 从特定拉取请求获取评论和评论线程add_pull_request_comment: 向拉取请求添加评论(回复现有评论或创建新线程)
所有工具的完整文档,请参阅工具文档。
