Azure DevOps MCP 服务器
项目简介
Azure DevOps MCP 服务器是一个基于 Model Context Protocol (MCP) 构建的后端应用,旨在为 AI 助手提供与 Azure DevOps 服务集成的能力。通过标准化的 MCP 协议,AI 助手可以安全、可控地访问和操作 Azure DevOps 中的项目、工作项、代码仓库、流水线等资源,从而实现自动化任务、信息检索和工作流程集成。
主要功能点
- 资源访问: 提供对 Azure DevOps 项目、工作项、代码仓库、分支、拉取请求和流水线等核心资源的访问能力。
- 工具集成: 预置丰富的工具集,例如:
- 项目管理工具:列出和获取项目详情。
- 工作项管理工具:检索和创建工作项。
- 代码仓库工具:列出和获取代码仓库信息。
- 标准化协议: 采用 MCP 协议与客户端通信,确保与各种 MCP 客户端的兼容性。
- 易于部署和配置: 提供详细的安装和配置指南,支持环境变量配置。
安装步骤
-
克隆仓库:
git clone https://github.com/Tiberriver256/azure-devops-mcp.git cd azure-devops-mcp -
安装依赖:
npm install -
配置环境变量:
推荐方式 A: 使用自动化配置脚本
chmod +x setup_env.sh ./setup_env.sh按照脚本提示完成 Azure CLI DevOps 扩展安装、Azure DevOps 组织选择、默认项目设置以及个人访问令牌 (PAT) 的创建和配置。脚本会自动生成 '.env' 文件。
方式 B: 手动配置
cp .env.example .env编辑 '.env' 文件,填入您的 Azure DevOps 组织 URL 和个人访问令牌 (PAT):
AZURE_DEVOPS_ORG_URL=https://dev.azure.com/your-organization AZURE_DEVOPS_PAT=your-personal-access-token AZURE_DEVOPS_DEFAULT_PROJECT=your-default-project # 可选,设置默认项目注意: 个人访问令牌 (PAT) 需要具备访问 Azure DevOps 资源的相应权限。
-
构建项目:
npm run build
服务器配置
MCP 客户端需要配置以下 JSON 信息以连接到 Azure DevOps MCP 服务器:
{ "serverName": "azure-devops-mcp", "command": "npm", "args": [ "start" ], "transport": "stdio" }
参数注释:
- 'serverName': 服务器名称,设置为 "azure-devops-mcp"。
- 'command': 启动服务器的命令,这里使用 'npm',假设您已安装 Node.js 和 npm。
- 'args': 传递给 'npm' 命令的参数,'start' 指令会根据 'package.json' 中的配置启动服务器。
- 'transport': 通信协议,使用 'stdio' (标准输入输出)。
基本使用方法
- 确保 Azure DevOps MCP 服务器已成功启动并运行。
- 在 MCP 客户端中,配置上述服务器连接信息。
- 使用 MCP 客户端向 Azure DevOps MCP 服务器发送请求,例如列出项目、创建工作项等。具体工具的使用方法请参考客户端的文档或工具列表。
示例工具调用 (MCP 客户端请求)
以下是一个调用 'list_projects' 工具的示例请求 (JSON-RPC 格式):
{ "jsonrpc": "2.0", "method": "call_tool", "params": { "name": "list_projects", "arguments": {} }, "id": "123" }
服务器将返回包含项目列表的 JSON-RPC 响应。
测试服务器
运行单元测试和集成测试以确保服务器功能正常:
npm test # 运行单元测试 npm run test:integration # 运行集成测试 (需要有效的 Azure DevOps 凭据)
开发
本项目采用测试驱动开发 (TDD) 模式,鼓励贡献代码和功能。
信息
分类
开发者工具