AzDo 1.1.2

There is a newer version of this package available.
See the version list below for details.
dotnet tool install --global AzDo --version 1.1.2
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local AzDo --version 1.1.2
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=AzDo&version=1.1.2
                    
nuke :add-package AzDo --version 1.1.2
                    

azdo — Command Reference

Version: 0.6.0 | Package: AzDo | MCP Tools: 68

All commands support --org and --project overrides (optional — auto-detected from git remote, or .azdo file if not in a git repo).


📋 CLI Commands

Context

Command Description
azdo context Detect Azure DevOps org/project/repo from the current git remote (or .azdo file)

.azdo file: If not in a git repo, azdo searches parent directories for a .azdo JSON file:

{ "org": "myorg", "project": "myproject" }
  • org is required; project is optional.
  • When inside a git repository, the .azdo file is ignored — git remote always wins.

Configuration

Command Description
azdo config list List all configured organizations
azdo config add --org X --pat <token> Register an organization
azdo config remove --org X Remove an organization
azdo config path Show the config file path

Work Items

Command Description
azdo wi query --wiql "SELECT ..." [--top 10] Run a WIQL query
azdo wi get --ids 1,2,3 [--fields System.Title,System.State] Get work items by ID
azdo wi create --type Task --title "..." [--description "..."] [--assigned-to me@eng.it] [--parent 1234] [--iteration "MyProject\\Sprint 1"] Create a work item
azdo wi update --id 1234 [--state Active] [--title "..."] [--assigned-to me@eng.it] Update a work item
azdo wi comment --id 1234 --text "..." Add a comment to a work item
azdo wi hierarchy --id 1234 Get work item with full child tree
azdo wi link --source 1234 --target 5678 --type child Link two work items
azdo wi search --query "keyword" [--type Bug] [--top 10] Full-text search on work items

Projects

Command Description
azdo project list [--top 20] [--skip 10] List projects in the organization
azdo project get --id <name-or-id> Get project details
azdo project clone-all [--output <dir>] [--ssh] [--dry-run] [--parallel 4] Clone (or pull) all repos from all projects

Boards — Iterations, Teams, Areas

Command Description
azdo board iterations [--team X] List iterations/sprints for a project
azdo board iteration current [--team X] Get current sprint
azdo board teams List teams in the project
azdo board members --team-id X List members of a team
azdo board areas [--depth 5] List area paths (tree flattened)
azdo board backlog [--team X] Get product backlog for a team
azdo board sprint --iteration X [--team X] Get sprint backlog
azdo board iteration create --name "Sprint 42" [--start 2026-01-01] [--finish 2026-01-14] Create a sprint
azdo board area create --name "NewArea" [--parent "ParentArea"] Create an area path
azdo board team create --name "MyTeam" [--description "..."] Create a team
azdo board team set-area --team-id X --area-path "Project\\Area" Assign area to a team
azdo board team add-member --team-id X --member-id <guid> Add a member to a team
azdo board team remove-member --team-id X --member-id <guid> Remove a member from a team

Identity, Users & Groups

Command Description
azdo identity search --query "email@example.com" [--top 20] Search identities by email or display name
azdo identity list-users [--top 100] [--skip 0] List users with entitlements in the organization
azdo identity add-user --email user@example.com [--license express] Invite a user to the organization
azdo identity remove-user --id <guid> Remove a user from the organization
azdo identity list-groups List groups in the organization
azdo identity group-members --descriptor vssgp.… List members of a group
azdo identity group-create --name "MyGroup" [--description "..."] Create a new group
azdo identity group-member-add --group vssgp.… --member aad.… Add a member to a group
azdo identity group-member-remove --group vssgp.… --member aad.… Remove a member from a group

Note: Identity and group tools use the Azure DevOps Graph API (vssps.dev.azure.com). User entitlement tools use the Member Entitlement Management API (vsaex.dev.azure.com). These require vso.graph and vso.memberentitlementmanagement PAT scopes respectively.

Repositories & Git

