mcpField
M
mcp-azure-devops

mcp-azure-devops

Local
github.com/dockndevaiVersion Control1Updated 3d ago

About mcp-azure-devops

mcp-azure-devops is an MCP server for working with Azure DevOps projects, boards, repositories, pull requests, and pipelines. Its configurable governance controls limit access and guard high-impact changes.

Key features

  1. 01Browse projects, teams, and members
  2. 02Query and manage work items
  3. 03Inspect repositories, branches, and pull requests
  4. 04Review builds and queue pipeline runs
  5. 05Govern writes with modes, allowlists, and confirmations

Use cases

  1. 01Find work items matching a WIQL query
  2. 02Review active pull requests and recent builds
  3. 03Create or update work items with write access
  4. 04Restrict an agent to approved projects

MCP support

Exposes Azure DevOps project, board, repository, pull request, and pipeline operations as tools to MCP clients. Available tools depend on the configured access mode, with guarded controls for sensitive operations.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"dockndevai-mcp-azure-devops": {
"command": "npx",
"args": [
"-y",
"@dockndevai/mcp-azure-devops"
],
"env": {
"AZDO_ORG_URL": "<AZDO_ORG_URL>",
"AZDO_PAT": "<AZDO_PAT>",
"AZDO_MODE": "<AZDO_MODE>"
}
}
}
}
Run commandnpx -y @dockndevai/mcp-azure-devops
Environment variables to set
AZDO_ORG_URLAzure DevOps organization URL, e.g. https://dev.azure.com/your-org.
AZDO_PATSecretPersonal Access Token (read-only to start).
AZDO_MODEAccess mode: read-only | read-write | admin.

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@dockndevai/mcp-azure-devops0.3.3

Tools

15

Saved tool list · updated 2d ago

This tool takes no parameters.

Details

From the project README

mcp-azure-devops

CI License: MIT npm

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

ConcernFlagDefaultEffect
What can the server do?AZDO_MODEread-onlyread-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_DELETEfalsedelete_project needs this and admin mode.
Typed confirmationAZDO_REQUIRE_CONFIRMATIONtrueHigh-impact ops require confirm to equal the target name — not just a boolean.
PreviewAZDO_DRY_RUNfalseWrite/admin tools validate + log intent, then return.
Audit trailAZDO_AUDIT_LOGtrueJSON 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)

Quickstart — add to your agent

Published on npm as @dockndevai/mcp-azure-devops. Runs via npx; needs an org and a PAT. See docs/CLIENTS.md for every client and .env.example for all variables.

Claude Code

claude mcp add azure-devops -e AZDO_ORG_URL="https://dev.azure.com/your-org" -e AZDO_PAT="your-pat" -e AZDO_MODE="read-only" -- npx -y @dockndevai/mcp-azure-devops

Claude Desktop · Cursor · Windsurf

{
  "mcpServers": {
    "azure-devops": {
      "command": "npx",
      "args": ["-y", "@dockndevai/mcp-azure-devops"],
      "env": {
        "AZDO_ORG_URL": "https://dev.azure.com/your-org",
        "AZDO_PAT": "your-pat",
        "AZDO_MODE": "read-only"
      }
    }
  }
}

Example prompts

  • "List active pull requests in the Payments project's api repo"
  • "Query work items assigned to me that are still Active"
  • "Show the last 10 builds in the Web project and which failed"
  • "Create a Bug in Payments titled 'Checkout 500 on retry'" (needs read-write)

Run from source (development)

npm install
npm run build
node dist/index.js   # with the environment variables set

Develop

npm run dev
npm test          # governance policy: modes, allowlists, delete gating, confirmation
npm run typecheck

Publishing

Ships a server.json for the official MCP registry and an mcpName for npm ownership validation. See PUBLISHING.md.

License

MIT

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.