Mcp Azure Devops

io.github.dockndevai由 GitHub 帳號 dockndevai 發布v0.3.3更新於 Oct 26, 2026

Azure DevOps boards, repos, pipelines & projects for AI agents — governed.

概覽

AI 產生的概覽

本機 MCP 伺服器,讓助理在治理機制約束下讀取並視設定修改 Azure DevOps 的專案、工作項目、儲存庫、提取要求與管線。

可以做什麼
  • 列出並檢視專案、小組、小組成員與流程範本
  • 以 WIQL 查詢工作項目,取得單一工作項目與小組反覆項目
  • 列出 Git 儲存庫、分支與提取要求,並取得單一提取要求內容
  • 列出管線與近期組建,取得單一組建的狀態與耗時
  • 在讀寫或管理模式下列出之外還可建立工作項目、更新工作項目、建立提取要求、排入管線執行,以及建立或刪除專案
適用情境
適合讓助理直接在對話中處理 Azure DevOps 組織的事務,例如找出進行中的提取要求、查詢指派給自己的工作項目、查看哪些組建失敗,或開立錯誤單。
執行需求
透過 npx 從 npm 套件在本機執行,需要 Node.js。必須提供 AZDO_ORG_URL 與放在 AZDO_PAT 的個人存取權杖,並設定 AZDO_MODE(預設唯讀)。另可選配專案允許清單、受保護專案、刪除開關、輸入式確認、試跑與稽核記錄等治理設定。
安裝前請注意
AZDO_PAT 是涵蓋整個組織的憑證,建議先使用唯讀權杖並維持唯讀模式。讀寫與管理模式可建立工作項目、更新工作項目、建立提取要求、排入管線執行,開啟刪除後還能刪除專案。高影響操作可能要求輸入目標名稱確認或經人工核准,受管控操作會以 JSON 寫入 stderr 記錄。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Mcp Azure Devops,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

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

bash
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

json
{  "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)

bash
npm installnpm run buildnode dist/index.js   # with the environment variables set

Develop

bash
npm run devnpm test          # governance policy: modes, allowlists, delete gating, confirmationnpm run typecheck

Publishing

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

License

MIT

來源:README.md,提交 2a037ea

工具

15

list_projects

List projects

List the projects in the Azure DevOps organization that pass the allowlist. Returns each project's id, name, state, and whether it is marked protected (readable but never mutated). Start here to discover valid project names.

無需輸入參數。

get_project

Get project

Fetch the full details (id, description, visibility, state, capabilities) of a single project.

輸入參數project必填

list_teams

List teams

List the teams defined in a project, with their ids and names. Use a team id/name with the team-scoped tools.

輸入參數project必填

list_team_members

List team members

List the members (identities: display name and unique name) of a specific team within a project.

輸入參數team必填project必填

list_processes

List processes

List the organization's process templates (Agile, Scrum, CMMI, or inherited) with their ids. Pass one of these ids as the process when creating a project.

無需輸入參數。

query_work_items

Query work items (WIQL)

Run a Work Item Query Language (WIQL) query against a project and return the matching work-item ids (fetch fields with get_work_item). Example: SELECT [System.Id] FROM WorkItems WHERE [System.State] = 'Active'.

輸入參數wiql必填project必填

get_work_item

Get work item

Fetch a single work item by id, including all of its fields (title, state, assignee, tags, …).

輸入參數id必填

list_iterations

List iterations (sprints)

List a team's iterations (sprints), each with its path and start/finish dates.

輸入參數team必填project必填

list_repositories

List repositories

List the Git repositories in a project, with their ids, names, and default branches.

輸入參數project必填

list_branches

List branches

List the branches (refs/heads) of a Git repository, with the commit each one points at.

輸入參數repo必填project必填

list_pull_requests

List pull requests

List pull requests in a repository, optionally filtered by status (active by default).

輸入參數repo必填statusproject必填

get_pull_request

Get pull request

Fetch a single pull request by id, including its source/target branches, status, and reviewers.

輸入參數id必填repo必填project必填

list_pipelines

List pipelines

List the pipelines defined in a project, with their ids and names. Use a pipeline id with run_pipeline.

輸入參數project必填

list_builds

List builds

List recent builds / pipeline runs in a project, most recent first, with their status and result.

輸入參數topproject必填

get_build

Get build

Fetch a single build / pipeline run by id, with its status, result, and timing.

輸入參數buildId必填project必填

版本歷史

3
  1. v0.3.3最新Oct 26, 2026
  2. v0.3.0Sep 29, 2026
  3. v0.2.3Sep 16, 2026

評分

已滿足適用檢查項的 90%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分
  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分