← MCP Azure DevOps Server

MCP Azure DevOps Server 1.0.0

npm · mcp-azure-devops · current release

23
Tools
0
Resources
0
Templates
0
Prompts

Observation

Observed 2026-08-26T11:01:46.848Z using mcpSecurity-inventory. Status: succeeded. Negotiated protocol: 2025-06-18.

Server capabilities
{
  "tools": {}
}

Tools 23

ToolCategoryAnnotationsRisk
add_work_item_commentAdds a new discussion comment to a work item.
Input schema
{
  "type": "object",
  "properties": {
    "id": {
      "type": "number",
      "description": "Work Item ID"
    },
    "text": {
      "type": "string",
      "description": "Comment text"
    },
    "organization": {
      "type": "string",
      "description": "Optional organization override"
    },
    "project": {
      "type": "string",
      "description": "Optional project override"
    }
  },
  "required": [
    "id",
    "text"
  ]
}
— · —
call_apiExecutes a generic Azure DevOps REST API call. Supports ALL DevOps endpoints. (Default API Version: 7.1)
Input schema
{
  "type": "object",
  "properties": {
    "method": {
      "type": "string",
      "enum": [
        "GET",
        "POST",
        "PUT",
        "PATCH",
        "DELETE"
      ],
      "description": "HTTP Method"
    },
    "path": {
      "type": "string",
      "description": "API Path (e.g. /_apis/git/repositories or _apis/wit/workitems/123)"
    },
    "body": {
      "type": "object",
      "description": "Optional request body JSON"
    },
    "apiVersion": {
      "type": "string",
      "description": "Optional API version override (defaults to 7.1)"
    },
    "organization": {
      "type": "string",
      "description": "Optional organization override"
    },
    "project": {
      "type": "string",
      "description": "Optional project override"
    }
  },
  "required": [
    "method",
    "path"
  ]
}
— · —
configure_connectionConfigures Azure DevOps credentials (Username & PAT) for a specific organization/project URL. Must be called first if not configured.
Input schema
{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "description": "The project or dashboard URL (e.g. https://dev.azure.com/my-org/Test)"
    },
    "username": {
      "type": "string",
      "description": "Your username or email"
    },
    "token": {
      "type": "string",
      "description": "Your Personal Access Token (PAT)"
    }
  },
  "required": [
    "url",
    "username",
    "token"
  ]
}
— · —
create_git_pushPushes file changes (adds, modifications, deletes) directly to a repository branch.
Input schema
{
  "type": "object",
  "properties": {
    "repositoryId": {
      "type": "string",
      "description": "Name or ID of the repository"
    },
    "branchName": {
      "type": "string",
      "description": "Target branch name"
    },
    "commitMessage": {
      "type": "string",
      "description": "Commit message"
    },
    "changes": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "changeType": {
            "type": "string",
            "enum": [
              "add",
              "edit",
              "delete"
            ]
          },
          "path": {
            "type": "string",
            "description": "File path in repo (e.g. \"/newfile.txt\")"
          },
          "content": {
            "type": "string",
            "description": "File content (required for add/edit)"
          }
        },
        "required": [
          "changeType",
          "path"
        ]
      }
    },
    "organization": {
      "type": "string",
      "description": "Optional organization override"
    },
    "project": {
      "type": "string",
      "description": "Optional project override"
    }
  },
  "required": [
    "repositoryId",
    "branchName",
    "commitMessage",
    "changes"
  ]
}
— · —
create_pull_requestCreates a Pull Request in a Git repository.
Input schema
{
  "type": "object",
  "properties": {
    "repositoryId": {
      "type": "string",
      "description": "Name or ID of the repository"
    },
    "sourceBranch": {
      "type": "string",
      "description": "Source branch (e.g., \"feature-branch\")"
    },
    "targetBranch": {
      "type": "string",
      "description": "Target branch (e.g., \"main\")"
    },
    "title": {
      "type": "string",
      "description": "PR Title"
    },
    "description": {
      "type": "string",
      "description": "PR Description"
    },
    "organization": {
      "type": "string",
      "description": "Optional organization override"
    },
    "project": {
      "type": "string",
      "description": "Optional project override"
    }
  },
  "required": [
    "repositoryId",
    "sourceBranch",
    "targetBranch",
    "title"
  ]
}
— · —
create_pull_request_threadCreates an inline code review comment thread on a file and line number in a PR.
Input schema
{
  "type": "object",
  "properties": {
    "repositoryId": {
      "type": "string",
      "description": "Name or ID of the repository"
    },
    "pullRequestId": {
      "type": "number",
      "description": "PR ID"
    },
    "filePath": {
      "type": "string",
      "description": "File path in the repo"
    },
    "line": {
      "type": "number",
      "description": "Line number"
    },
    "content": {
      "type": "string",
      "description": "Comment content"
    },
    "organization": {
      "type": "string",
      "description": "Optional organization override"
    },
    "project": {
      "type": "string",
      "description": "Optional project override"
    }
  },
  "required": [
    "repositoryId",
    "pullRequestId",
    "filePath",
    "line",
    "content"
  ]
}
— · —
create_work_itemCreates a new work item (Bug, Task, User Story) in Azure DevOps.
Input schema
{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "description": "Work item type (e.g., \"Bug\", \"Task\", \"User Story\")"
    },
    "title": {
      "type": "string",
      "description": "Title of the work item"
    },
    "description": {
      "type": "string",
      "description": "Description or steps to reproduce (HTML or text)"
    },
    "fields": {
      "type": "object",
      "description": "Optional key-value object representing extra fields (e.g., {\"System.AssignedTo\": \"user@email.com\"})"
    },
    "organization": {
      "type": "string",
      "description": "Optional organization override"
    },
    "project": {
      "type": "string",
      "description": "Optional project override"
    }
  },
  "required": [
    "type",
    "title"
  ]
}
— · —
get_api_infoGets full documentation for a specific Azure DevOps API endpoint. Checks the local database first and falls back to Microsoft specs online.
Input schema
{
  "type": "object",
  "properties": {
    "method": {
      "type": "string",
      "enum": [
        "GET",
        "POST",
        "PUT",
        "PATCH",
        "DELETE"
      ]
    },
    "path": {
      "type": "string",
      "description": "Full API path (e.g., \"/_apis/git/repositories\")"
    }
  },
  "required": [
    "method",
    "path"
  ]
}
— · —
get_git_fileReads content of a file from an Azure DevOps Git repository.
Input schema
{
  "type": "object",
  "properties": {
    "repositoryId": {
      "type": "string",
      "description": "Name or ID of the repository"
    },
    "path": {
      "type": "string",
      "description": "Path to the file (e.g. \"/src/app.ts\")"
    },
    "branch": {
      "type": "string",
      "description": "Branch name (defaults to \"main\")"
    },
    "organization": {
      "type": "string",
      "description": "Optional organization override"
    },
    "project": {
      "type": "string",
      "description": "Optional project override"
    }
  },
  "required": [
    "repositoryId",
    "path"
  ]
}
— · —
get_pipeline_runRetrieves status of a pipeline run.
Input schema
{
  "type": "object",
  "properties": {
    "pipelineId": {
      "type": "number",
      "description": "Pipeline ID"
    },
    "runId": {
      "type": "number",
      "description": "Run ID"
    },
    "organization": {
      "type": "string",
      "description": "Optional organization override"
    },
    "project": {
      "type": "string",
      "description": "Optional project override"
    }
  },
  "required": [
    "pipelineId",
    "runId"
  ]
}
— · —
get_pipeline_run_logsRetrieves combined log content for a pipeline run.
Input schema
{
  "type": "object",
  "properties": {
    "pipelineId": {
      "type": "number",
      "description": "Pipeline ID"
    },
    "runId": {
      "type": "number",
      "description": "Run ID"
    },
    "organization": {
      "type": "string",
      "description": "Optional organization override"
    },
    "project": {
      "type": "string",
      "description": "Optional project override"
    }
  },
  "required": [
    "pipelineId",
    "runId"
  ]
}
— · —
get_pull_requestGets details and status of a Pull Request.
Input schema
{
  "type": "object",
  "properties": {
    "repositoryId": {
      "type": "string",
      "description": "Name or ID of the repository"
    },
    "pullRequestId": {
      "type": "number",
      "description": "PR ID"
    },
    "organization": {
      "type": "string",
      "description": "Optional organization override"
    },
    "project": {
      "type": "string",
      "description": "Optional project override"
    }
  },
  "required": [
    "repositoryId",
    "pullRequestId"
  ]
}
— · —
get_work_itemRetrieves details for a specific Azure DevOps work item by ID.
Input schema
{
  "type": "object",
  "properties": {
    "id": {
      "type": "number",
      "description": "Work Item ID"
    },
    "organization": {
      "type": "string",
      "description": "Optional organization override"
    },
    "project": {
      "type": "string",
      "description": "Optional project override"
    }
  },
  "required": [
    "id"
  ]
}
— · —
link_work_itemLinks two work items together using a relation type (e.g., Parent/Child, Duplicate, Related).
Input schema
{
  "type": "object",
  "properties": {
    "sourceId": {
      "type": "number",
      "description": "Source Work Item ID"
    },
    "targetId": {
      "type": "number",
      "description": "Target Work Item ID"
    },
    "relationType": {
      "type": "string",
      "description": "Relation type (e.g., \"System.LinkTypes.Hierarchy-Forward\" for Child, \"System.LinkTypes.Hierarchy-Reverse\" for Parent, \"System.LinkTypes.Related\" for Related)"
    },
    "organization": {
      "type": "string",
      "description": "Optional organization override"
    },
    "project": {
      "type": "string",
      "description": "Optional project override"
    }
  },
  "required": [
    "sourceId",
    "targetId",
    "relationType"
  ]
}
— · —
list_pull_request_threadsRetrieves all threads and comments on a PR.
Input schema
{
  "type": "object",
  "properties": {
    "repositoryId": {
      "type": "string",
      "description": "Name or ID of the repository"
    },
    "pullRequestId": {
      "type": "number",
      "description": "PR ID"
    },
    "organization": {
      "type": "string",
      "description": "Optional organization override"
    },
    "project": {
      "type": "string",
      "description": "Optional project override"
    }
  },
  "required": [
    "repositoryId",
    "pullRequestId"
  ]
}
— · —
list_repositoriesLists all Git repositories in the configured project.
Input schema
{
  "type": "object",
  "properties": {
    "organization": {
      "type": "string",
      "description": "Optional organization override"
    },
    "project": {
      "type": "string",
      "description": "Optional project override"
    }
  }
}
— · —
query_work_itemsSearches work items using Work Item Query Language (WIQL) and returns batch details.
Input schema
{
  "type": "object",
  "properties": {
    "wiql": {
      "type": "string",
      "description": "WIQL query string (e.g., \"Select [System.Id] From WorkItems Where [System.WorkItemType] = 'Bug'\")"
    },
    "organization": {
      "type": "string",
      "description": "Optional organization override"
    },
    "project": {
      "type": "string",
      "description": "Optional project override"
    }
  },
  "required": [
    "wiql"
  ]
}
— · —
run_pipelineTriggers a run of a pipeline.
Input schema
{
  "type": "object",
  "properties": {
    "pipelineId": {
      "type": "number",
      "description": "Pipeline ID"
    },
    "variables": {
      "type": "object",
      "description": "Optional run-time variables key-value object"
    },
    "organization": {
      "type": "string",
      "description": "Optional organization override"
    },
    "project": {
      "type": "string",
      "description": "Optional project override"
    }
  },
  "required": [
    "pipelineId"
  ]
}
— · —
search_api_docsSearches the local database of Azure DevOps APIs and parameters to find the correct endpoints offline.
Input schema
{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Search term (e.g., \"pull requests\", \"workitems\")"
    },
    "area": {
      "type": "string",
      "description": "Optional API area filter (e.g., \"wit\", \"git\", \"pipelines\")"
    }
  },
  "required": [
    "query"
  ]
}
— · —
search_identitiesSearches for users or groups in the organization by name or email.
Input schema
{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Search query (name, email, etc.)"
    },
    "organization": {
      "type": "string",
      "description": "Optional organization override"
    }
  },
  "required": [
    "query"
  ]
}
— · —
test_connectionVerifies connection to Azure DevOps for a configured organization.
Input schema
{
  "type": "object",
  "properties": {
    "organization": {
      "type": "string",
      "description": "Optional organization name. If omitted, uses the default organization."
    }
  }
}
— · —
update_pull_requestUpdates a Pull Request status (active, abandoned, completed).
Input schema
{
  "type": "object",
  "properties": {
    "repositoryId": {
      "type": "string",
      "description": "Name or ID of the repository"
    },
    "pullRequestId": {
      "type": "number",
      "description": "PR ID"
    },
    "status": {
      "type": "string",
      "enum": [
        "active",
        "abandoned",
        "completed"
      ],
      "description": "Target status"
    },
    "organization": {
      "type": "string",
      "description": "Optional organization override"
    },
    "project": {
      "type": "string",
      "description": "Optional project override"
    }
  },
  "required": [
    "repositoryId",
    "pullRequestId",
    "status"
  ]
}
— · —
update_work_itemUpdates field values on an existing work item.
Input schema
{
  "type": "object",
  "properties": {
    "id": {
      "type": "number",
      "description": "Work Item ID"
    },
    "fields": {
      "type": "object",
      "description": "Key-value object of fields to update (e.g., {\"System.State\": \"Done\", \"System.AssignedTo\": \"user@email.com\"})"
    },
    "organization": {
      "type": "string",
      "description": "Optional organization override"
    },
    "project": {
      "type": "string",
      "description": "Optional project override"
    }
  },
  "required": [
    "id",
    "fields"
  ]
}
— · —

Resources 0

Resource templates 0

Prompts 0

Let’s talk about MCP security.

Share your details and our security team will contact you.