Skip to main content
Glama
allanbrunobr

Azure DevOps MCP Server

by allanbrunobr

Azure DevOps MCP Server

MCP (Model Context Protocol) server for managing Azure DevOps Work Items including Epics, Features, User Stories, Tasks, Bugs, and more.

Features

  • Read Work Items: Get individual work items or list by type with filters

  • Create Work Items: Create Epics, Features, User Stories, Tasks, Bugs, etc.

  • Update Work Items: Modify any field including state, assignment, description

  • Delete Work Items: Move to recycle bin or permanently delete

  • Query Work Items: Execute custom WIQL queries

  • Link Work Items: Create parent-child and other relationships

  • Get Metadata: List work item types, iterations, and area paths

Prerequisites

  • Node.js 18 or higher

  • Azure DevOps account with a Personal Access Token (PAT)

  • PAT needs Work Items (Read & Write) scope

Installation

npm install
npm run build

Configuration

Set the following environment variables:

export AZURE_DEVOPS_ORG="your-organization"
export AZURE_DEVOPS_PROJECT="your-project"
export AZURE_DEVOPS_PAT="your-personal-access-token"

Creating a PAT

  1. Go to Azure DevOps > User Settings > Personal Access Tokens

  2. Create new token with these scopes:

    • Work Items: Read & Write

  3. Copy the token (you won't see it again!)

Usage with Claude Desktop

Add to your Claude Desktop configuration (claude_desktop_config.json):

{
  "mcpServers": {
    "azure-devops": {
      "command": "node",
      "args": ["path/to/azure-devops-mcp/dist/index.js"],
      "env": {
        "AZURE_DEVOPS_ORG": "your-organization",
        "AZURE_DEVOPS_PROJECT": "your-project",
        "AZURE_DEVOPS_PAT": "your-pat"
      }
    }
  }
}

Available Tools

get_work_item

Get a single work item by ID.

{
  "id": 123,
  "expand": "Relations"
}

list_work_items

List work items by type with optional filters.

{
  "type": "User Story",
  "state": "Active",
  "assignedTo": "user@example.com",
  "top": 10
}

create_work_item

Create a new work item.

{
  "type": "Task",
  "title": "Implement login feature",
  "description": "<p>Details here</p>",
  "assignedTo": "developer@example.com",
  "priority": 2,
  "parentId": 100
}

update_work_item

Update an existing work item.

{
  "id": 123,
  "state": "Resolved",
  "comment": "Fixed the issue"
}

delete_work_item

Delete a work item.

{
  "id": 123,
  "permanent": false
}

query_work_items

Execute a WIQL query.

{
  "query": "SELECT [System.Id] FROM WorkItems WHERE [System.State] = 'Active' AND [System.AssignedTo] = @Me"
}

get_child_work_items

Get all children of a work item.

{
  "parentId": 100
}

Link two work items.

{
  "sourceId": 100,
  "targetId": 101,
  "linkType": "System.LinkTypes.Hierarchy-Forward",
  "comment": "Added as child"
}

get_work_item_types

List available work item types.

get_iterations

List project iterations/sprints.

get_area_paths

List project area paths.

  • System.LinkTypes.Hierarchy-Forward - Parent to Child

  • System.LinkTypes.Hierarchy-Reverse - Child to Parent

  • System.LinkTypes.Related - Related work items

  • System.LinkTypes.Dependency-Forward - Successor

  • System.LinkTypes.Dependency-Reverse - Predecessor

Common Work Item Fields

  • System.Title - Title

  • System.Description - Description (HTML)

  • System.State - State (New, Active, Resolved, Closed)

  • System.AssignedTo - Assigned user

  • System.AreaPath - Area path

  • System.IterationPath - Iteration/Sprint

  • System.Tags - Tags (semicolon separated)

  • Microsoft.VSTS.Common.Priority - Priority (1-4)

  • Microsoft.VSTS.Scheduling.StoryPoints - Story points

  • Microsoft.VSTS.Scheduling.OriginalEstimate - Original estimate

  • Microsoft.VSTS.Scheduling.RemainingWork - Remaining work

  • Microsoft.VSTS.Common.AcceptanceCriteria - Acceptance criteria

License

MIT

-
security - not tested
F
license - not found
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/allanbrunobr/mcp-azure-devops'

If you have feedback or need assistance with the MCP directory API, please join our Discord server