CLI potente e MCP server in C#/.NET 8 per interagire con Azure DevOps direttamente dal terminale — o tramite il tuo agente AI preferito.
$ azdo context
{ "org": "contoso", "project": "MyApp", "repo": "backend" }
$ azdo pr create --title "Add OAuth" --draft
✓ PR #1234 created — https://dev.azure.com/contoso/...
$ azdo wi create --type Task --title "Fix login" \
--parent 5678 --assigned-to me@contoso.com
✓ Work Item #9012 created
$ azdo mcp serve
🚀 MCP server ready — 58 tools available
58 tool MCP pronti per Claude Desktop, Copilot, Cursor e qualunque client compatibile. Output compatto ottimizzato per LLM.
Rilevamento automatico dell'organizzazione dal git remote. Un solo file di configurazione centrale per tutte le org.
Autenticazione via Personal Access Token o Azure Identity. Permessi 600 su Unix, secure storage nativo in arrivo.
Un solo eseguibile standalone. Zero dipendenze runtime. Pubblicazione cross-platform: Linux, macOS, Windows.
Output ridotto del 70% rispetto alle API raw. Solo i campi essenziali, formato ottimizzato per il consumo LLM.
Trasporto stdio per client desktop, HTTP Streamable per browser e VS Code web. Middleware pipeline estensibile.
dotnet tool install -g AzDo
# macOS ARM64
curl -L "..." -o azdo.tar.gz
tar xzf azdo.tar.gz && sudo cp azdo /usr/local/bin/
# Linux x64
curl -L "..." -o azdo.tar.gz
tar xzf azdo.tar.gz && sudo cp azdo /usr/local/bin/
git clone https://github.com/Lupala-coder/azdo
cd azdo/src/DevOpsCli
dotnet build -c Release
# binary: bin/Release/net8.0/azdo
# 1. Register your org
azdo config add --org contoso --pat "your-pat-token" --project MyApp
# 2. Test
azdo context
# 3. Start MCP server
azdo mcp serve
# 4. Or use the CLI directly
azdo pr list --status active
azdo wi query --wiql "SELECT [System.Id] FROM WorkItems WHERE [System.State]='Active'"
Tutti i tool accettano org e project come override. Rilevamento automatico dal git remote.
azdo_context
azdo_context_set
azdo_wi_query
azdo_wi_get
azdo_wi_create
azdo_wi_update
azdo_wi_comment
azdo_wi_hierarchy
azdo_wi_link
azdo_wi_search
azdo_project_list
azdo_project_get
azdo_project_clone_all
azdo_iterations_list
azdo_iteration_current
azdo_teams_list
azdo_members_list
azdo_areas_list
azdo_backlog_product
azdo_backlog_sprint
azdo_repo_list
azdo_repo_create
azdo_git_branches
azdo_repo_branch_create
azdo_repo_branch_delete
azdo_git_commits
azdo_git_diff
azdo_git_file
azdo_repo_file_push
azdo_repo_file_delete
azdo_repo_tags_list
azdo_repo_tag_create
azdo_repo_clone_all
azdo_pr_list
azdo_pr_create
azdo_pr_vote
azdo_pr_update
azdo_pr_detail
azdo_pr_threads
azdo_pr_comment
azdo_pr_resolve
azdo_build_list
azdo_build_status
azdo_build_trigger
azdo_pipelines_list
azdo_build_logs
azdo_release_definitions
azdo_release_list
azdo_release_trigger
azdo_wiki_list
azdo_wiki_page_get
azdo_wiki_page_upsert
azdo_code_search
azdo_wi_search
azdo_iteration_create
azdo_area_create
azdo_team_create
azdo_team_area_set
azdo_team_member_add
Aggiungi al claude_desktop_config.json:
{
"mcpServers": {
"azdo": {
"command": "/usr/local/bin/azdo",
"args": ["mcp", "serve"]
}
}
}
Configura in ~/.config/github-copilot/cli/mcp-config.json:
{
"mcpServers": {
"azdo": {
"command": "/usr/local/bin/azdo",
"args": ["mcp", "serve"]
}
}
}
Per client browser-based (VS Code web, Copilot Chat web):
azdo mcp serve --transport http --port 9287
{
"mcpServers": {
"azdo": { "url": "http://localhost:9287/mcp" }
}
}