MCP server for Azure DevOps — boards, repos, pipelines, projects — with governance controls (access modes, project scoping, protected projects, delete gating, typed confirmation).
mcp-azure-devops
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
A Model Context Protocol server for **Azure DevOps**. It lets an MCP-capable client (Claude Desktop, Claude Code, Cursor, Codex, …) work across **boards, repos, pipelines, and projects** — with a governance layer that keeps an AI agent inside safe boundaries.
What this offers
- **Projects & teams** — list projects/teams/members, inspect process templates.
- **Boards / work items** — WIQL queries, get work items, create/update work items, list iterations (sprints).
- **Repos / pull requests** — list repositories and branches, list/get PRs, open PRs.
- **Pipelines / builds** — list pipelines and recent builds, get a build, queue a run.
- **Admin / process** — list process templates, create a project, delete a project (guarded).
- **Governance built in** — access modes, project allowlists, protected projects, delete gating, typed confirmation for high-impact ops, dry-run, and JSON audit logging.
Governance & security model
| Concern | Flag | Default | Effect |
| --- | --- | --- | --- |
| What can the server do? | AZDO_MODE | read-only | read-only → reads; read-write → work items, PRs, pipeline runs; admin → create/delete project. Tools above the mode are **never registered**. |
| Which projects are in scope? | AZDO_PROJECT_ALLOWLIST | *(all)* | Operations on other projects are refused. |
| Which projects are read-only forever? | AZDO_PROTECTED_PROJECTS | *(none)* | Readable, never mutable. |
| Can it delete? | AZDO_ALLOW_DELETE | false | delete_project needs this **and** admin mode. |
| Typed confirmation | AZDO_REQUIRE_CONFIRMATION | true | High-impact ops require confirm to equal the target name — not just a boolean. |
| Preview | AZDO_DRY_RUN | false | Write/admin tools validate + log intent, then return. |
| Audit trail | AZDO_AUDIT_LOG | true | JSON line to stderr per guarded operation. |
| Interactive confirmation | *(automatic)* | — | Destructive & high-impact actions prompt the human to approve via MCP elicitation before running; clients without elicitation fall back to the *_ALLOW_* gate. |
Tools
**Read** (read-only+): list_projects, get_project, list_teams, list_team_members, list_processes, query_work_items, get_work_item, list_iterations, list_repositories, list_branches, list_pull_requests, get_pull_request, list_pipelines, list_builds, get_build
**Write** (read-write+): create_work_item, update_work_item, create_pull_request, run_pipeline
**Admin** (admin): create_project, delete_project (needs AZDO_ALLOW_DELETE + typed confirm)