Skip to content
MCP Shelf

Azure DevOps MCP

View on GitHub

Microsoft's server for Azure DevOps boards, repos, pipelines, wikis and test plans.

  • Started in our test
  • ★ 2.1K GitHub stars
  • Last commit 23 Oct 2026

At a glance

Microsoft maintains this server for Azure DevOps. The model can list projects and teams, read and update work items, look at iterations and team capacity, browse repositories and pull requests, check and start pipeline runs, read and write wiki pages, search code and work items, and work with test plans and Advanced Security alerts.

There are two versions. Microsoft now recommends its hosted server at mcp.dev.azure.com, which needs no install and gets new tools first; this local npx package remains supported for clients that need stdio. Both need a work or school account backed by Microsoft Entra ID, since personal Microsoft accounts are not supported.

Made by
Microsoft
Licence
MIT
Latest version
2.11.0 (22 Oct 2026)
GitHub stars
2.1K
Last commit
23 Oct 2026
Tools
44
Runs on
Your computer or hosted

Our check: We ran this exact config on 27 Oct 2026: it started and answered with 44 tools. The shared database gave only the hosted address with a placeholder bearer token. The hosted server signs in with your Microsoft account, and the local package is @azure-devops/mcp on npm.

What's in the pod: its tools

We found 44 tools when we started it on 27 Oct 2026. 25 only read. The rest can change things, so keep your app's "ask before each tool call" setting on for them.

Runs commands1 tool · Can start programs or run code.

ToolWhat it is for
pipelines_runLists and reads pipeline runs.

Changes things18 tools · Can create, edit, send or delete.

ToolWhat it is for
pipelines_artifactLists and downloads build artifacts.
pipelines_writeQueues runs, creates and renames YAML pipelines, and cancels, retries or runs a stage of a running build.
repo_create_branchCreates a branch.
repo_file_writeCreates or updates a text file on a branch and commits it.
repo_pull_request_thread_writeReplies to, opens and resolves pull request comment threads.
repo_pull_request_writeCreates and updates pull requests: reviewers, votes, status and auto-complete.
testplan_test_case_writeCreates and updates test cases.
testplan_test_plan_writeCreates test plans.
testplan_test_suite_writeCreates test suites and adds test cases to them.
wiki_upsert_pageCreates or updates a wiki page.
wit_backlogReads backlogs and reorders the items on them.
wit_work_item_attachment_linkLinks an uploaded attachment to a work item.
wit_work_item_attachment_uploadUploads a file to attach to a work item.
wit_work_item_comment_writeAdds or edits comments on a work item.
wit_work_item_link_writeLinks work items to each other, to pull requests or to commits.
wit_work_item_writeCreates and updates work items, singly or in batches, including child items.
work_capacity_writeUpdates a team member's capacity for an iteration.
work_iteration_writeCreates iterations or assigns them to a team.

Only reads25 tools · Looks things up and changes nothing.

ToolWhat it is for
advsec_get_alert_detailsReads one Advanced Security alert in detail.
advsec_get_alertsLists Advanced Security alerts for a repository.
core_get_identity_idsLooks up people's identity IDs from a name or email.
core_list_project_teamsLists the teams in a project.
core_list_projectsLists the projects in your organization.
pipelines_buildLists builds and reads their status and changes.
pipelines_build_logReads build logs, whole or by line range.
pipelines_definitionLists and reads pipeline definitions.
repo_branchLists and reads branches.
repo_fileReads files and folders from a repository.
repo_pull_requestLists pull requests in a repository or reads one, with changed files if asked.
repo_pull_request_orgLists your active pull requests, or those waiting on your review, across the organization.
repo_pull_request_threadReads pull request comment threads.
repo_repositoryLists repositories or reads one.
repo_search_commitsSearches commits by text, author, date or branch.
search_codeSearches code across repositories.
search_wikiSearches wiki pages.
search_workitemSearches work items by text and filters.
testplanReads test plans, suites and cases.
testplan_show_test_results_from_build_idReads the test results of a build, filtered by outcome.
wikiLists wikis and pages and reads page content.
wit_queryRuns saved work item queries or WIQL.
wit_work_itemReads work items: one or many by ID, yours, their comments, history or those in an iteration.
wit_work_item_attachmentDownloads a work item attachment.
workReads iterations, team settings and team capacity.

