Skip to main content
Glama
iimsaurav

Azure DevOps MCP Server

by iimsaurav

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
AZURE_CLIENT_IDNoApplication (client) ID from your Azure AD app registration
AZURE_TENANT_IDNoAzure AD tenant ID
AZURE_DEVOPS_PATNoYour Personal Access Token
AZURE_CLIENT_SECRETNoClient secret for the app
AZURE_DEVOPS_ORG_URLNoYour Azure DevOps org URL (e.g., https://dev.azure.com/your-organization)
AZURE_DEVOPS_PROJECTNoDefault project (can be overridden per tool call)
AZURE_USE_MANAGED_IDENTITYNoSet to 'true' to enable managed identity

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_pipelinesA

List all pipelines in an Azure DevOps project.

Args: project: Azure DevOps project name. Uses default if not specified.

get_pipeline_runsA

Get recent runs for a specific pipeline.

Args: project: Azure DevOps project name. Uses default if not specified. pipeline_id: The ID of the pipeline. top: Maximum number of runs to return (default: 10).

get_pipeline_run_logsC

Get logs for a specific pipeline run.

Args: project: Azure DevOps project name. Uses default if not specified. pipeline_id: The ID of the pipeline. run_id: The ID of the pipeline run.

trigger_pipelineA

Trigger a new pipeline run.

Args: project: Azure DevOps project name. Uses default if not specified. pipeline_id: The ID of the pipeline to trigger. parameters: Optional template parameters to pass to the pipeline as key-value pairs.

list_build_artifactsC

List artifacts produced by a build.

Args: project: Azure DevOps project name. Uses default if not specified. build_id: The build ID.

get_artifact_download_urlB

Get the download URL for a specific build artifact.

Args: project: Azure DevOps project name. Uses default if not specified. build_id: The build ID. artifact_name: The name of the artifact.

list_release_definitionsA

List all classic release definitions (release pipelines) in a project.

Args: project: Azure DevOps project name. Uses default if not specified. top: Maximum number of definitions to return (default: 50).

list_releasesA

List releases, optionally filtered by a release definition.

Args: project: Azure DevOps project name. Uses default if not specified. definition_id: Optional release definition ID to filter by. 0 means all. top: Maximum number of releases to return (default: 25).

get_releaseA

Get detailed information about a specific release, including environment/stage status.

Args: project: Azure DevOps project name. Uses default if not specified. release_id: The ID of the release.

create_releaseA

Create (trigger) a new release from a classic release definition.

Args: project: Azure DevOps project name. Uses default if not specified. definition_id: The release definition ID to create a release from. description: Optional description for the release. artifacts: Optional list of artifact version overrides. Each dict should have: - alias (str): artifact source alias - version_id (str): specific version/build ID - version_name (str): display name for the version

list_release_approvalsA

List release approvals, optionally filtered by status.

Args: project: Azure DevOps project name. Uses default if not specified. status: Filter by status: "pending", "approved", "rejected", "reassigned", "canceled", "skipped", "undefined". Default is "pending". top: Maximum number of approvals to return (default: 25). assigned_to: Optional filter by approver display name or unique name.

update_release_approvalB

Approve or reject a release approval.

Args: project: Azure DevOps project name. Uses default if not specified. approval_id: The approval ID. status: "approved" or "rejected". comments: Optional comments for the approval decision.

list_boardsA

List all boards for a project/team.

Args: project: Azure DevOps project name. Uses default if not specified. team: Team name. If not specified, uses the project's default team.

get_board_work_itemsC

Get work items on a specific board along with board columns.

Args: project: Azure DevOps project name. Uses default if not specified. board: Name of the board (e.g., "Stories", "Bugs"). team: Team name. If not specified, uses the project's default team.

get_work_itemB

Get detailed information about a specific work item.

Args: project: Azure DevOps project name. Uses default if not specified. work_item_id: The ID of the work item.

create_work_itemA

Create a new work item.

Args: project: Azure DevOps project name. Uses default if not specified. work_item_type: Type of work item (e.g., "Bug", "User Story", "Task", "Epic", "Feature"). title: Title of the work item. description: HTML description of the work item. assigned_to: Display name or email of the person to assign to. area_path: Area path (e.g., "MyProject\Team A"). iteration_path: Iteration path (e.g., "MyProject\Sprint 1"). priority: Priority (1=Critical, 2=High, 3=Medium, 4=Low). tags: Semicolon-separated tags (e.g., "frontend; urgent"). additional_fields: Dict of additional field paths and values. parent_id: Optional ID of a parent work item to link to.

update_work_itemB

Update an existing work item's fields and/or add relation links.

Args: project: Azure DevOps project name. Uses default if not specified. work_item_id: The ID of the work item to update. fields: Dict mapping field names to new values. Example: {"System.Title": "New Title", "System.State": "Active", "System.AssignedTo": "user@example.com"} add_links: List of relation links to add. Each dict must have: - target_id (int): ID of the work item to link to. - link_type (str): "parent", "child", "related", "predecessor", "successor", or a fully-qualified relation type. - comment (str, optional): Comment for the link. Example: [{"target_id": 100, "link_type": "parent"}]

query_work_itemsA

Execute a WIQL (Work Item Query Language) query.

Args: project: Azure DevOps project name. Uses default if not specified. query: WIQL query string. Example: "SELECT [System.Id], [System.Title], [System.State] FROM workitems WHERE [System.WorkItemType] = 'Bug' AND [System.State] = 'Active' ORDER BY [System.CreatedDate] DESC"

get_work_item_commentsA

Get comments on a work item.

Args: project: Azure DevOps project name. Uses default if not specified. work_item_id: The ID of the work item. top: Maximum number of comments to return (default: 50).

add_work_item_commentA

Add a comment to a work item.

Args: project: Azure DevOps project name. Uses default if not specified. work_item_id: The ID of the work item. text: The comment text (supports HTML).

delete_work_itemA

Delete a work item (move to recycle bin, or permanently destroy).

Args: project: Azure DevOps project name. Uses default if not specified. work_item_id: The ID of the work item to delete. destroy: If True, permanently delete. If False (default), move to recycle bin.

list_saved_queriesA

List saved work item queries (folders and queries).

Args: project: Azure DevOps project name. Uses default if not specified. depth: How deep to recurse into query folders (default: 2).

run_saved_queryB

Execute a saved query by its ID and return work item details.

Args: project: Azure DevOps project name. Uses default if not specified. query_id: The saved query GUID.

list_repositoriesA

List all Git repositories in a project.

Args: project: Azure DevOps project name. Uses default if not specified.

get_repositoryA

Get detailed information about a specific Git repository.

Args: project: Azure DevOps project name. Uses default if not specified. repository_id: The repository ID or name.

list_branchesB

List branches in a Git repository.

Args: project: Azure DevOps project name. Uses default if not specified. repository_id: The repository ID or name. filter_prefix: Optional prefix to filter branch names (e.g., "feature/").

get_commitsA

Get recent commits for a Git repository.

Args: project: Azure DevOps project name. Uses default if not specified. repository_id: The repository ID or name. branch: Optional branch name to filter commits. top: Maximum number of commits to return (default: 20). author: Optional author name to filter commits.

get_file_contentA

Get the content of a file from a Git repository.

Args: project: Azure DevOps project name. Uses default if not specified. repository_id: The repository ID or name. path: File path in the repository (e.g., "/src/main.py"). branch: Optional branch name (defaults to the repository's default branch).

compare_branchesB

Compare two branches and show the diff summary.

Args: project: Azure DevOps project name. Uses default if not specified. repository_id: The repository ID or name. base_branch: The base branch name. target_branch: The target branch name.

list_pull_requestsA

List pull requests in a Git repository.

Args: project: Azure DevOps project name. Uses default if not specified. repository_id: The repository ID or name. status: Filter by status: "active", "completed", "abandoned", "all" (default: "active"). top: Maximum number of pull requests to return (default: 25). creator: Optional filter by creator ID. reviewer: Optional filter by reviewer ID.

get_pull_requestB

Get detailed information about a specific pull request.

Args: project: Azure DevOps project name. Uses default if not specified. repository_id: The repository ID or name. pull_request_id: The pull request ID.

create_pull_requestA

Create a new pull request.

Args: project: Azure DevOps project name. Uses default if not specified. repository_id: The repository ID or name. source_branch: Source branch name (e.g., "feature/my-feature"). target_branch: Target branch name (e.g., "main"). title: Title of the pull request. description: Optional description/body of the pull request. reviewers: Optional list of reviewer IDs. is_draft: Whether to create as a draft PR (default: False).

update_pull_requestB

Update a pull request (change status, title, description, set auto-complete).

Args: project: Azure DevOps project name. Uses default if not specified. repository_id: The repository ID or name. pull_request_id: The pull request ID. status: "active", "abandoned", or "completed" (to merge). title: New title for the pull request. description: New description for the pull request. auto_complete_set_by: User ID to set auto-complete by. merge_strategy: "noFastForward", "squash", "rebase", "rebaseMerge".

get_pull_request_threadsB

Get comment threads on a pull request.

Args: project: Azure DevOps project name. Uses default if not specified. repository_id: The repository ID or name. pull_request_id: The pull request ID.

create_pull_request_commentA

Add a comment thread to a pull request.

Args: project: Azure DevOps project name. Uses default if not specified. repository_id: The repository ID or name. pull_request_id: The pull request ID. content: The comment text (supports markdown). file_path: Optional file path for inline comments. line_number: Optional line number for inline comments (requires file_path). status: Thread status: "active", "fixed", "wontFix", "closed", "byDesign", "pending".

list_test_runsB

List test runs in a project.

Args: project: Azure DevOps project name. Uses default if not specified. top: Maximum number of runs to return (default: 25). state: Optional filter by state (e.g., "Completed", "InProgress", "Aborted").

get_test_run_resultsA

Get test results for a specific test run.

Args: project: Azure DevOps project name. Uses default if not specified. run_id: The test run ID. top: Maximum number of results to return (default: 200). outcome: Optional filter by outcome (e.g., "Passed", "Failed", "NotExecuted").

get_code_coverageB

Get code coverage summary for a build.

Args: project: Azure DevOps project name. Uses default if not specified. build_id: The build ID to get coverage for.

list_wikisA

List all wikis in a project.

Args: project: Azure DevOps project name. Uses default if not specified.

get_wiki_pageA

Get a wiki page by path.

Args: project: Azure DevOps project name. Uses default if not specified. wiki_id: The wiki identifier (name or ID). path: Page path (e.g., "/Home", "/Release Notes/v2"). Defaults to root. include_content: Whether to include the page markdown content (default: True).

create_or_update_wiki_pageA

Create or update a wiki page.

Args: project: Azure DevOps project name. Uses default if not specified. wiki_id: The wiki identifier (name or ID). path: Page path (e.g., "/Release Notes/v3"). content: Markdown content for the page. comment: Optional commit comment. if_match: ETag for optimistic concurrency (required for updates, empty for creates).

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/iimsaurav/azure-devops-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server