Azure DevOps集成服务器

提供与Azure DevOps的集成服务,允许Cline和Roo Code与Azure DevOps服务交互。

  • by cakriwut
  • TypeScript
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 cakriwut/ado-mcp-server

使用说明

Azure DevOps MCP(ADO MCP服务器)用于临床

此模型上下文协议(MCP)服务器提供与Azure DevOps的集成,允许Cline和Roo Code与Azure DevOps服务进行交互。

项目存储库位于:https://github.com/cakriwut/ado-mcp-server

先决条件

  • Node.js(v20 LTS或更高版本)
  • npm(附带Node.js)
  • Cline装置
  • 带有访问令牌的Azure DevOps帐户

安装

通过Smithery安装

通过以下方式自动安装Azure DevOps MCP服务器(ADO MCP服务器) 史密瑟里:

npx -y @smithery/cli install @cakriwut/ado-mcp-server --client claude

手动安装

  1. 克隆此存储库:
git clone https://github.com/cakriwut/ado-mcp-server.git
cd ado-mcp-server
  1. 安装依赖项:
npm install
  1. 构建服务器:
npm run build

注:构建输出(build/ 目录)不包含在版本控制中。克隆存储库后,必须运行build命令。

配置

1.获取Azure DevOps个人访问令牌(PAT)

  1. 转到Azure DevOps并登录
  2. 点击右上角的个人资料图片
  3. 选择“安全”
  4. 点击“新建令牌”
  5. 为您的令牌命名并选择所需的范围:
    • Code (read, write) -用于Pull Request操作
    • Work Items (read, write) -用于工作项管理
    • Build (read, execute) -用于管道操作
    • Wiki (read, write) -用于Wiki操作
    • Project and Team (read) -项目和董事会信息
  6. 复制生成的令牌

2.配置MCP设置

将服务器配置添加到MCP设置文件中:

适用于Roo代码(VSCode扩展)

配置文件位置: %APPDATA%/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json

适用于Cline桌面应用程序

配置文件位置: %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中生成的PAT

Windows用户的重要注意事项

  • 在路径中使用正斜杠(/),而不是反斜杠()
  • 提供build/index.js文件的完整绝对路径
  • 更改配置后重新启动Roo Code或Cline

可用工具

工作项

  • get_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:创建新的pull请求
  • update_pull_request:更新拉取请求

维基

  • get_wikis:列出项目中的所有Wiki
  • list_wiki_pages:列出wiki中的页面
  • get_wiki_page:按路径获取wiki页面
  • create_wiki:创建新wiki
  • update_wiki_page:创建或更新wiki页面
  • create_wiki_page:创建新的wiki页面
  • search_wiki_page:按文本搜索wiki中的页面

项目

  • list_projects:列出Azure DevOps组织中的所有项目

命令行界面(CLI)

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"

常见CLI命令

工作项

# Get a work item by ID
node .\build\cli\index.js work-item get -i 42

# Search for work items
node .\build\cli\index.js work-item search -s "bug"

# Create a new task
node .\build\cli\index.js work-item create -t "Task" -d '[{"op":"add","path":"/fields/System.Title","value":"New Task"}]'

# Add a comment to a work item
node .\build\cli\index.js work-item add-comment -i 42 -t "This is a comment added via CLI"

# Get comments from a work item
node .\build\cli\index.js work-item get-comments -i 42

维基

# List all wikis in the project
node .\build\cli\index.js wiki list

# Get a wiki page
node .\build\cli\index.js wiki page -w <wikiIdentifier> -p "/path/to/page" --include-content

# Search wiki pages
node .\build\cli\index.js wiki search -w <wikiIdentifier> -s "search term"

有关CLI使用示例的更多详细信息,请参阅 docs/wiki-cli-usage.md 和 docs/command-list.md.

验证

  1. 添加配置后重新启动Cline(或VSCode)
  2. Azure DevOps MCP服务器现在应该列在Cline的功能中
  3. 您可以使用MCP检查器验证安装:
npm run inspector

故障排除

  1. 如果服务器未连接:

    • 检查MCP设置中的路径是否正确
    • 验证您的Azure DevOps凭据
    • 检查Cline日志中是否有任何错误消息
  2. 如果您遇到身份验证错误:

    • 验证您的PAT是否未过期
    • 确保PAT具有所有必要的范围
    • 仔细检查组织和项目名称
  3. 关于其他问题:

    • 运行检查器工具以验证服务器是否正常工作
    • 检查服务器日志中是否有任何错误消息

发展

要修改或扩展服务器,请执行以下操作:

  1. 在中进行更改 src 目录
  2. 跑 npm run watch 为了发展
  3. 建立 npm run build 准备好后
  4. 使用检验员进行测试: npm run inspector

测试

该项目包括所有MCP服务器命令的测试脚本。这些测试有助于验证服务器是否可以与Azure DevOps正确通信。

测试的先决条件

  1. 确保你有一个有效的 .env 根目录中的文件,包含以下变量:

    AZURE_DEVOPS_ORG=your-organization
    AZURE_DEVOPS_PROJECT=your-project
    AZURE_DEVOPS_PAT=your-personal-access-token
    
  2. 安装依赖项:

    npm install
    

运行测试

快速测试

要快速测试您的Azure DevOps连接:

npm run test:quick

这将运行一个简单的JavaScript测试,只测试list_projects命令。

要对所有MCP服务器命令进行更全面的测试:

npm run test:simple

这将运行一个简单的JavaScript测试,在一个文件中测试所有主要命令。

TypeScript测试

要运行所有TypeScript测试:

npm test

要运行特定命令类别的测试,请执行以下操作:

npm run test:work-item     # Test Work Item Tools
npm run test:board         # Test Board Tools
npm run test:wiki          # Test Wiki Tools
npm run test:project       # Test Project Tools
npm run test:pipeline      # Test Pipeline Tools
npm run test:pull-request  # Test Pull Request Tools

请参阅 测试/README.md 文件以获取有关测试的更多信息。

许可证

MIT许可证-请参阅 许可证 详见