Skip to main content

ADO Workflows MCP Server

CI coverage PyPI License: MIT

An MCP server exposing ado-workflows as tool calls for AI agents. Enables Copilot and other MCP clients to discover Azure DevOps repositories, manage pull requests, and interact with PR comments and reviews.

Quick Install

Install in VS Code Install in VS Code Insiders

Click a badge above to install with one click, or follow manual installation below.

Features

  • Repository Discovery: Scan directories for git repos with Azure DevOps remotes
  • PR Lifecycle: Create pull requests, establish PR context from URLs or IDs
  • Review Management: Check reviewer votes, detect stale approvals, find PRs needing attention
  • Comment Workflows: Analyze, post, reply to, and batch-resolve PR comment threads
  • Session Caching: Cache repository context to avoid redundant git CLI lookups
  • Error Handling: Actionable errors with suggestions via actionable-errors

MCP Tools

Repository Discovery

Tool Description
repository_discovery Scan a directory for git repos with Azure DevOps remotes, select the best match
set_repository_context Cache repository context for the session (avoids redundant git CLI lookups)
get_repository_context_status Inspect current cached context state for debugging
clear_repository_context Reset cached context, forcing fresh discovery

Pull Requests

Tool Description
establish_pr_context Parse a PR URL or resolve a numeric PR ID into reusable context
create_pull_request Create a new PR from branch names with optional title, description, and draft mode

PR Review

Tool Description
get_pr_review_status Fetch reviewer votes, commit history, and detect stale approvals
analyze_pending_reviews Discover PRs needing review attention across a repository

PR Comments

Tool Description
analyze_pr_comments Categorize comment threads by status with author statistics
post_pr_comment Post a new comment thread to a PR
reply_to_pr_comment Reply to an existing comment thread
resolve_pr_comments Batch-resolve comment threads (partial-success semantics)

Installation

Quick Install (Recommended)

Click one of the badges at the top to automatically install in VS Code!

Manual Installation

cd ado-workflows-mcp
uv sync --all-extras

VS Code / Copilot Configuration

Add to your VS Code settings or .vscode/mcp.json:

{
  "mcp.servers": {
    "ado-workflows": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/grimlor/ado-workflows-mcp", "ado-workflows-mcp"],
      "description": "Azure DevOps workflow automation tools"
    }
  }
}

The server communicates over stdio using the Model Context Protocol.

Authentication

Uses Azure DefaultAzureCredential via the ado-workflows library. Authenticate with any method that DefaultAzureCredential supports:

az login                           # Azure CLI (local dev)
az login --use-device-code         # Headless / SSH

Managed identity, environment variables, and other credential providers work automatically in hosted environments.

Error Handling

All errors are returned as structured ActionableError objects with:

  • error / suggestion — human-readable context
  • ai_guidance — machine-readable recovery instructions (action_required, checks, steps, command, discovery_tool)

Errors are returned as data, never raised — the MCP transport stays clean.

Typical Workflow

1. repository_discovery        → find the ADO repo
2. set_repository_context      → cache it for the session
3. establish_pr_context        → resolve a PR URL or ID
4. get_pr_review_status        → check approval state
5. analyze_pr_comments         → see active threads
6. post_pr_comment / reply     → leave feedback
7. resolve_pr_comments         → mark threads as fixed

Development

uv run task check                # lint + type + test (all-in-one)
uv run task test                 # Run tests (37 BDD specs)
uv run task cov                  # Run tests with coverage
uv run task lint                 # Lint (with auto-fix)
uv run task format               # Format code
uv run task type                 # Type check

Note: uv run is optional when the venv is activated via direnv.

Project Structure

src/ado_workflows_mcp/
├── server.py              # FastMCP server entry point
├── mcp_instance.py        # MCP singleton
├── tools/
│   ├── repositories.py    # Repository discovery tools
│   ├── repository_context.py  # Session context management
│   ├── pull_requests.py   # PR lifecycle tools
│   ├── pr_review.py       # Review status tools
│   ├── pr_comments.py     # Comment workflow tools
│   └── _helpers.py        # Shared error-handling utilities
└── py.typed               # PEP 561 marker

Testing

37 BDD specs across 10 requirement classes — organized by consumer requirement, not code structure.

Requirement Class Specs Coverage
TestRepositoryDiscovery 3 Success, working-dir failure, SDK failure
TestSetRepositoryContext 3 Valid context, missing fields, SDK failure
TestGetRepositoryContextStatus 3 Populated, empty, error
TestClearRepositoryContext 2 Reset + clear state
TestEstablishPRContext 3 URL parse, ID resolve, SDK failure
TestCreatePullRequest 3 Success, missing branch, SDK failure
TestGetPRReviewStatus 3 Success, invalid PR, SDK failure
TestAnalyzePendingReviews 3 Results, empty, SDK failure
TestAnalyzePRComments 3 Categorized, no threads, SDK failure
TestPostPRComment 3 Valid post, empty content, SDK failure
TestReplyToPRComment 3 Valid reply, missing thread, SDK failure
TestResolvePRComments 3 Batch resolve, empty list, SDK failure

Documentation

  • Architecture — Tool layers, error propagation, and design decisions

Related

License

This project is licensed under the MIT License.

Metadata

Release files for ado-workflows-mcp 0.12.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ado-workflows-mcp 0.12.0
File Size Uploaded Provenance
ado_workflows_mcp-0.12.0.tar.gz 138.7 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for ado-workflows-mcp 0.12.0
File Interpreter ABI Platform
ado_workflows_mcp-0.12.0-py3-none-any.whl Python 3 none any Details

Total release size: 169.2 kB

Release files / ado_workflows_mcp-0.12.0.tar.gz

Download URL ado_workflows_mcp-0.12.0.tar.gz
Size 138.7 kB
Tags Source
SHA-256 checksum
How to use checksums
8c87d6884cb21c55bd24a81aa67215b8bec809928ddc3cc375579bb75b4d9d24
BLAKE2b-256 checksum
How to use checksums
4e97e75b37b71a32dd660e49f8536c783278abaa7ddb711ee28f080f1ebf26a6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 5, 2026.

Transparency log

Release files / ado_workflows_mcp-0.12.0-py3-none-any.whl

Download URL ado_workflows_mcp-0.12.0-py3-none-any.whl
Size 30.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
df3931d9fbe35d02f9b61bb9915959514f39f3d467618b6d1d89b1e4c81e7802
BLAKE2b-256 checksum
How to use checksums
58766ded5d9b87ae144126fa1f2d7e11d7aa620f6cecee62352d894ece56189a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 5, 2026.

Transparency log

Security for ado-workflows-mcp 0.12.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for ado_workflows_mcp-0.12.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 5, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page