Skip to main content

AdoPRKit: The complete toolbox for Azure DevOps Pull Requests (MCP)

Project description

AdoPRKit

PyPI version PyPI - Python Version License: MIT

A Model Context Protocol (MCP) server for managing Azure DevOps Pull Requests. Create, review, and manage PRs directly from your AI coding assistant.

Features

  • Create and manage pull requests
  • Add comments and review threads
  • View diffs and changed files
  • Link work items
  • Update PR status (draft, publish, abandon)

Installation

Local MCP (Recommended)

Quick start with uvx (no installation):

uvx ado-pr-kit

Or install globally:

pip install ado-pr-kit

Configure your editor:

Add to your MCP config (e.g., mcp_config.json, .vscode/mcp.json, or claude_desktop_config.json):

{
  "mcpServers": {
    "ado-pr-kit": {
      "command": "uvx",
      "args": ["ado-pr-kit"],
      "env": {
        "AZDO_ORG_URL": "https://dev.azure.com/your-org",
        "AZDO_PAT": "your-personal-access-token",
        "AZDO_REPO_ID": "your-default-repo"
      }
    }
  }
}

Note: AZDO_REPO_ID sets your default repository. You can still query any repo by passing repository_id to tools.

Remote MCP (SSE Server)

Connect to hosted server:

Option 1: Native SSE (if your client supports serverUrl + headers):

{
  "mcpServers": {
    "ado-pr-kit": {
      "serverUrl": "https://ado-pr-kit.onrender.com/sse",
      "headers": {
        "X-AZDO-ORG-URL": "https://dev.azure.com/your-org",
        "X-AZDO-PAT": "your-personal-access-token",
        "X-AZDO-REPO-ID": "your-default-repo"
      }
    }
  }
}

Option 2: Bridge command (for clients that only support stdio):

{
  "mcpServers": {
    "ado-pr-kit": {
      "command": "uvx",
      "args": [
        "--from", "ado-pr-kit",
        "ado-pr-connect",
        "--url", "https://ado-pr-kit.onrender.com/sse",
        "--org-url", "https://dev.azure.com/your-org",
        "--pat", "your-personal-access-token",
        "--repo-id", "your-default-repo"
      ]
    }
  }
}

Deploy your own SSE server:

uvicorn ado_pr_kit.server_sse:app --host 0.0.0.0 --port 8000

Authentication uses HTTP headers:

  • X-AZDO-ORG-URL: Your Azure DevOps organization URL (required)
  • X-AZDO-PAT: Your personal access token (required)
  • X-AZDO-REPO-ID: Default repository ID (required)

Prerequisites

  • Python 3.10+
  • Azure DevOps PAT with Code (Read & Write) and Pull Request Threads (Read & Write) permissions

Development

git clone https://github.com/om-surushe/ado-pr-manager.git
cd ado-pr-manager
python3 -m venv .venv
source .venv/bin/activate
pip install -e .[dev]
pytest

Roadmap

  • Inline code comments with file/line context
  • Rich comments (mentions, work item links)
  • Full file content access
  • Work item management (CRUD)
  • PR voting (approve, reject)
  • Pipeline/build status checks

License

MIT License - see LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ado_pr_kit-0.2.4.tar.gz (91.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ado_pr_kit-0.2.4-py3-none-any.whl (13.0 kB view details)

Uploaded Python 3

File details

Details for the file ado_pr_kit-0.2.4.tar.gz.

File metadata

  • Download URL: ado_pr_kit-0.2.4.tar.gz
  • Upload date:
  • Size: 91.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ado_pr_kit-0.2.4.tar.gz
Algorithm Hash digest
SHA256 59906969b0592e3445549e3b25622d34fb1cf80db7c45ede218d2efd6f9c118f
MD5 22e50f2d45e014ef2e9597aabae81a95
BLAKE2b-256 9d2f34ea975ab45933f28d83d86d6b9089688e3f74e4b819117ea8cb5f9be8d8

See more details on using hashes here.

File details

Details for the file ado_pr_kit-0.2.4-py3-none-any.whl.

File metadata

  • Download URL: ado_pr_kit-0.2.4-py3-none-any.whl
  • Upload date:
  • Size: 13.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ado_pr_kit-0.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 db465c9fd7dce5a0e593d6b70c0b76085fbf0fb903ef4d072b09897bd7a4991d
MD5 f5e59473b2f55d6022dad826cbe1421b
BLAKE2b-256 387668548e7f241fd60358eabd7c538c12cf688da30d96e8ccd5f0f7eec9ca58

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page