使用说明
街机蔚蓝devops mcp
用于Azure DevOps的MCP服务器 Arcade.dev。使AI助手能够与Azure DevOps项目、工作项、存储库、管道、wiki等进行交互。
特性
21工具 涵盖:
- 核心:列出项目、团队、搜索身份
- 工作项:获取、创建、更新、查询工作项;添加注释
- 仓库:列出仓库、分支、拉取请求;创建PR
- 管道:列出定义、版本;队列构建;运行管道
- 维基:列出wiki,获取wiki页面
- 搜索:跨存储库搜索代码
快速开始
1.安装依赖项
uv sync
2.配置凭据
提供Azure DevOps凭据有两种选择:
选项A:环境变量(.env 文件)
复制示例环境文件并添加您的凭据:
cp .env.example .env
编辑 .env:
AZURE_DEVOPS_ORG=your-organization-name
AZURE_DEVOPS_PAT=your-personal-access-token
选项B:街机秘密(建议用于制作)
如果没有 .env 如果找到文件或环境变量,服务器会自动回退到 街机秘密这非常适合:
- 向Arcade市场发布
- 共享工具包而不暴露凭据
- 通过Arcade Deploy进行生产部署
在Arcade中配置机密:
# Login to Arcade
arcade login
# Set your secrets
arcade secrets set AZURE_DEVOPS_ORG "your-organization-name"
arcade secrets set AZURE_DEVOPS_PAT "your-personal-access-token"
或通过配置 街机仪表板.
它是如何工作的:
- 服务器首先检查环境变量
- 如果未找到,请通过以下方式向Arcade Cloud请求机密
context.get_secret() - Arcade提示用户授权秘密访问(仅限第一次)
3.创建个人访问令牌(PAT)
- 首选
https://dev.azure.com/{your-org}/_usersSettings/tokens - 点击“新建令牌”
- 选择范围:代码(读取/写入)、工作项(读取/写)、构建(读取/执行)、Wiki(读取/编写)
- 复制令牌
4.运行MCP服务器
# stdio transport (default) - for Claude Desktop, CLI tools
uv run server.py stdio
# http transport - for Cursor, VS Code
uv run server.py http
对于HTTP传输,请在上查看API文档http://127.0.0.1:8000/docs
配置MCP客户端
光标IDE
arcade configure cursor
或手动添加到 .cursor/mcp.json:
对于环境变量:
{
"mcpServers": {
"azure-devops": {
"command": "uv",
"args": ["run", "server.py", "stdio"],
"cwd": "/path/to/arcade-azure-devops-mcp",
"env": {
"AZURE_DEVOPS_ORG": "your-org",
"AZURE_DEVOPS_PAT": "your-pat"
}
}
}
}
使用Arcade Secrets(无本地凭据):
{
"mcpServers": {
"azure-devops": {
"command": "uv",
"args": ["run", "server.py", "stdio"],
"cwd": "/path/to/arcade-azure-devops-mcp"
}
}
}
VS Code
arcade configure vscode
克劳德桌面
arcade configure claude
可用工具
| 类别 | 工具 | 描述 |
|---|---|---|
| 核心 | list_projects |
列出组织中的所有项目 |
get_project |
获取项目详细信息 | |
list_teams |
列出项目中的团队 | |
search_identities |
搜索用户/组 | |
| 工作项 | get_work_item |
按ID获取工作项 |
create_work_item |
创建新工作项 | |
update_work_item |
更新现有工作项 | |
run_work_item_query |
运行WIQL查询 | |
my_work_items |
获得分配给您的工作项 | |
add_work_item_comment |
向工作项添加注释 | |
| 回购协议 | list_repositories |
列出Git存储库 |
list_branches |
列出存储库中的分支 | |
list_pull_requests |
列出拉取请求 | |
create_pull_request |
创建新的PR | |
| 管道 | list_build_definitions |
列出管道定义 |
list_builds |
列表构建 | |
queue_build |
排队新建 | |
run_pipeline |
启动管道运行 | |
| 维基 | list_wikis |
列出Wiki |
get_wiki_page |
获取wiki页面内容 | |
| 搜索 | search_code |
跨存储库搜索代码 |
建筑
请求流
┌────────────┐ ┌────────────┐ ┌──────────────┐ ┌─────────────┐
│ MCP Client │ │ MCP Server │ │ Arcade Cloud │ │ Azure DevOps│
└─────┬──────┘ └─────┬──────┘ └──────┬───────┘ └──────┬──────┘
│ │ │ │
│ Call tool │ │ │
│──────────────────>│ │ │
│ │ │ │
│ │ Check env vars │ │
│ │◄──────────────────►│ │
│ │ │ │
│ │ [If env vars missing - paid tier] │
│ │ get_secret() │ │
│ │───────────────────>│ │
│ │<───────────────────│ │
│ │ │ │
│ │ API Request (Basic Auth) │
│ │─────────────────────────────────────────>│
│ │<─────────────────────────────────────────│
│ │ │ │
│ Tool result │ │ │
│<──────────────────│ │ │
│ │ │ │
View Mermaid diagram (for GitHub/GitLab)
sequenceDiagram
participant C as MCP Client
participant S as MCP Server
participant A as Arcade Cloud
participant D as Azure DevOps
C->>S: Call tool (e.g., list_projects)
Note over S: Resolve Credentials
S->>S: Check env: AZURE_DEVOPS_ORG
S->>S: Check env: AZURE_DEVOPS_PAT
alt Environment variables exist
S->>S: Use local credentials
else Environment variables missing (paid tier)
S->>A: context.get_secret("AZURE_DEVOPS_ORG")
A-->>S: Return organization name
S->>A: context.get_secret("AZURE_DEVOPS_PAT")
A-->>S: Return PAT token
end
Note over S,D: API Request
S->>D: GET /{org}/_apis/projects?api-version=7.1
D-->>S: JSON response
S-->>C: Tool result
组件概述
┌─────────────────────────────────────────────────────────────────────────────┐
│ MCP CLIENT │
│ (Cursor / Claude Desktop) │
└─────────────────────────────────┬───────────────────────────────────────────┘
│ MCP Protocol (stdio/http)
▼
┌─────────────────────────────────────────────────────────────────────────────┐
│ MCP SERVER │
│ ┌─────────────────┐ ┌──────────────────┐ ┌─────────────────────────┐ │
│ │ MCPApp │ │ Azure DevOps │ │ AuthManager │ │
│ │ Framework │──│ Tools (21) │──│ (credential resolver) │ │
│ └─────────────────┘ └──────────────────┘ └───────────┬─────────────┘ │
└─────────────────────────────────────────────────────────┼───────────────────┘
│
┌─────────────────────────────────┼─────────────────┐
│ │ │
▼ [Priority 1] ▼ [Priority 2] │
┌─────────────────────────┐ ┌───────────────────────┐ │
│ Local .env / │ │ Arcade Cloud │ │
│ Environment Variables │ │ (Secrets API) │ │
└─────────────────────────┘ │ [Paid tier only] │ │
└───────────────────────┘ │
│
┌─────────────────┘
▼
┌───────────────────────┐
│ Azure DevOps │
│ REST API v7.1 │
└───────────────────────┘
View Mermaid diagram (for GitHub/GitLab)
flowchart TB
subgraph MCPClient [MCP Client]
Cursor[Cursor / Claude Desktop]
end
subgraph MCPServer [MCP Server]
App[MCPApp Framework]
Tools[Azure DevOps Tools]
Auth[AuthManager]
end
subgraph External [External Services]
Arcade[Arcade Cloud - Secrets API]
ADO[Azure DevOps REST API v7.1]
end
subgraph Local [Local Config]
Env[.env file / Environment Variables]
end
Cursor -->|MCP Protocol| App
App --> Tools
Tools --> Auth
Auth -->|Priority 1| Env
Auth -.->|Priority 2 - Paid Tier| Arcade
Auth -->|Basic Auth| ADO
凭证解析优先级
- 环境变量 (
.env文件或系统环境)-先检查 - Arcade Cloud的秘密 -如果找不到env变量,则回退(需要付费Arcade层)
项目结构
arcade-azure-devops-mcp/
├── server.py # MCP server entry point with all tools
├── arcade_azure_devops_mcp/ # Azure DevOps client library
│ ├── __init__.py
│ ├── client.py # REST API client (httpx)
│ ├── models.py # Pydantic models
│ └── auth/ # Authentication
│ ├── __init__.py
│ ├── manager.py # Credential management (env + Arcade secrets)
│ └── oauth.py # OAuth/Azure AD (optional)
├── pyproject.toml # Dependencies & entry points
├── .env.example # Environment template
└── README.md
发展
# Install with dev dependencies
uv sync --all-extras
# Run tests
uv run pytest
发布到Arcade
要将此工具包发布到Arcade市场:
# Ensure pyproject.toml has correct entry points
arcade publish
然后,用户可以通过以下方式安装:
arcade install arcade-azure-devops-mcp
许可证
麻省理工学院