Command Description
azdo repo list [--top 20] [--skip 10] List repositories
azdo repo create --name "MyNewRepo" Create a new repository
azdo repo branches --repo X [--search feature] [--top 20] List branches
azdo repo branch create --repo X --name feature/foo --from main Create a branch
azdo repo branch delete --repo X --name feature/foo Delete a branch
azdo repo commits --repo X [--branch main] [--author me@eng.it] [--since 2026-01-01] [--until 2026-06-01] [--top 50] [--skip 0] List commits
azdo repo diff --repo X --base main --target feature/foo Get diff between two commits/branches
azdo repo file --repo X --path src/Program.cs [--ref main] Get file content
azdo repo file push --repo X --path src/foo.cs --content "..." --branch main --message "Add foo.cs" Create/update file via direct commit
azdo repo file delete --repo X --path src/foo.cs --branch main --message "Remove foo.cs" Delete file via direct commit
azdo repo tags --repo X List tags
azdo repo tag create --repo X --name v1.0 --message "Release v1.0" --object-id <sha> Create annotated tag
azdo repo clone-all [--output <dir>] [--ssh] [--dry-run] [--parallel 4] Clone all repositories in the project

Pull Requests

Command Description
azdo pr list [--repo X] [--status active] [--creator me@eng.it] [--top 20] [--skip 0] List pull requests
azdo pr create --title "..." [--repo X] [--source feature/foo] [--target main] [--description "..."] [--draft] [--work-item 1234] [--reviewer <guid>] Create a pull request
azdo pr vote --pr 1234 [--repo X] --voter-id <guid> --vote 10 Vote on a PR
azdo pr abandon --pr 1234 [--repo X] Abandon a PR
azdo pr complete --pr 1234 [--repo X] [--delete-source] Complete a PR
azdo pr detail --pr 1234 [--repo X] Show PR details with reviewers, votes, merge status
azdo pr threads --pr 1234 [--repo X] List review threads on a PR
azdo pr comment --pr 1234 --text "..." [--repo X] [--file src/Foo.cs --line 42] Add a comment to a PR

Builds, Pipelines & Releases

Command Description
azdo build list [--top 20] [--definition 5] List recent builds
azdo build status --id 1234 Get build status and timeline
azdo build trigger --definition 5 [--branch refs/heads/main] Trigger a pipeline run
azdo build logs --id 1234 Get task-level logs for a build
azdo pipeline list [--top 20] List YAML and classic pipelines
azdo release definitions [--search X] [--top 20] List release definitions
azdo release list [--definition 5] [--status active] [--top 20] List releases
azdo release trigger --definition 5 [--description "..."] Trigger a release

Wiki

Command Description
azdo wiki list List wikis in the project
azdo wiki page --wiki-id X --path "/Architecture/Overview" Get a wiki page
azdo wiki upsert --wiki-id X --path "/Guide" --content "# Hello" Create or update a wiki page
Command Description
azdo search code --query "IDisposable" [--repo X] [--top 20] Full-text code search
azdo search wi --query "authentication" [--type Bug] [--top 20] Full-text work item search

MCP Server

Command Description
azdo mcp serve [--transport stdio|http] [--port 9287] Start the MCP server
azdo mcp list-tools List all available MCP tools as JSON

🔌 MCP Tools (68 total)

Use these in Claude Desktop, Copilot, Cursor, or any MCP-compatible agent.

Context & Session

Tool Required Args Optional Args Description
azdo_context (none) — Detect org/project/repo from git remote
azdo_context_set (none) org, project Set default org/project overrides for the current session

Work Items

Tool Required Args Optional Args Description
azdo_wi_query wiql top, compact, org, project Run a WIQL query
azdo_wi_get ids fields, compact, org, project Get work items by ID
azdo_wi_create type, title description, assignedTo, parent, iteration, org, project Create a work item
azdo_wi_update id state, title, assignedTo, parent, iteration, org, project Update a work item
azdo_wi_comment id, text org, project Add a comment to a work item
azdo_wi_hierarchy id org, project Get work item with full child tree
azdo_wi_link sourceId, targetId, linkType org, project Link two work items (child, parent, related, duplicate)
azdo_wi_search query type, top, org, project Full-text search on work items

