MCP Azure DevOps Server
by Vortiago
An MCP server enabling AI assistants to interact with Azure DevOps services. It bridges natural language interactions and the Azure DevOps REST API.
Last updated: N/A
MCP Azure DevOps Server
A Model Context Protocol (MCP) server enabling AI assistants to interact with Azure DevOps services.
Overview
This project implements a Model Context Protocol (MCP) server that allows AI assistants (like Claude) to interact with Azure DevOps, providing a bridge between natural language interactions and the Azure DevOps REST API.
Features
Currently implemented:
Work Item Management
- Query Work Items: Search for work items using WIQL queries
- Get Work Item Details: View complete work item information
- Create Work Items: Add new tasks, bugs, user stories, and other work item types
- Update Work Items: Modify existing work items' fields and properties
- Add Comments: Post comments on work items
- View Comments: Retrieve the comment history for a work item
- Parent-Child Relationships: Establish hierarchy between work items
Project Management
- Get Projects: View all accessible projects in the organization
- Get Teams: List all teams within the organization
- Team Members: View team membership information
- Team Area Paths: Retrieve area paths assigned to teams
- Team Iterations: Access team iteration/sprint configurations
Planned features:
- Pipeline Operations: Query pipeline status and trigger new pipeline runs
- Pull Request Handling: Create, update, and review Pull Requests
- Sprint Management: Plan and manage sprints and iterations
- Branch Policy Administration: Configure and manage branch policies
Getting Started
Prerequisites
- Python 3.10+
- Azure DevOps account with appropriate permissions
- Personal Access Token (PAT) with necessary scopes for Azure DevOps API access
Installation
# Clone the repository
git clone https://github.com/Vortiago/mcp-azure-devops.git
cd mcp-azure-devops
# Install in development mode
uv pip install -e ".[dev]"
# Install from PyPi
pip install mcp-azure-devops
Configuration
Create a .env
file in the project root with the following variables:
AZURE_DEVOPS_PAT=your_personal_access_token
AZURE_DEVOPS_ORGANIZATION_URL=https://your-organization.visualstudio.com or https://dev.azure.com/your-organisation
Note: Make sure to provide the full URL to your Azure DevOps organization.
Running the Server
# Development mode with the MCP Inspector
mcp dev src/mcp_azure_devops/server.py
# Install in Claude Desktop
mcp install src/mcp_azure_devops/server.py --name "Azure DevOps Assistant"
Usage Examples
Query Work Items
Show me all active bugs assigned to me in the current sprint
Create a Work Item
Create a user story in the ProjectX with the title "Implement user authentication" and assign it to [email protected]
Update a Work Item
Change the status of bug #1234 to "Resolved" and add a comment explaining the fix
Team Management
Show me all the team members in the "Core Development" team in the "ProjectX" project
View Project Structure
List all projects in my organization and show me the iterations for the Development team
Development
The project is structured into feature modules, each implementing specific Azure DevOps capabilities:
features/work_items
: Work item management functionalityfeatures/projects
: Project management capabilitiesfeatures/teams
: Team management featuresutils
: Common utilities and client initialization
For more information on development, see the CLAUDE.md file.
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
- Built with MCP Python SDK
- Uses Azure DevOps Python API