build_download_artifact
Download a Pipeline artifact from a build using signed URLs. Only supports Pipeline artifacts (created with PublishPipelineArtifact task). Saves as a ZIP file.
Find the build that failed, see which agent ran it, and pull the logs and artifacts down to your machine — without opening the Azure DevOps web UI.
LABSCO SUMMARY
The combination that earns its place is timeline plus log download: the timeline names the stages, jobs and tasks and the agent each one ran on, and you can then pull that job's log by name rather than hunting for an ID. Downloads are tracked, so the temporary directory can be listed and cleaned rather than quietly filling up. Start with the health check — it reports which permissions your token actually carries, which is where most setups go wrong.
An Azure DevOps server aimed at builds and the agents behind them: pipelines and builds, agent pools and queues, and the logs and artifacts a run produced.
An Azure DevOps organization and a personal access token. Set ADO_ORGANIZATION to the organization URL, ADO_PROJECT to the project name, and ADO_PAT to the token. Scope decides what works: Agent Pools (read) and Build (read) cover the project tools, Build (read & execute) is what allows queueing a build, and the org_ tools need Agent Pools (read) at organization level because agents live there rather than in a project. Run it with npx -y @rxreyn3/azure-devops-mcp@latest over stdio, from the npm package @rxreyn3/azure-devops-mcp, currently 1.9.0. Downloads land in a managed temporary directory unless you pass an output path, and artifact download covers Pipeline artifacts — the ones published with the PublishPipelineArtifact task.
One command plus a key — claude mcp add azure-devops -e ADO_ORGANIZATION="https://dev.azure.com/your-organization" -e ADO_PROJECT="your-project-name" -e ADO_PAT="your-personal-access-token" -- npx -y @rxreyn3/azure-devops-mcp@latest, then supply credentials
USE CASES
Find the build, read its timeline to see which job broke, then download that job's log.
List what the build published, then download the Pipeline artifact as a ZIP.
Find the definition by name, then queue the build with the source branch and any parameters.
Search for it across the organization's pools and read its status and version.
List the agent queues, then open one for its pool details and agent count.
List what has been pulled down, then remove the files older than the cutoff you set.
Counted once with only startup setup. Other versions, modes or optional credentials may expose a different list.
build_download_artifactDownload a Pipeline artifact from a build using signed URLs. Only supports Pipeline artifacts (created with PublishPipelineArtifact task). Saves as a ZIP file.
build_download_job_logsDownload logs for a specific job from a build by job name. Saves the log content to a file on the local filesystem.
build_download_logs_by_nameDownload logs for a stage, job, or task by searching for its name in the build timeline. Handles stages by downloading all child job logs into an organized directory structure.
build_get_timelineGet the timeline for a build showing all jobs, tasks, and which agents executed them. Requires build ID and optionally timeline ID.
build_listList builds with optional filtering by pipeline name, status, result, branch, or date range. Supports pagination for large result sets.
build_list_artifactsList all artifacts available for a specific build. Shows artifact names, types, and metadata.
build_list_definitionsList build pipeline definitions with optional name filtering. Useful for finding pipeline IDs.
build_queueQueue (launch) a new build for a pipeline definition. Returns the queued build details. Requires PAT with "Build (read & execute)" and "Agent Pools (read)" scopes.
cleanup_downloadsRemove old downloaded files from the temporary directory.
get_download_locationGet information about the temporary directory where files are downloaded.
list_downloadsList all files downloaded to the temporary directory by this MCP server, including logs and artifacts.
org_find_agentFind which queue/pool an agent belongs to. Searches across all pools in the organization. Requires PAT with organization-level Agent Pools (read) permission.
org_list_agentsList agents from project pools with optional filtering. Shows agent status, version, and basic info. Requires PAT with organization-level Agent Pools (read) permission to access agent details.
project_get_queueGet detailed information about a specific queue including pool details and agent count. Requires project-scoped PAT with Agent Pools (read) permission.
project_health_checkCheck connection to Azure DevOps and verify permissions. Requires project-scoped PAT with Agent Pools (read) permission.
project_list_queuesList all agent queues available in the project. Returns queue IDs, names, and pool information. Requires project-scoped PAT with Agent Pools (read) permission.
BEFORE YOU INSTALL
16 tools when we connected. A project-scoped PAT works only with project_* and build_* tools, so the org_* agent tools fail. build_queue needs both Build (read & execute) and Agent Pools (read) permissions.
CONTEXT COST
Rated by the size of the 16 tool definitions that ride along on every turn, not by how many there are
INSTALLATION
claude mcp add azure-devops \
-e ADO_ORGANIZATION="https://dev.azure.com/<YOUR_ORGANIZATION>" \
-e ADO_PROJECT="<YOUR_ADO_PROJECT>" \
-e ADO_PAT="<YOUR_ADO_PAT>" \
-- npx -y @rxreyn3/azure-devops-mcp@latest{
"mcpServers": {
"azure-devops": {
"command": "npx",
"args": [
"-y",
"@rxreyn3/azure-devops-mcp@latest"
],
"env": {
"ADO_ORGANIZATION": "https://dev.azure.com/<YOUR_ORGANIZATION>",
"ADO_PROJECT": "<YOUR_ADO_PROJECT>",
"ADO_PAT": "<YOUR_ADO_PAT>"
}
}
}
}