Works with Azure DevOps work items, pull requests (create, comment, diff) and wiki pages.
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add azure-devops-server-mmruesch12 --env AZURE_DEVOPS_ORG_URL='<AZURE_DEVOPS_ORG_URL>' --env AZURE_DEVOPS_PAT='<AZURE_DEVOPS_PAT>' --env AZURE_DEVOPS_PROJECT='<AZURE_DEVOPS_PROJECT>' --env AZURE_DEVOPS_REPOSITORY='<AZURE_DEVOPS_REPOSITORY>' -- node /path/to/azure-devops-mcp/build/index.js~/.codex/config.toml
[mcp_servers.azure-devops-server-mmruesch12]
command = "node"
args = ["/path/to/azure-devops-mcp/build/index.js"]
env = { AZURE_DEVOPS_ORG_URL = "<AZURE_DEVOPS_ORG_URL>", AZURE_DEVOPS_PAT = "<AZURE_DEVOPS_PAT>", AZURE_DEVOPS_PROJECT = "<AZURE_DEVOPS_PROJECT>", AZURE_DEVOPS_REPOSITORY = "<AZURE_DEVOPS_REPOSITORY>" }
# codex mcp add azure-devops-server-mmruesch12 --env AZURE_DEVOPS_ORG_URL='<AZURE_DEVOPS_ORG_URL>' --env AZURE_DEVOPS_PAT='<AZURE_DEVOPS_PAT>' --env AZURE_DEVOPS_PROJECT='<AZURE_DEVOPS_PROJECT>' --env AZURE_DEVOPS_REPOSITORY='<AZURE_DEVOPS_REPOSITORY>' -- node /path/to/azure-devops-mcp/build/index.js~/.cursor/mcp.json
{
"mcpServers": {
"azure-devops-server-mmruesch12": {
"command": "node",
"args": [
"/path/to/azure-devops-mcp/build/index.js"
],
"env": {
"AZURE_DEVOPS_ORG_URL": "<AZURE_DEVOPS_ORG_URL>",
"AZURE_DEVOPS_PAT": "<AZURE_DEVOPS_PAT>",
"AZURE_DEVOPS_PROJECT": "<AZURE_DEVOPS_PROJECT>",
"AZURE_DEVOPS_REPOSITORY": "<AZURE_DEVOPS_REPOSITORY>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"azure-devops-server-mmruesch12": {
"type": "stdio",
"command": "node",
"args": [
"/path/to/azure-devops-mcp/build/index.js"
],
"env": {
"AZURE_DEVOPS_ORG_URL": "<AZURE_DEVOPS_ORG_URL>",
"AZURE_DEVOPS_PAT": "<AZURE_DEVOPS_PAT>",
"AZURE_DEVOPS_PROJECT": "<AZURE_DEVOPS_PROJECT>",
"AZURE_DEVOPS_REPOSITORY": "<AZURE_DEVOPS_REPOSITORY>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"azure-devops-server-mmruesch12": {
"command": "node",
"args": [
"/path/to/azure-devops-mcp/build/index.js"
],
"env": {
"AZURE_DEVOPS_ORG_URL": "<AZURE_DEVOPS_ORG_URL>",
"AZURE_DEVOPS_PAT": "<AZURE_DEVOPS_PAT>",
"AZURE_DEVOPS_PROJECT": "<AZURE_DEVOPS_PROJECT>",
"AZURE_DEVOPS_REPOSITORY": "<AZURE_DEVOPS_REPOSITORY>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"azure-devops-server-mmruesch12": {
"command": "node",
"args": [
"/path/to/azure-devops-mcp/build/index.js"
],
"env": {
"AZURE_DEVOPS_ORG_URL": "<AZURE_DEVOPS_ORG_URL>",
"AZURE_DEVOPS_PAT": "<AZURE_DEVOPS_PAT>",
"AZURE_DEVOPS_PROJECT": "<AZURE_DEVOPS_PROJECT>",
"AZURE_DEVOPS_REPOSITORY": "<AZURE_DEVOPS_REPOSITORY>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"azure-devops-server-mmruesch12": {
"command": "node",
"args": [
"/path/to/azure-devops-mcp/build/index.js"
],
"env": {
"AZURE_DEVOPS_ORG_URL": "<AZURE_DEVOPS_ORG_URL>",
"AZURE_DEVOPS_PAT": "<AZURE_DEVOPS_PAT>",
"AZURE_DEVOPS_PROJECT": "<AZURE_DEVOPS_PROJECT>",
"AZURE_DEVOPS_REPOSITORY": "<AZURE_DEVOPS_REPOSITORY>"
}
}
}
}Environment variables
AZURE_DEVOPS_ORG_URLAZURE_DEVOPS_PATAZURE_DEVOPS_PROJECTAZURE_DEVOPS_REPOSITORY
Replace the placeholders with your own credentials and keep them out of version control.