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_PROJECT": "your-project-name",
        "AZDO_REPO_ID": "your-default-repo"
      }
    }
  }
}

Note: AZDO_REPO_ID sets your default repository. You can 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-PROJECT": "your-project-name",
        "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",
        "--project", "your-project-name",
        "--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-PROJECT: Your Azure DevOps project name (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.5.tar.gz (91.5 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.5-py3-none-any.whl (13.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ado_pr_kit-0.2.5.tar.gz
  • Upload date:
  • Size: 91.5 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.5.tar.gz
Algorithm Hash digest
SHA256 da56be1ea362729ba0f6f4d520f44001e3296fd53252643fd31a5586c461c206
MD5 51a887a61ee43f9ed1f50e062f4ca42e
BLAKE2b-256 1c5c961bb7e8d6d2329d045d2acd0526e67b33aa590a6e089fc065e70dccdda9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ado_pr_kit-0.2.5-py3-none-any.whl
  • Upload date:
  • Size: 13.1 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.5-py3-none-any.whl
Algorithm Hash digest
SHA256 36e0bfe1414bc7ada0c796cd79b5a9090f61c1f601ad681dd3c21ed775c039a7
MD5 3b36642688f43c1fbf03c66894cf8c2d
BLAKE2b-256 1403d7f0384fa18a4caaecda738fc74e5029d2fdc1a159b88517fa9f37cd27ff

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