Azure DevOps MCP Server

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Utilizes environment variables for configuration of organization URL, Personal Access Token, and default project settings.

  • Enables interaction with Git repositories in Azure DevOps, including accessing repository details and branch information.

  • Runs on Node.js to provide a server implementation for communicating with Azure DevOps resources via the Model Context Protocol.

Azure DevOps MCP Server

A Model Context Protocol (MCP) server implementation for Azure DevOps, allowing AI assistants to interact with Azure DevOps APIs through a standardized protocol.

Server Structure

The server is structured around the Model Context Protocol (MCP) for communicating with AI assistants. It provides tools for interacting with Azure DevOps resources including:

  • Projects
  • Work Items
  • Repositories
  • Pull Requests
  • Branches
  • Pipelines

Core Components

  • AzureDevOpsServer: Main server class that initializes the MCP server and registers tools
  • Tool Handlers: Modular functions for each Azure DevOps operation
  • Configuration: Environment-based configuration for organization URL, PAT, etc.

Getting Started

Prerequisites

  • Node.js (v16+)
  • npm or yarn
  • Azure DevOps account with a Personal Access Token

Installation

  1. Clone the repository:
    git clone https://github.com/your-username/azure-devops-mcp.git cd azure-devops-mcp
  2. Install dependencies:
    npm install
  3. Set up your environment:Option A: Using the automated setup script (recommended):
    chmod +x setup_env.sh ./setup_env.sh
    This script will:
    • Check for and install the Azure CLI DevOps extension if needed
    • Let you select from your available Azure DevOps organizations
    • Optionally set a default project
    • Create a Personal Access Token with the required permissions
    • Generate your .env file with the correct settings

    Option B: Manual setup:

    cp .env.example .env

    Then edit the .env file with your Azure DevOps credentials:

    AZURE_DEVOPS_ORG_URL=https://dev.azure.com/your-organization AZURE_DEVOPS_PAT=your-personal-access-token AZURE_DEVOPS_DEFAULT_PROJECT=your-default-project

Running the Server

Build the TypeScript files:

npm run build

Start the server:

npm start

For development with hot reloading:

npm run dev

Available Tools

Project Tools

  • list_projects: List all accessible projects
  • get_project: Get details of a specific project

Work Item Tools

  • get_work_item: Retrieve a work item by ID
  • create_work_item: Create a new work item

Repository Tools

  • list_repositories: List all repositories in a project
  • get_repository: Get repository details

Testing

Run the unit tests:

npm test

Run integration tests (requires valid Azure DevOps credentials):

npm run test:integration

Development

This project follows Test-Driven Development practices. Each new feature should:

  1. Begin with a failing test
  2. Implement the minimal code to make the test pass
  3. Refactor while keeping tests green

License

MIT

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

-
security - not tested
F
license - not found
-
quality - not tested

A Model Context Protocol server that enables AI assistants to interact with Azure DevOps resources including projects, work items, repositories, pull requests, branches, and pipelines through a standardized protocol.

  1. Server Structure
    1. Core Components
    2. Getting Started
      1. Prerequisites
        1. Installation
          1. Running the Server
          2. Available Tools
            1. Project Tools
              1. Work Item Tools
                1. Repository Tools
                2. Testing
                  1. Development
                    1. License
                      1. Contributing