
Azure DevOps Remote MCP Server: Setup for VS Code, Cursor and Other Apps
Lets Claude Code, Cursor, VS Code and other assistants read and update your Azure DevOps work items, pull requests, pipelines, wikis and test plans.
This is Microsoft's hosted Azure DevOps server, and Microsoft recommends it over the local one. There is nothing to install: you add your organization's address and sign in with your Microsoft Entra account. It needs an organization backed by Microsoft Entra, and a standalone Microsoft account organization does not work. VS Code and Visual Studio sign in directly, while Cursor and Claude Code need a custom app registration set up first.
Good for
- Developers who want an assistant to triage work items and review pull requests
- Engineering managers who check sprint capacity and backlog health
- DevOps engineers who watch builds and pipeline runs
- QA teams who manage test plans and results
Works in
14 should work
Tap an app to see how to set it up and any known problems.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Supports hosted MCP servers.
Install Azure DevOps (ADO) MCP
Claude Code
- 1
Copy this prompt.
Add the Azure DevOps (ADO) MCP server to Claude Code. Run this command: claude mcp add --transport http ado https://mcp.dev.azure.com/{organization} --client-id {client-id} --callback-port 3118 Then check that it loaded and tell me if I need to sign in or restart. - 2
Paste it into Claude Code. It shows the change and asks before running it.
Requires Custom Microsoft Entra app registration.
Read-only mode: Add the header X-MCP-Readonly with the value true in the server config. Microsoft documents it for the hosted server.
Claude Code needs your own app registration in the Microsoft Entra admin center. Use http://localhost:3118/callback as the redirect URI, allow public client flows, add the Azure DevOps MCP permission, and grant admin consent. Then run /mcp in Claude Code and sign in. Replace {client-id} with the app's Application (client) ID.
From the vendor's docs. Source.
Tools
Lists your Azure DevOps organizations
Shows the organizations your account can reach.
Try: “Which Azure DevOps organizations do I have?”
Read ·
core_list_orgsLists projects
Lists the projects in an organization.
Try: “List the projects in Contoso.”
Read ·
core_list_projectsLists teams in a project
Lists the teams of one project.
Try: “List teams in the Contoso project.”
Read ·
core_list_project_teamsLists members of a group
Lists direct members and child groups. Only in the Insiders preview.
Try: “Who is in the Release Managers group?”
Read ·
core_list_group_membersReads work items
Gets work items by ID, your own items, comments, revisions, items in an iteration, and work item types.
Try: “Show my open work items in the Contoso project.”
Read ·
wit_work_itemRuns saved work item queries
Gets, searches, lists and runs saved queries.
Try: “Run my saved query for open bugs.”
Read ·
wit_queryRuns a WIQL query
Runs a query written in WIQL and returns the matching work items. Only in the Insiders preview.
Try: “Find all bugs assigned to me that changed this week.”
Read ·
wit_query_by_wiqlBrowses team backlogs
Lists backlog levels and the work items inside them.
Try: “List the work items in the Contoso team backlog.”
Read ·
wit_backlogSearches work items by text
Full-text search across work items.
Try: “Search work items that mention payment timeout.”
Read ·
search_workitemCreates and edits work items
Creates work items, updates fields, updates many at once and adds child items.
Try: “Create a bug called Login fails on Safari.”
Write ·
wit_work_item_writeAdds or edits work item comments
Adds a comment to a work item or changes an existing one.
Try: “Comment on work item 4521 that the fix is in review.”
Write ·
wit_work_item_comment_writeLinks work items and code
Links work items together, unlinks them, links a pull request, or adds a repo, branch, commit, build or wiki link.
Try: “Link work item 4521 to pull request 88.”
Write ·
wit_work_item_link_writeDownloads a work item attachment
Fetches an attachment by ID.
Try: “Download the screenshot attached to work item 4521.”
Read ·
wit_work_item_attachmentUploads a file for attaching
Uploads file content up to 20 MB without attaching it yet.
Try: “Upload this log file so I can attach it.”
Write ·
wit_work_item_attachment_uploadAttaches an uploaded file to a work item
Links a file you uploaded earlier to a work item.
Try: “Attach the uploaded log to work item 4521.”
Write ·
wit_work_item_attachment_linkLooks up repositories
Gets one repository or lists repositories in a project.
Try: “List the repos in the Contoso project.”
Read ·
repo_repositoryLooks up branches
Gets a branch, lists branches, or lists branches you pushed to.
Try: “Which branches have I pushed to?”
Read ·
repo_branchReads files from a repo
Gets file text at a branch, tag or commit, or lists a folder.
Try: “Show README.md on the main branch of web-app.”
Read ·
repo_fileSearches commits
Finds commits by text, author, date range and more.
Try: “Find commits by Dana in the last two weeks.”
Read ·
repo_search_commitsSearches code
Full-text code search across repos.
Try: “Search the code for calls to getCustomer.”
Read ·
search_codeReads pull requests
Gets or lists pull requests, finds ones by commit, and shows file changes and diffs.
Try: “What pull requests need my review?”
Read ·
repo_pull_requestReads pull request comments
Lists comment threads and the comments in a thread.
Try: “Show the open comments on pull request 88.”
Read ·
repo_pull_request_threadCreates and updates pull requests
Creates or updates a pull request, changes reviewers and casts a vote.
Try: “Open a pull request from fix-login into main.”
Write ·
repo_pull_request_writeComments on pull requests
Starts a thread, replies, or changes a thread's status.
Try: “Reply to the first comment on PR 88 and resolve it.”
Write ·
repo_pull_request_thread_writeCreates a branch
Creates a new branch in a repository.
Try: “Create a branch called fix-login from main.”
Write ·
repo_create_branchReads builds
Lists builds, gets status and issues, and shows commits and work items in a build.
Try: “Did the last build of web-app pass?”
Read ·
pipelines_buildReads build logs
Lists the logs of a build and gets the text of one log.
Try: “Show me the error in the last failed build log.”
Read ·
pipelines_build_logReads pipeline definitions
Lists pipeline definitions and their revision history.
Try: “List the pipelines in the Contoso project.”
Read ·
pipelines_definitionReads pipeline runs
Gets one run or lists the runs of a pipeline.
Try: “List the last 5 runs of the deploy pipeline.”
Read ·
pipelines_runLists and downloads build artifacts
Lists the artifacts of a build and downloads one by name.
Try: “Download the test report artifact from build 1204.”
Read ·
pipelines_artifactRuns and changes pipelines
Queues a pipeline run, creates a YAML pipeline, or cancels, retries or runs a stage on a running build.
Try: “Run the deploy pipeline on main.”
Write ·
pipelines_writeReads wikis
Lists wikis, gets a wiki, lists pages and gets page content.
Try: “Show the Getting Started page in the team wiki.”
Read ·
wikiSearches wikis
Full-text search across wiki pages.
Try: “Search the wiki for onboarding steps.”
Read ·
search_wikiCreates or edits a wiki page
Creates a wiki page or updates an existing one.
Try: “Update the Getting Started page with the new setup steps.”
Write ·
wiki_upsert_pageReads test plans
Lists test plans, suites and test cases.
Try: “List the test plans in Contoso.”
Read ·
testplanShows test results for a build
Gets test results for a build.
Try: “Which tests failed in build 1204?”
Read ·
testplan_show_test_results_from_build_idReads test run results
Gets results for a test run, with optional filters.
Try: “Show the failed results of test run 77.”
Read ·
testplan_test_runCreates test plans
Creates a test plan.
Try: “Create a test plan called Release 5.”
Write ·
testplan_test_plan_writeCreates test suites
Creates a suite or adds test cases to one.
Try: “Add these test cases to the Login suite.”
Write ·
testplan_test_suite_writeCreates and edits test cases
Creates a test case or updates its steps.
Try: “Create a test case for password reset.”
Write ·
testplan_test_case_writeRecords manual test runs
Creates a run, updates results, completes or aborts a run, and updates test point outcomes.
Try: “Mark test point 12 as passed.”
Write ·
testplan_test_run_writeReads iterations and capacity
Lists iterations, team settings and team capacity.
Try: “What is the capacity of the Fabrikam team this iteration?”
Read ·
workCreates and assigns iterations
Creates iterations and assigns them to a team.
Try: “Create a sprint called Sprint 24 for the Fabrikam team.”
Write ·
work_iteration_writeUpdates team capacity
Changes one team member's capacity for an iteration.
Try: “Set Dana's capacity for Sprint 24 to 4 hours a day.”
Write ·
work_capacity_writeReads Advanced Security alerts
Lists alerts for a repository or gets one alert.
Try: “List the open security alerts for web-app.”
Read ·
advsec_alertsReads repo migrations to GitHub
Lists migrations, shows status, cutover review items, and pipeline rewiring. Preview feature.
Try: “What is the migration status of web-app?”
Read ·
enterprise_live_migrationManages repo migrations to GitHub
Creates, pauses, resumes, schedules or cancels cutover, approves cutover, and can permanently delete a migration. Preview feature.
Try: “Pause the web-app migration.”
Delete ·
enterprise_live_migration_writeSubmits pipelines for migration
Submits pipelines as part of a migration. Preview feature.
Try: “Submit the build pipelines for migration.”
Write ·
enterprise_live_migration_pipelines_write
Read from the source code
Permissions
high risk · 3 things to watch
High risk
The assistant can create and change work items, pull requests, pipelines, wiki pages and test plans, and can permanently delete a repo migration. Add the read-only header and pick only the tool groups you need.
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only modeHow to turn it on
Watch out for
It can write to almost everything in Azure DevOps
Write tools cover work items, pull requests, pipelines, wikis and test plans. Turn on the read-only header unless you need changes. learn.microsoft.com
It can start pipelines and change branches
It can queue a pipeline run, create a branch and cast a pull request vote. Require approval for tool calls in your assistant. learn.microsoft.com
A repo migration can be deleted
In the preview migration tools, an abandon action permanently deletes a migration. Exclude the migration group with the toolsets header if you do not use it. learn.microsoft.com
Security advisories
No published security advisories as of Nov 1, 2026.
Technical details
| Turning on read-only | Send the header X-MCP-Readonly: true. Limit tool groups with X-MCP-Toolsets. |
|---|---|
| Talks to | mcp.dev.azure.com |
| Sign-in and keys | Microsoft Entra ID sign-in through your AI app. No token is written into the config file. |
| Scopes |
|
Questions
Is the Azure DevOps remote MCP server official?
Yes. It is built and hosted by Microsoft, and the azure-devops-mcp repository recommends it over the local server.
What is the Azure DevOps remote MCP server URL?
It is https://mcp.dev.azure.com/{organization}, with your organization name at the end. You can leave the name off, but then each request must say which organization to use.
Does it work with Claude Desktop?
No. Microsoft says Claude Desktop and Codex cannot use the Microsoft Entra sign-in this server needs. Use the local Azure DevOps server with them.
How is it different from the local Azure DevOps server?
This one runs on Microsoft's servers, needs no install, signs in with Microsoft Entra and gets new features first. The local one runs on your computer with Node.js and also accepts a personal access token or Azure CLI sign-in. Microsoft says the remote server will eventually replace the local one.
Can I make it read-only?
Yes. Add the header X-MCP-Readonly with the value true in the server config. You can also limit it to tool groups such as repos, wiki or work items.
Does it work with on-premises Azure DevOps Server?
The Microsoft page describes the remote server for Azure DevOps Services backed by Microsoft Entra, and says standalone Microsoft account organizations are not supported. It does not describe on-premises use.
Information
updated Nov 2, 2026
- Publisher
- Microsoft (official)
- Endpoint
https://mcp.dev.azure.com- Transport
- Streamable HTTP
- Auth
- OAuth
- Version
- v0.0.1
- Last commit
- Oct 30, 2026
- Listed in
- Official MCP registry
Other Azure DevOps MCP servers
Sources
Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.
Show all 2Hide
- learn.microsoft.com · learn.microsoft.com
- raw.githubusercontent.com · raw.githubusercontent.com