Projects

Tool Required Args Optional Args Description
azdo_project_list (none) top, skip, compact, org List projects in the organization
azdo_project_get id compact, org Get project details by ID or name
azdo_project_clone_all (none) org, output, ssh, dryRun, parallel Clone (or pull) all repos from all projects

Boards — Iterations

Tool Required Args Optional Args Description
azdo_iterations_list (none) team, compact, org, project List iterations/sprints
azdo_iteration_current (none) team, compact, org, project Get current sprint
azdo_iteration_create name startDate, finishDate, org, project Create a new sprint

Boards — Teams

Tool Required Args Optional Args Description
azdo_teams_list (none) compact, org, project List teams in a project
azdo_members_list teamId compact, org, project List members of a team
azdo_team_create name description, org, project Create a new team
azdo_team_area_set teamId, areaPath org, project Assign an area to a team
azdo_team_member_add teamId, memberId org, project Add a member to a team
azdo_team_member_remove teamId, memberId org, project Remove a member from a team

Identity, Users & Groups

Tool Required Args Optional Args Description
azdo_identity_search (none) query, top, compact, org Search identities by email or display name (Graph API)
azdo_group_list (none) compact, org, project List groups in the organization (Graph API)
azdo_group_members groupDescriptor compact, org List members of a group by descriptor (Graph API)
azdo_group_create name description, org, project Create a new group (Graph API)
azdo_group_member_add groupDescriptor, memberDescriptor org Add a member to a group (Graph API)
azdo_group_member_remove groupDescriptor, memberDescriptor org Remove a member from a group (Graph API)
azdo_user_list (none) top, skip, compact, org List users with entitlements (Member Entitlement Management API)
azdo_user_add email license, org Invite a user to the organization (MEM API)
azdo_user_remove userId org Remove a user from the organization (MEM API)

Graph descriptors: Group and user descriptors are opaque identifiers like vssgp.… (group) or aad.… (AAD user). Use azdo_identity_search to find user descriptors and azdo_group_list to find group descriptors. azdo_group_members automatically resolves member names via batch subject lookup.

Boards — Areas & Backlogs

Tool Required Args Optional Args Description
azdo_areas_list (none) depth, compact, org, project List area paths (tree flattened)
azdo_area_create name parentPath, org, project Create a new area path
azdo_backlog_product (none) team, compact, org, project Get product backlog
azdo_backlog_sprint iteration team, org, project Get sprint backlog

Repositories — Read

Tool Required Args Optional Args Description
azdo_repo_list (none) top, skip, compact, org, project List repositories
azdo_git_branches repo search, top, compact, org, project List branches
azdo_git_commits repo branch, author, from, to, top, skip, compact, org, project List commits
azdo_git_diff repo, base, target org, project Get diff between two commits/branches
azdo_git_file repo, path ref, org, project Get file content
azdo_repo_tags_list repo compact, org, project List tags

Repositories — Write

Tool Required Args Optional Args Description
azdo_repo_create name org, project Create a new repository
azdo_repo_branch_create repo, branchName, sourceRef org, project Create a branch from a ref
azdo_repo_branch_delete repo, branchName org, project Delete a branch
azdo_repo_tag_create repo, tagName, message, objectId org, project Create an annotated tag
azdo_repo_file_push repo, path, content, branch, commitMessage org, project Create/update a file via direct commit
azdo_repo_file_delete repo, path, branch, commitMessage org, project Delete a file via direct commit
azdo_repo_clone_all (none) org, project, output, ssh, dryRun, parallel Clone all repositories in a project

Pull Requests

