Azure DevOps MCP服务器
MCP(模型上下文协议)服务器,提供与Azure DevOps的集成,允许AI助手与Azure DevOps工作项、拉取请求和wiki进行交互。
特性
- 工作项管理(创建、列出、获取)
- 拉取请求操作(创建、列表、获取、评论、差异)
- Wiki页面管理(创建、编辑)
设置
- 安装依赖项:
npm install- 配置环境变量(创建.env文件):
AZURE_DEVOPS_ORG_URL=https://dev.azure.com/your-org
AZURE_DEVOPS_PAT=your-personal-access-token
AZURE_DEVOPS_PROJECT=default-project
AZURE_DEVOPS_REPOSITORY=default-repo- 构建服务器:
npm run build安装
将服务器配置添加到MCP设置中:
对于VSCode
在macOS/Linux上
增添 ~/.vscode/cline_mcp_settings.json 或Cursor/Roo等效物:
{
"mcpServers": {
"azure-devops": {
"command": "node",
"args": ["/path/to/azure-devops-mcp/build/index.js"],
"env": {
"AZURE_DEVOPS_ORG_URL": "your-org-url",
"AZURE_DEVOPS_PAT": "your-pat",
"AZURE_DEVOPS_PROJECT": "your-project",
"AZURE_DEVOPS_REPOSITORY": "your-repo"
},
"disabled": false,
"autoApprove": []
}
}
}在Windows上
增添 %USERPROFILE%\.vscode\cline_mcp_settings.json 或Cursor/Roo等效物:
{
"mcpServers": {
"azure-devops": {
"command": "node",
"args": ["C:/path/to/azure-devops-mcp/build/index.js"],
"env": {
"AZURE_DEVOPS_ORG_URL": "your-org-url",
"AZURE_DEVOPS_PAT": "your-pat",
"AZURE_DEVOPS_PROJECT": "your-project",
"AZURE_DEVOPS_REPOSITORY": "your-repo"
},
"disabled": false,
"autoApprove": []
}
}
}可用工具
工作项
list_work_items
列出项目中的工作项。
{
"project": string, // Required
"types"?: string[], // Optional: Filter by work item types
"states"?: string[], // Optional: Filter by states
"assignedTo"?: string // Optional: Filter by assigned user
}get_work_item
获取特定工作项的详细信息。
{
"project": string, // Required
"id": number // Required: Work item ID
}创建工作项
创建新工作项。
{
"project": string, // Required
"type": string, // Required: e.g., "Task", "Bug"
"title": string, // Required
"description"?: string, // Optional
"assignedTo"?: string // Optional
}拉取请求
list_pull_requests
在存储库中列出拉取请求。
{
"status"?: "active" | "completed" | "abandoned" // Optional
}get_pull_request
获取特定拉取请求的详细信息。
{
"pullRequestId": number // Required
}create_pull_request
创建新的pull请求。
{
"title": string, // Required
"description": string, // Required
"sourceBranch": string, // Required
"targetBranch": string, // Required
"reviewers"?: string[] // Optional: Array of reviewer email addresses
}create_pull_request_comment
在pull请求中添加注释。
{
"pullRequestId": number, // Required
"content": string, // Required
"threadId"?: number, // Optional: For replies
"filePath"?: string, // Optional: For file comments
"lineNumber"?: number, // Optional: For line comments
"status"?: "active"|"fixed"|"pending"|"wontfix"|"closed" // Optional: Thread status
}get_pull_request_diff
获取拉取请求的差异。
{
"pullRequestId": number, // Required
"filePath"?: string, // Optional: Specific file to get diff for
"iterationId"?: number // Optional: Specific iteration to get diff for
}维基
create_wiki_page
创建一个新的wiki页面。
{
"project": string, // Required
"wiki": string, // Required
"path": string, // Required
"content": string // Required
}edit_wiki_page
编辑现有的wiki页面。
{
"project": string, // Required
"wiki": string, // Required
"path": string, // Required
"content": string, // Required
"etag": string // Required: For concurrency control
}发展
使用环境变量在开发模式下运行:
npm run dev备注
除非在工具参数中明确指定,否则 project 和 repository 参数将使用环境配置中的默认值。
