About ado-mcp-server
ado-mcp-server is an MCP server for Azure DevOps, intended for clients that need to work with projects and work items. It covers Work Item Tracking operations and can be extended with additional tools.
Key features
- 01Create, retrieve, update, and delete work items
- 02List, query, and batch work item operations
- 03Manage revisions, comments, and attachments
- 04Link and unlink work items
- 05Extend tools through modular registration
Use cases
- 01Manage Azure DevOps work items from an MCP client
- 02Create or remove parent-child and related links
- 03Add project-specific tools to the server
MCP support
Exposes Azure DevOps work item operations as tools for MCP clients. It runs over STDIO.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEado-mcp-server
A Model Context Protocol (MCP) server for Azure DevOps.
Overview
This project implements an MCP server intended for integration with Azure DevOps. The server is built using the @modelcontextprotocol/sdk and allows extension through a modular tool registration system.
Features
- MCP server implementation using the official SDK
- Extensible architecture for registering project and work item tools
- Full support for Azure DevOps Work Item Tracking (WIT) REST API endpoints (create, get, update, delete, list, query, batch, revisions, comments, attachments, relations)
- Runs over STDIO for integration with other systems
Getting Started
Prerequisites
- Node.js (version 16+ recommended)
- npm
Installation
Clone the repository and install dependencies:
git clone https://github.com/dmedellin/ado-mcp-server.git
cd ado-mcp-server
npm install
Usage
Start the MCP server:
npm start
The server will run over STDIO and can be integrated with compatible clients.
Testing
You can test the server using the Model Context Protocol Inspector:
npx @modelcontextprotocol/inspector
Project Structure
index.js- Entry point; initializes and runs the MCP server.features/- Directory for registering project and work item tools.
Scripts
npm start- Start the MCP server.npm test- (Currently not implemented.)
Configuration
No additional configuration is required for basic usage. You may extend functionality by adding new tools in the features directory.
Dependencies
License
ISC
This project is not affiliated with Microsoft or Azure DevOps.
Tools
-
linkWorkItems— Link two Azure DevOps work items (e.g., parent-child, related, etc.).- Input:
sourceId(number/string): The ID of the source work item (e.g., the child in a parent-child link).targetId(number/string): The ID of the target work item (e.g., the parent in a parent-child link).linkType(string, optional): The type of link (default:System.LinkTypes.Hierarchy-Forwardfor parent-child).comment(string, optional): Optional comment for the link operation.
- Permissions: Requires permission to edit work items in the Azure DevOps project.
- Example:
{ "sourceId": 123, "targetId": 456, "linkType": "System.LinkTypes.Hierarchy-Forward" }
- Input:
-
unlinkWorkItems— Remove a link (e.g., parent-child, related) between two Azure DevOps work items.- Input:
sourceId(number/string): The ID of the source work item (the one holding the link).targetId(number/string): The ID of the target work item (the one being linked to).linkType(string, optional): The type of link to remove (default:System.LinkTypes.Hierarchy-Forwardfor parent-child).
- Permissions: Requires permission to edit work items in the Azure DevOps project.
- Example:
{ "sourceId": 123, "targetId": 456, "linkType": "System.LinkTypes.Hierarchy-Forward" }
- Input:
-
For more link types, see Azure DevOps documentation.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.