Add it to Claude Code
claude mcp add -e "AZURE_DEVOPS_ORG=${AZURE_DEVOPS_ORG}" -e "AZURE_DEVOPS_PAT=${AZURE_DEVOPS_PAT}" adtk -- adtk mcpAZURE_DEVOPS_ORGAZURE_DEVOPS_PAT+ 1 optionalMake your agent remember this setup
adtk's config, env vars, and the gotchas you hit — recalled in every future Claude Code, Cursor, and Codex session.
npx conare@latestFree · one command · indexes the sessions already on disk. Set up in the browser instead →
What it does
- 14 consolidated MCP tools with 91 actions covering Azure DevOps domains
- Built-in support for boards, iterations, test plans, and security alerts
- Git branch detection to auto-detect work item IDs from branch names
- Work item metrics including cycle time, lead time, and time-in-status
- Token-optimized responses for AI agents
Tools 1
azure-devops-toolsA collection of 14 consolidated tools covering Azure DevOps domains including projects, work items, repositories, pull requests, pipelines, boards, and test plans.Environment Variables
AZURE_DEVOPS_ORGrequiredThe Azure DevOps organization nameAZURE_DEVOPS_PATrequiredPersonal Access Token for authenticationADTK_ENABLE_WRITESGate for enabling mutation operationsTry it
Original README from zach-snell/adtk
adtk — Azure DevOps Toolkit
A dual-mode Go CLI & MCP server for Azure DevOps. Single binary, PAT-first auth, 14 MCP tools with 91 actions, 4 MCP prompts.
The most comprehensive Azure DevOps MCP server. A single Go binary — CLI for humans, MCP for AI agents.
Comparison: adtk vs Microsoft azure-devops-mcp
| Feature | adtk | microsoft/azure-devops-mcp |
|---|---|---|
| Language | Go (single static binary) | TypeScript (Node.js) |
| MCP Tools / Actions | 14 tools / 91 actions | ~75 individual tools |
| MCP Prompts | 4 built-in prompts | None |
| CLI mode | Full CLI with 15 command groups | No |
| Auth | PAT (self-service, no admin) | Azure AD (requires admin consent) |
| Startup | ~50ms | ~2s |
| Response flattening | System.Title → title |
Raw API responses |
| Boards & Iterations | Full support | No |
| Test Plans | Full support | No |
| Advanced Security | Alert listing & details | No |
| Metrics | Cycle time, lead time, time-in-status | No |
| Git branch detection | Auto-detect work items from branch | No |
| Branch policies & tags | List policies, list/create tags | No |
| Variable groups & environments | List/get variable groups, environments | No |
| Saved queries | Get and run saved queries | No |
| Attachments | Upload, download, list | No |
| Write protection | ADTK_ENABLE_WRITES gate |
None |
| Rate limiting | Built-in token bucket | None |
| Binary size | ~15 MB | npm install (~200+ MB) |
Features
- Dual-mode — Full CLI with table output + MCP server for AI agents
- 14 consolidated MCP tools with 91 actions covering every Azure DevOps domain
- 4 MCP prompts — sprint_summary, pr_review_digest, pipeline_health, release_readiness
- Git branch detection — Auto-detect work item IDs from branch names (e.g.,
feature/12345-description) - Work item metrics — Cycle time, lead time, time-in-status computed from revision history
- PAT-first auth — Self-service Personal Access Tokens, no Azure AD admin approval
- Single binary — No Node.js, Python, or Docker required
- Response flattening — Strips
_linksand convertsSystem.*fields to readable names - Write protection — All mutations gated behind
ADTK_ENABLE_WRITES=true - Rate limiting — Built-in token bucket respecting Azure DevOps TSTU limits
- Token-optimized — AI agents get clean, concise payloads (40-60% fewer tokens)
Installation
go install
go install github.com/zach-snell/adtk/cmd/adtk@latest
Build from source
git clone https://github.com/zach-snell/adtk.git
cd adtk
./install.sh
Pre-built binaries
Download from the Releases page.
Quick Start
Authenticate
adtk auth
# Or use environment variables:
export AZURE_DEVOPS_ORG=myorg
export AZURE_DEVOPS_PAT=your-pat-here
CLI Usage
# Projects
adtk projects list
adtk projects get MyProject
adtk projects teams MyProject
# Work items
adtk work-items get 42
adtk work-items list -p MyProject
# Repositories
adtk repos list -p MyProject
adtk repos branches myrepo -p MyProject
adtk repos tree myrepo /src -p MyProject
adtk repos policies myrepo -p MyProject
adtk repos tags myrepo -p MyProject
# Pull requests
adtk pull-requests list myrepo -p MyProject
adtk pull-requests get myrepo 1
# Pipelines
adtk pipelines list -p MyProject
adtk pipelines runs 42 -p MyProject
adtk pipelines var-groups -p MyProject
adtk pipelines var-group 1 -p MyProject
adtk pipelines environments -p MyProject
# Iterations & boards
adtk iterations current -p MyProject
adtk boards list -p MyProject
adtk boards columns Stories -p MyProject
# Wiki
adtk wiki list -p MyProject
adtk wiki get ProjectWiki /Home -p MyProject
# Work item metrics
adtk work-items metrics 42 -p MyProject
# Work item auto-detect from git branch
adtk work-items get # auto-detects work item ID from branch name
# Search
adtk search code "func main" -p MyProject
adtk search work-items "login bug" -p MyProject
adtk search wiql "SELECT [System.Id] FROM WorkItems WHERE [System.State] = 'Active'"
adtk search query "My Saved Queries/Active Bugs" -p MyProject
# Test plans
adtk test-plans list -p MyProject
# Security alerts
adtk security alerts myrepo -p MyProject
# Attachments
adtk attachments list 42 -p MyProject
# All commands support --json for raw output
adtk projects list --json