此模型上下文协议(MCP)服务器提供了与Azure DevOps的集成,允许Cline和Roo Code与Azure DevOps服务进行交互。
项目仓库位于:https://github.com/cakriwut/ado-mcp-server
要通过Smithery自动安装Azure DevOps MCP服务器(ADO-MCP-Server):
npx -y @smithery/cli install @cakriwut/ado-mcp-server --client claude
git clone https://github.com/cakriwut/ado-mcp-server.git
cd ado-mcp-server
npm install
npm run build
注意:构建输出(build/目录)不在版本控制中。克隆仓库后必须运行构建命令。
代码(读取、写入) - 用于拉取请求操作工作项(读取、写入) - 用于工作项管理构建(读取、执行) - 用于管道操作维基(读取、写入) - 用于维基操作项目和团队(读取) - 用于项目和看板信息将服务器配置添加到您的MCP设置文件中:
配置文件位置:%APPDATA%/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json
配置文件位置:%LOCALAPPDATA%/Claude/claude_desktop_config.json
在mcpServers对象中添加以下配置:
{
"mcpServers": {
"azure-devops-mcp-server": {
"command": "node",
"args": ["C:/absolute/path/to/ado-mcp-server/build/index.js"],
"env": {
"AZURE_DEVOPS_ORG": "your-organization",
你的组织名称
"AZURE_DEVOPS_PAT": "your-personal-access-token",
你的个人访问令牌
"AZURE_DEVOPS_PROJECT": "your-project-name"
},
你的项目名称
"disabled": false,
"autoApprove": []
}
}
}
替换以下值:
C:/absolute/path/to/ado-mcp-server:您克隆此仓库的绝对路径(使用正斜杠)your-organization:您的Azure DevOps组织名称your-project-name:您的Azure DevOps项目名称your-personal-access-token:步骤1中生成的PATget_work_item:根据ID获取工作项list_work_items:使用WIQL查询工作项create_work_item:创建新的工作项(Bug、任务、用户故事)update_work_item:更新现有工作项search_work_items:通过文本搜索查找工作项add_work_item_comment:向工作项添加评论get_work_item_comments:从工作项获取评论get_boards:获取项目中的可用看板list_pipelines:列出项目中的所有管道trigger_pipeline:执行管道list_pull_requests:列出拉取请求create_pull_request:创建新的拉取请求update_pull_request:更新拉取请求get_wikis:列出项目中的所有维基list_wiki_pages:列出维基中的页面get_wiki_page:根据路径获取维基页面create_wiki:创建新的维基update_wiki_page:创建或更新维基页面create_wiki_page:创建新的维基页面search_wiki_page:通过文本搜索维基中的页面list_projects:列出Azure DevOps组织中的所有项目ADO-MCP-Server包括一个命令行界面,允许您直接从终端与Azure DevOps进行交互。构建项目后,CLI作为azure-devops-cli可用。
在使用CLI之前,请设置环境变量:
# PowerShell
$env:AZURE_DEVOPS_ORG = "your-organization"
$env:AZURE_DEVOPS_PROJECT = "your-project-name"
$env:AZURE_DEVOPS_PAT = "your-personal-access-token"
# 根据ID获取工作项
node .\build\cli\index.js work-item get -i 42
# 查找工作项
node .\build\cli\index.js work-item search -s "bug"
# 创建新任务
node .\build\cli\index.js work-item create -t "Task" -d '[{"op":"add","path":"/fields/System.Title","value":"New Task"}]'
# 向工作项添加评论
node .\build\cli\index.js work-item add-comment -i 42 -t "这是通过CLI添加的评论"
# 从工作项获取评论
node .\build\cli\index.js work-item get-comments -i 42
# 列出项目中的所有维基
node .\build\cli\index.js wiki list
# 获取维基页面
node .\build\cli\index.js wiki page -w <wikiIdentifier> -p "/path/to/page" --include-content
# 搜索维基页面
node .\build\cli\index.js wiki search -w <wikiIdentifier> -s "搜索词"
更多详细的CLI使用示例,请参阅docs/wiki-cli-usage.md和docs/command-list.md。
npm run inspector
如果服务器无法连接:
如果您遇到身份验证错误:
对于其他问题:
要修改或扩展服务器:
src目录中进行更改npm run watch进行开发npm run build构建npm run inspector该项目包括所有MCP服务器命令的测试脚本。这些测试有助于验证服务器能否正确地与Azure DevOps通信。
确保根目录下有一个有效的.env文件,其中包含以下变量:
AZURE_DEVOPS_ORG=your-organization
AZURE_DEVOPS_PROJECT=your-project
AZURE_DEVOPS_PAT=your-personal-access-token
安装依赖项:
npm install
对于快速测试您的Azure DevOps连接:
npm run test:quick
这将运行一个简单的JavaScript测试,仅测试list_projects命令。
对于更全面的所有MCP服务器命令测试:
npm run test:simple
这将运行一个简单的JavaScript测试,测试所有主要命令在一个文件中。
要运行所有TypeScript测试:
npm test
要运行特定命令类别的测试:
npm run test:work-item # 测试工作项工具
npm run test:board # 测试看板工具
npm run test:wiki # 测试维基工具
npm run test:project # 测试项目工具
npm run test:pipeline # 测试管道工具
npm run test:pull-request # 测试拉取请求工具
有关测试的更多信息,请参阅tests/README.md文件。
MIT许可证 - 详情请参阅LICENSE