这是一个动态的Azure DevOps MCP(模型上下文协议)服务器,它能够根据当前工作目录自动切换认证上下文。借助这个服务器,用户可以通过单个MCP服务器与多个Azure DevOps组织和项目实现无缝集成。
.azure-devops.json 配置文件。# 安装依赖
npm install
# 构建项目
npm run build
# 启动服务器
npm start
{
"name": "get-current-context",
"arguments": {
"directory": "/Users/wangkanai/Sources/riversync"
}
}
{
"name": "get-work-items",
"arguments": {
"wiql": "SELECT [System.Id], [System.Title] FROM WorkItems WHERE [System.State] = 'Active'"
}
}
{
"name": "create-work-item",
"arguments": {
"type": "Task",
"title": "Implement new feature",
"description": "Add authentication system",
"assignedTo": "user@example.com"
}
}
{
"name": "get-repositories",
"arguments": {
"includeLinks": true
}
}
每个仓库都应包含一个 .azure-devops.json 配置文件:
{
"organizationUrl": "https://dev.azure.com/your-org",
"project": "YourProject",
"pat": "your-pat-token-here",
"description": "Azure DevOps configuration for this repository",
"settings": {
"timeout": 30000,
"retries": 3,
"apiVersion": "7.1"
},
"tools": {
"workItems": true,
"repositories": true,
"builds": true,
"pullRequests": true,
"pipelines": true
},
"meta": {
"configVersion": "1.0",
"lastUpdated": "2025-07-21",
"createdBy": "devops-enhanced-mcp"
}
}
重要提示:请将 .azure-devops.json 添加到你的 .gitignore 文件中:
# Azure DevOps MCP本地配置(包含PAT令牌)
.azure-devops.json
/Users/wangkanai/Sources/riversync.azure-devops.json 文件。/Users/wangkanai/Sources/mula.azure-devops.json 文件。服务器采用智能目录检测机制:
服务器使用个人访问令牌(PAT)进行Azure DevOps认证。PAT令牌在每个仓库的本地 .azure-devops.json 配置文件中按项目进行配置。
PAT令牌应具备以下权限范围:
服务器具备全面的错误处理功能:
增强验证系统包括MCP服务器启动、连接验证和就绪检查:
# 准备MCP服务器进行验证
./warmup-mcp.sh
# 使用自定义配置文件
./warmup-mcp.sh custom-config.json
# 进行包含MCP服务器初始化的全面验证
./validate-enhanced.sh
# 跳过交互式Claude测试(更快)
./validate-enhanced.sh --skip-interactive
# 为慢速系统进行扩展预热
./validate-enhanced.sh --warmup 20
# 仅测试特定仓库
./validate-enhanced.sh --repos "RiverSync,Mula"
# 使用自定义配置文件
./validate-enhanced.sh --config custom-config.json
# 显示所有选项
./validate-enhanced.sh --help
# 手动构建并测试服务器
npm run build
node test-server.js
通用验证系统使用 validation-config.json:
{
"proxyPath": "/Users/wangkanai/Sources/devops-enhanced-mcp",
"repositories": [
{
"name": "RiverSync",
"path": "/Users/wangkanai/Sources/riversync",
"expectedOrganization": "riversync",
"organizationUrl": "https://dev.azure.com/riversync",
"project": "RiverSync",
"enabled": true
}
],
"testSettings": {
"timeoutSeconds": 30,
"skipInteractive": false,
"mcpServerName": "devops-enhanced-mcp",
"configFileName": ".azure-devops.json"
},
"expectedTools": ["workItems", "repositories", "builds", "pullRequests", "pipelines"]
}
增强验证系统包括:
.azure-devops.json 文件是否包含预期值。服务器以前支持使用全局 config/environments.json 文件进行环境映射。为了提高安全性和项目隔离性,此方法已弃用,建议使用本地 .azure-devops.json 配置文件。
如果需要从旧的基于环境的配置进行迁移,请将设置转换为每个仓库中的本地配置文件。
此MCP服务器旨在与Claude Code无缝协作,用于Azure DevOps操作:
.azure-devops.json 文件存在于项目目录中。.azure-devops.json 文件。通过设置环境变量来启用调试日志:
export DEBUG=devops-enhanced-mcp
npm start
本项目采用MIT许可证,详情请参阅 LICENSE 文件。