Configure your MCP client
Generate a ready-to-paste mcp.json for the remote Azure DevOps
MCP server. Filter by toolset or individual tool, optionally restrict to read-only, and copy the result.
mcp.dev.azure.com) is
in preview and authenticates with Microsoft Entra ID.
Today only VS Code and Visual Studio are supported clients — other
clients (Cursor, Claude, Codex…) need Entra OAuth dynamic registration, which Microsoft says is coming.
Where it goes
Save the JSON as .vscode/mcp.json in your repository (VS Code), then open GitHub Copilot and
authenticate with your Microsoft Entra account when prompted. In Visual Studio 2022+, add the server URL to
your MCP settings.
Use with an agent
Register the server with an agent framework and the model calls its tools autonomously — you don't hand-call individual tools. These register the local stdio server (no auth); swap in the remote URL + an Entra token if your client supports it.
import asyncio
from claude_agent_sdk import query, ClaudeAgentOptions
options = ClaudeAgentOptions(
mcp_servers={
"ado": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@azure-devops/mcp", "<your-org>"],
}
},
)
async def main():
async for message in query(prompt="List my Azure DevOps projects", options=options):
print(message)
asyncio.run(main())import asyncio
from agents import Agent, Runner
from agents.mcp import MCPServerStdio
async def main():
async with MCPServerStdio(
name="Azure DevOps",
params={"command": "npx", "args": ["-y", "@azure-devops/mcp", "<your-org>"]},
) as server:
agent = Agent(
name="Assistant",
instructions="Use the Azure DevOps MCP tools to answer.",
mcp_servers=[server],
)
result = await Runner.run(agent, "List my Azure DevOps projects")
print(result.final_output)
asyncio.run(main())import { CopilotClient } from "@github/copilot-sdk";
const client = new CopilotClient();
await client.start();
const session = await client.createSession({
model: "gpt-5",
mcpServers: {
ado: {
type: "local",
command: "npx",
args: ["-y", "@azure-devops/mcp", "<your-org>"],
tools: ["*"],
},
},
});
await session.send({ prompt: "List my Azure DevOps projects" });Verify it works
Ask your AI assistant a question about your Azure DevOps data:
- “List the projects in my Azure DevOps organization.”
- “Show my assigned work items.”
- “What pull requests require my review?”
Troubleshooting
| Issue | Fix |
|---|---|
| Authentication fails | Verify your Microsoft Entra credentials and that you have access to the organization. |
| Server not found | Check the URL format: https://mcp.dev.azure.com/{organization}. |
| Connection refused | Allow outbound HTTPS to mcp.dev.azure.com; on a corporate proxy, ask to allow-list it. |
| No data returned | Confirm you have permissions for the project or resources being queried. |
| Expected tools missing | Re-check your X-MCP-Toolsets selection; X-MCP-Tools and X-MCP-Toolsets can’t be combined. |
Config format & toolset keys per the Microsoft remote MCP server docs. The remote preview consolidates some tools into grouped dispatchers, so its exact tool names can differ from this reference.