home / mcp / azure devops mcp server

Azure DevOps MCP Server

An MCP server for Azure DevOps

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "tiberriver256-mcp-server-azure-devops": {
      "command": "npx",
      "args": [
        "-y",
        "@tiberriver256/mcp-server-azure-devops"
      ],
      "env": {
        "AZURE_DEVOPS_PAT": "GHp...REDACTED",
        "AZURE_DEVOPS_ORG_URL": "https://dev.azure.com/your-organization",
        "AZURE_DEVOPS_AUTH_METHOD": "azure-identity",
        "AZURE_DEVOPS_DEFAULT_PROJECT": "your-project-name"
      }
    }
  }
}

You can run an MCP server that acts as a bridge between AI assistants and Azure DevOps, enabling secure access to projects, work items, repositories, and pipelines through a standardized interface so you can perform common DevOps tasks using natural language.

How to use

To use the Azure DevOps MCP Server with an MCP client, start the server as an independent process and connect your client to it using the provided command. You can run the server with an MCP client that supports stdio-based servers, which starts the server as a local process and communicates over standard I/O.

How to install

Prerequisites You need Node.js version 16 or newer and a working npm or yarn installation. You also need access to an Azure DevOps organization and credentials (PAT, Azure Identity, or Azure CLI) to authorize requests.

Install and start the server using the published package directly without cloning the repository.

npx -y @tiberriver256/mcp-server-azure-devops

Additional setup and configuration

You configure authentication and target organization details by passing environment variables when launching the MCP server. The examples below show two common authentication methods. Replace the placeholders with your actual values.

{
  "mcpServers": {
    "azureDevOps": {
      "command": "npx",
      "args": ["-y", "@tiberriver256/mcp-server-azure-devops"],
      "env": {
        "AZURE_DEVOPS_ORG_URL": "https://dev.azure.com/your-organization",
        "AZURE_DEVOPS_AUTH_METHOD": "azure-identity",
        "AZURE_DEVOPS_DEFAULT_PROJECT": "your-project-name"
      }
    }
  }
}

Running locally from source

If you are working directly from a source checkout, you can install dependencies, build, and start the server with these steps.

npm ci
cp .env.example .env   # then edit values
npm run build
npm start              # runs: node dist/index.js

Usage with MCP clients

To connect an MCP client, use the command that launches the MCP server. The typical approach shown here uses npx to run the published package as a local, disposable process.

Available tools

get_me

Retrieve details of the authenticated user (id, displayName, email) for Azure DevOps Services only.

list_organizations

List all accessible organizations for Azure DevOps Services.

list_projects

List all projects in an organization.

get_project

Get details of a specific project.

get_project_details

Get comprehensive details of a project including process, work item types, and teams.

list_repositories

List all repositories in a project.

get_repository

Get details of a specific repository.

get_repository_details

Get detailed information about a repository including statistics and refs.

get_file_content

Get content of a file or directory from a repository.

get_repository_tree

List a repository's file tree from any path and depth.

create_branch

Create a new branch from an existing one.

create_commit

Commit multiple file changes to a branch using diffs or search/replace.

get_work_item

Retrieve a work item by ID.

create_work_item

Create a new work item.

update_work_item

Update an existing work item.

list_work_items

List work items in a project.

manage_work_item_link

Add, remove, or update links between work items.

search_code

Search code across repositories within a project.

search_wiki

Search content across wiki pages in a project.

search_work_items

Search work items across projects.

list_pipelines

List pipelines in a project.

get_pipeline

Get details of a specific pipeline.

list_pipeline_runs

List recent runs for a pipeline with optional filters.

get_pipeline_run

Get detailed run information and artifact summaries.

download_pipeline_artifact

Download a single artifact file as text.

pipeline_timeline

Retrieve the stage and job timeline for a run.

get_pipeline_log

Retrieve raw or JSON-formatted log content.

trigger_pipeline

Trigger a pipeline run with customizable parameters.

get_wikis

List all wikis in a project.

get_wiki_page

Get content of a wiki page as plain text.

create_pull_request

Create a new pull request.

get_pull_request

Get a pull request by ID.

list_pull_requests

List pull requests in a repository.

add_pull_request_comment

Add a comment to a pull request.

get_pull_request_comments

Get comments from a pull request.

update_pull_request

Update an existing pull request including title, description, status, reviewers, and work items.

get_pull_request_changes

List changes in a pull request and policy evaluation status.

get_pull_request_checks

Summarize status checks and policy evaluations related to a pull request.