Tool Required Args Optional Args Description
azdo_pr_list (none) repo, status, creator, top, skip, compact, org, project List pull requests
azdo_pr_create title repo, source, target, description, draft, workItems, reviewers, org, project Create a pull request
azdo_pr_vote prId, repo, voterId, vote org, project Vote on a PR
azdo_pr_update prId, repo status, title, autoComplete, deleteSourceBranch, org, project Update PR status or auto-complete
azdo_pr_detail prId, repo org, project Get PR detail with reviewers, votes, merge status
azdo_pr_threads prId, repo compact, org, project List review threads on a PR
azdo_pr_comment prId, repo, content threadId, file, line, org, project Add a comment to a PR thread
azdo_pr_resolve prId, repo, threadId org, project Resolve a review thread

Builds & Pipelines

Tool Required Args Optional Args Description
azdo_build_list (none) top, definition, compact, org, project List recent builds
azdo_build_status id compact, org, project Get build status and timeline
azdo_build_trigger definition branch, org, project Trigger a pipeline run
azdo_pipelines_list (none) top, compact, org, project List YAML and classic pipelines
azdo_build_logs buildId compact, org, project Get task-level logs for a build

Release Management

Tool Required Args Optional Args Description
azdo_release_definitions (none) search, top, compact, org, project List release definitions
azdo_release_list (none) definitionId, status, top, compact, org, project List releases
azdo_release_trigger definitionId description, org, project Trigger a release

Wiki

Tool Required Args Optional Args Description
azdo_wiki_list (none) compact, org, project List wikis in a project
azdo_wiki_page_get wikiId, path compact, org, project Get a wiki page by path
azdo_wiki_page_upsert wikiId, path, content org, project Create or update a wiki page

Search

Tool Required Args Optional Args Description
azdo_code_search query repo, top, org, project Full-text code search
azdo_wi_search query type, top, org, project Full-text work item search

🗳️ Vote Values Reference

Vote Meaning
10 Approved
5 Approved with suggestions
0 Reset vote
-5 Waiting for author
-10 Rejected
Link Type Description
child Hierarchy-Forward (parent → child)
parent Hierarchy-Reverse (child → parent)
related Related work item
duplicate Duplicate-Forward

📝 Notes

  • compact: Set to false to get the full raw Azure DevOps API response. Default is true (simplified output optimized for LLM consumption).
  • org / project: Auto-detected from the current git remote, or from a .azdo file if not in a git repo. Pass --org / --project explicitly to override. Use azdo_context_set to set session-level overrides in MCP mode.
  • .azdo file: Place a .azdo JSON file ({"org":"myorg","project":"myproject"}) in any parent directory of a non-git folder to auto-detect org/project. Ignored when inside a git repository.
  • voterId: Your Azure DevOps identity GUID (required for voting). Find it in your ADO profile URL: https://dev.azure.com/{org}/_usersSettings/identities.
  • Reviewer IDs in azdo_pr_create: Must be Azure DevOps identity GUIDs, not email addresses. Use azdo_identity_search to resolve emails to GUIDs.
  • Code Search (azdo_code_search): Requires the Azure DevOps search indexing to be enabled in the organization. Returns a clear error if disabled.
  • Wiki tools: Require a project-level wiki. wikiId can be either the wiki UUID or the wiki name.
  • azdo_wi_hierarchy: Returns the work item with its direct children. Use recursively to walk the full tree.
  • Identity & Group tools: Require PAT with vso.graph scope (for Graph API) and vso.memberentitlementmanagement scope (for user entitlements). Without these scopes, 401/403 errors are returned.
  • azdo_user_add license types: express (default, free Basic), stakeholder (free), basic (paid Basic), advanced (paid Basic+TestPlans), basicAndTestPlans (paid).
Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
1.3.2 104 9/29/2026
1.3.1 125 9/9/2026
1.3.0 115 9/8/2026
1.2.1 135 8/5/2026
1.2.0 120 8/5/2026
1.1.2 128 8/5/2026
1.1.1 128 7/27/2026
1.1.0 123 7/27/2026
1.0.6 131 7/22/2026
1.0.5 120 7/22/2026
1.0.4 121 7/21/2026
1.0.3 114 7/21/2026
1.0.2 136 6/24/2026
1.0.1 137 6/22/2026
1.0.0 131 6/22/2026