Grouped and described by us. The README on GitHub lists the inputs each tool takes.

How clearly it describes its tools to your assistant

Tools with a description
44 of 44
Say if they change things
44 of 44
Context it takes, at least
~3,500 tokens

Every tool says whether it only reads or can change things, so a client can ask before the risky ones.

From the tool list it sent us. The token figure counts names, descriptions and input names; the full schemas your client loads add more.

Set it up

Pick your app for the exact snippet and where it goes.

Where it goes: claude_desktop_config.json (Settings → Developer → Edit Config)

Claude Desktop
{
  "mcpServers": {
    "azure-devops": {
      "command": "npx",
      "args": [
        "-y",
        "@azure-devops/mcp",
        "YOUR_ORGANIZATION"
      ]
    }
  }
}

Replace YOUR_ORGANIZATION with the name in your dev.azure.com address. Add "-d", "core", "work", "work-items" to load only some tool groups. It signs in through a browser by default; use "--authentication", "azcli" or "pat" on machines without one.

Remote option

Microsoft's recommended hosted server, in preview. Replace the last part with your organization name and sign in with your Microsoft account.

Server URL
https://mcp.dev.azure.com/YOUR_ORGANIZATION

New to this? See the setup guides for Claude Code, Cursor, Claude Desktop and ChatGPT.

Settings

Names are exactly as the project spells them. Required ones are marked.

SettingWhat it does
{organization}Config · requiredYour organization name, the part after dev.azure.com/, as the first argument.contoso
-d / --domainsCommand line flagLoads only some tool groups: core, work, work-items, search, test-plans, repositories, wiki, pipelines and advanced-security. Always include core.-d core work work-items
-a / --authenticationCommand line flagHow to sign in: interactive (browser, the default), azcli, env (Azure credential chain), envvar or pat.--authentication azcli
-t / --tenantCommand line flagThe Entra tenant ID to sign in to, for people with access to several tenants.
ADO_MCP_AUTH_TOKENEnvironment variableA bearer token, used with --authentication envvar.
PERSONAL_ACCESS_TOKENEnvironment variableThe base64 of email:PAT, used with --authentication pat.
ado_mcp_project / ado_mcp_teamEnvironment variableA default project and team, so tools do not ask each time.Contoso

What it can touch

It can read

  • Projects, teams, work items, backlogs and iterations
  • Repositories, branches, commits and pull requests
  • Pipelines, builds, logs, test plans, wikis and security alerts

It can change

  • Work items, comments, links and attachments
  • Pull requests, review threads, branches and committed files
  • Pipeline runs, iterations, capacity, wiki pages and test plans

Safer setup: Load only the domains you need with -d, and sign in as an account whose Azure DevOps permissions match what you want the model to do.

Before you start

  • An Azure DevOps organization
  • A Microsoft Entra ID work or school account
  • Node.js 20 or newer, for the local version

If it does not work

Sign-in hangs in WSL, SSH sessions, containers or CI
The default browser sign-in needs a browser. Use --authentication azcli after az login, or envvar or pat with a token.
TF400813: the user is not authorized
You are probably signed in to the wrong tenant. Pass --tenant with your organization's tenant ID.
A personal Microsoft account is rejected
Only Entra ID work or school accounts are supported.
The client warns about too many tools
Pass -d with only the domains you need, such as core work work-items.

Peas in a pod: similar servers

How Azure DevOps MCP lines up against other cloud and operations servers on the shelf.

ServerToolsRuns onLicenceStars
Azure DevOps MCP44Your computer or hostedMIT2.1K
AWS Knowledge MCP Server5Hosted–9.8K
Cloudflare MCP Servers2Hosted–4.4K
Grafana MCP62Your computerApache-2.03.6K

Questions

Local or remote server?

Microsoft recommends the hosted server at mcp.dev.azure.com/{organization}; it needs no install and will eventually replace the local one. Use this package when you need stdio.

Are personal access tokens supported?

Yes, with --authentication pat and PERSONAL_ACCESS_TOKEN set to the base64 of email:token.

Does it work with Azure DevOps Server on-premises?

No. It supports only Azure DevOps Services, and Microsoft says it has no plans for on-premises support.

What does it cost?

The server is free and MIT licensed. It works within your existing Azure DevOps licences.

Full docs on GitHubmicrosoft/azure-devops-mcp

Something wrong on this page? Tell us.

More in Cloud and operations