Skip to content

Releases: microsoft/azure-devops-mcp

v1.3.0: Advanced Security Tools

01 Aug 18:02
Compare
Choose a tag to compare

What's Changed

  • feat: implement tool name and parameter validation system with eslint integration by @polatengin in #337
  • Updating docs and re-organizing content by @danhellem in #335
  • Adding new param to link PR to work items to account for cross project linking by @danhellem in #333
  • Added includeWorkItemRefs param to the repo_get_pull_request_by_id tool by @localconst in #351
  • Add stackrank to fields list for batch fetch by id by @danhellem in #350
  • [dependencies]: Bump typescript-eslint from 8.37.0 to 8.38.0 by @dependabot[bot] in #325
  • feat: add support for fork source repository in pull request creation (Issue 254) by @nikolapeja6 in #356
  • [dependencies]: Bump @modelcontextprotocol/sdk from 1.16.0 to 1.17.0 by @dependabot[bot] in #360
  • Add CommentThreadStatus parameter to repos.create_pull_request_thread by @willherring-eventpoint in #357
  • AssignedTo transformation for get work items in batch by @danhellem in #363
  • [dependencies]: Bump @modelcontextprotocol/inspector from 0.16.1 to 0.16.2 by @dependabot[bot] in #366
  • Adding work_item_unlink to remove links from a work item by @danhellem in #365
  • Add pull request update tool by @beauzeaux in #361
  • Add Advanced Security Alert tools by @nuthanmunaiah in #270
  • Accepting expected result as a part of TestCase step instead of hardcoding by @skmanoj in #381
  • [dependencies]: Bump azure-devops-extension-api from 4.257.0 to 4.258.0 by @dependabot[bot] in #370

New Contributors

Full Changelog: v1.2.1...v1.3.0

v1.2.1

24 Jul 07:53
17a1cc9
Compare
Choose a tag to compare

What's Changed

  • fix tool parameter names for strict claude code naming conventions by @bcrispcvna in #319
  • Remove deprecated close_and_link_workitem_duplicates tool and its tests by @danhellem in #316
  • [dependencies]: Bump jest from 30.0.4 to 30.0.5 by @dependabot[bot] in #324
  • How to guide on setup in Cursor by @danhellem in #329
  • feat: add create pull request thread tool by @PlaySkyHD in #260
  • Trim MCP server tool payloads to reduce token consumption by @Copilot in #247
  • Fixing issue with casing on operations wit_update_work_item rejects… by @danhellem in #326
  • chore: publish 1.2.1 by @aaudzei in #342

New Contributors

Full Changelog: v1.2.0...v1.2.1

v1.2.0

21 Jul 16:36
472a22f
Compare
Choose a tag to compare

What's Changed

  • feat: enhance coverage reporting and thresholds in jest configuration by @polatengin in #242
  • Add mkonjikovac by @nikolapeja6 in #255
  • Uses the value of ADO_MCP_AZURE_TOKEN_CREDENTIALS if set by @kboom in #257
  • Tool for fetching identities and for adding/removing reviewers (Issue #184) by @nikolapeja6 in #219
  • chore: add missing copyright and license comments to useragent.ts by @polatengin in #263
  • [dependencies]: Bump @modelcontextprotocol/inspector from 0.15.0 to 0.16.1 by @dependabot[bot] in #259
  • docs: update troubleshooting by @Novaes in #273
  • add build tests to improve code coverage by @polatengin in #267
  • add testplan tests to improve code coverage by @polatengin in #266
  • updated create_work_item to support markdown format in large text fields by @danhellem in #261
  • feat: add tests for get_identity_ids tool with error handling scenarios by @polatengin in #265
  • [dependencies]: Bump @modelcontextprotocol/sdk from 1.13.2 to 1.15.1 by @dependabot[bot] in #272
  • docs: VS 2022 instructios and contributing updates by @danhellem in #275
  • feat: support for tenant selection for auth by @aaudzei in #282
  • fix: to link work items to pr by @danhellem in #284
  • Added support of markdown for work item comments by @egor-bryzgalov in #285
  • [dependencies]: Bump typescript-eslint from 8.36.0 to 8.37.0 by @dependabot[bot] in #278
  • docs: Update to include Claude Code instructions by @danhellem in #294
  • [dependencies]: Bump yargs from 17.7.2 to 18.0.0 by @dependabot[bot] in #303
  • [dependencies]: Bump @modelcontextprotocol/sdk from 1.15.1 to 1.16.0 by @dependabot[bot] in #304
  • Support for affects and affected by for adding work item links by @danhellem in #297
  • Fix enum schema generation to use string values instead of numeric values by @Copilot in #248
  • Fix search tools parameters by @kboom in #314
  • [dependencies]: Bump eslint-config-prettier from 10.1.5 to 10.1.8 by @dependabot[bot] in #311
  • [dependencies]: Bump azure-devops-extension-api from 4.255.1 to 4.257.0 by @dependabot[bot] in #312
  • chore: publish version bump by @aaudzei in #315

New Contributors

Full Changelog: v1.1.0...v1.2.0

v1.1.0

16 Jul 19:00
6465257
Compare
Choose a tag to compare

Summary

The recent contributions to the Azure DevOps MCP repository reflect a comprehensive set of enhancements across functionality, configuration, documentation, and security. Key updates include new features such as initial prompt support, PR filtering and linking, build parameter specification, and tools for commit/PR tracking. Several improvements were made to error handling, test coverage, and configuration management, including updates to workflows, ESLint removal, and Prettier integration. Documentation was refined for clarity and consistency, while dependency versions were incrementally updated. Additionally, multiple fixes addressed code scanning alerts and minor bugs, reinforcing the project’s stability and maintainability.

What's Changed

  • feat: new version for publishing by @aaudzei in #135
  • update openfiles customization in devcontainer config by @polatengin in #155
  • remove deprecated eslint config file by @polatengin in #157
  • [dependencies]: Bump typescript-eslint from 8.34.1 to 8.35.0 by @dependabot[bot] in #117
  • [dependencies]: Bump @modelcontextprotocol/sdk from 1.13.0 to 1.13.2 by @dependabot[bot] in #143
  • feat: add initial prompts for experimentation by @danhellem in #153
  • Enhance error handling and add tests for wiki tools by @danhellem in #165
  • Update date handling in configuration functions to use z.coerce.date() by @danhellem in #164
  • Option to list PRs by status (Issue #90) by @nikolapeja6 in #166
  • Update pronoun for consistency in authoring instructions by @danhellem in #176
  • Option to link work items when creating the PR (Issue #115) by @nikolapeja6 in #168
  • update workflows to use specific action versions and adding harden-runner steps to improve security by @polatengin in #158
  • Option to specify build parameters in build_run_build tool (Issue #72) by @nikolapeja6 in #188
  • Update access.yml by @aaudzei in #191
  • Option to filter repos and projects by parts of their names (Issue #113) by @nikolapeja6 in #189
  • [dependencies]: Bump @modelcontextprotocol/inspector from 0.14.1 to 0.15.0 by @dependabot[bot] in #160
  • [dependencies]: Bump typescript-eslint from 8.35.0 to 8.35.1 by @dependabot[bot] in #162
  • Increasing access for nikolapeja6 by @nikolapeja6 in #196
  • Fix contributing link in README.md by @aLekSer in #195
  • fix: do not log to STDOUT by @aaudzei in #192
  • [dependencies]: Bump zod-to-json-schema from 3.24.5 to 3.24.6 by @dependabot[bot] in #197
  • [dependencies]: Bump @azure/identity from 4.10.1 to 4.10.2 by @dependabot[bot] in #198
  • Potential fix for code scanning alert no. 3: Workflow does not contain permissions by @Novaes in #214
  • Potential fix for code scanning alert no. 4: Workflow does not contain permissions by @Novaes in #213
  • Potential fix for code scanning alert no. 5: Workflow does not contain permissions by @Novaes in #212
  • chore: update CODEOWNERS to use maintainers tag by @Novaes in #211
  • docs: fix grammar, improve clarity, and ensure consistent formatting in README and Troubleshooting by @Vruddhi18 in #208
  • update package.json. Add home page and bugs urls by @abdulkareemnalband in #204
  • Missing comma in package.json by @danhellem in #217
  • Limit number of results for repo tools (Issue #169) by @nikolapeja6 in #202
  • Add open in codespaces button to contribution guide by @kboom in #216
  • Adding members by @danhellem in #222
  • Update contributing guidelines and README to clarify expectations by @danhellem in #226
  • Fixing bug with update_pull_request_status (Issue #184) by @nikolapeja6 in #223
  • feat: add configuration files for Prettier and EditorConfig by @polatengin in #156
  • fix: link and add formatting rules to CONTRIBUTING guidelines by @aaudzei in #232
  • Adding new example to HOWTO.md by @danhellem in #228
  • fix: typo in copilot-instructions.md by @InDieTasten in #234
  • [dependencies]: Bump typescript-eslint from 8.35.1 to 8.36.0 by @dependabot[bot] in #220
  • [dependencies]: Bump jest from 30.0.2 to 30.0.4 by @dependabot[bot] in #221
  • Add update_build_stage tool (Issue #113) by @nikolapeja6 in #200
  • Create tools useful for locating commits and pull requests associated with these commits by @kboom in #238
  • Add contributors and star history to readme by @kboom in #239
  • add core tests to improve code coverage by @polatengin in #246
  • add work tests to improve code coverage by @polatengin in #245
  • add wikis tests to improve code coverage by @polatengin in #244
  • fix: append MCP client info to UserAgent header by @aaudzei in #251
  • changed tool to allow for bulk create child items instead of one by @danhellem in #241
  • add workitems tests to improve code coverage by @polatengin in #243
  • [dependencies]: Bump azure-devops-extension-api from 4.254.0 to 4.255.1 by @dependabot[bot] in #250

New Contributors

Full Changelog: v1.0.0...v1.1.0

v1.0.0

16 Jul 19:06
Compare
Choose a tag to compare

Summary

The recent updates include a mix of functional enhancements, dependency upgrades, documentation improvements, and access control refinements. Key changes involve publishing configuration adjustments, patching 1-click badges, and introducing CodeQL scanning for security. Several dependencies such as zod, ts-jest, @azure/identity, and @modelcontextprotocol packages were updated to maintain compatibility and stability. Documentation was expanded with updated video links, a new FAQ section, and troubleshooting guidance. Access permissions were revised, including write access for new contributors and updates to CODEOWNERS. Additionally, resiliency improvements, error handling, and cleanup tasks were implemented to strengthen the overall robustness of the project.

What's Changed

  • chore: publishConfig access to "public" by @Novaes in #34
  • fix: patch 1-click badges by @Novaes in #35
  • feat: add codeql scanning by @Novaes in #28
  • [dependencies]: Bump zod from 3.25.58 to 3.25.63 by @dependabot[bot] in #31
  • [dependencies]: Bump ts-jest from 29.3.4 to 29.4.0 by @dependabot[bot] in #30
  • Update README.md by @danhellem in #33
  • Add vinayakmsft to write access by @KathanS in #51
  • Removing console logs and correcting the version number in index.ts by @vinayakmsft in #53
  • [dependencies]: bump @azure/identity from 4.10.0 to 4.10.1 by @dependabot[bot] in #55
  • [dependencies]: bump @modelcontextprotocol/sdk from 1.12.1 to 1.12.2 by @dependabot[bot] in #54
  • [dependencies]: Bump @modelcontextprotocol/inspector from 0.14.0 to 0.14.1 by @dependabot[bot] in #60
  • Update CODEOWNERS by @skmanoj in #75
  • [docs]: Update video links for Azure DevOps MPC Server instructions by @danhellem in #74
  • [docs]: Update README and add FAQ section for Azure DevOps MCP Server by @danhellem in #84
  • [docs]: Add quick start video link to README for easier onboarding by @danhellem in #85
  • [dependencies]: Bump zod from 3.25.63 to 3.25.67 by @dependabot[bot] in #67
  • [dependencies]: Bump @modelcontextprotocol/sdk from 1.12.2 to 1.13.0 by @dependabot[bot] in #80
  • [dependencies]: Bump typescript-eslint from 8.34.0 to 8.34.1 by @dependabot[bot] in #92
  • Updating docs by @danhellem in #95
  • docs: Add troubleshooting guidance for exceeding tool selection limit by @danhellem in #97
  • fix: Ensure work tools are configured in the tool setup by @danhellem in #101
  • Update CODEOWNERS by @danhellem in #109
  • Update CODEOWNERS by @danhellem in #111
  • Implement error handling and improve resiliency for core and work by @danhellem in #102
  • [dependencies]: Bump jest and @types/jest by @dependabot[bot] in #110
  • chore: remove misplaced doc file by @aaudzei in #123
  • Added some resiliency and error checking to address failures with #100 by @danhellem in #121
  • chore: remove unused dependency by @aaudzei in #127
  • Added description and resilency changes to link work item to pr. Use … by @danhellem in #128

New Contributors

Full Changelog: v0.1.0...v1.0.0

v0.1.0

12 Jun 13:09
b817a72
Compare
Choose a tag to compare

What's Changed

This is the initial public preview release version of Azure DevOps MCP.

Full Changelog: https://github.com/microsoft/azure-devops-mcp/commits/v0.1.0

📺 Overview

The Azure DevOps MCP Server brings Azure DevOps context to your agents. Try prompts like:

  • "List my ADO projects"
  • "List ADO Builds for 'Contoso'"
  • "List ADO Releases for 'Contoso'"
  • "List ADO Repos for 'Contoso'"
  • "List test plans for 'Contoso'"
  • "List teams for project 'Contoso'"
  • "List iterations for project 'Contoso'"
  • "List my work items for project 'Contoso'"
  • "List work items in current iteration for 'Contoso' project and 'Contoso Team'"

⚙️ Supported tools

Interact with these Azure DevOps services:

🧿 Core

  • core_list_project_teams: Retrieve a list of teams for the specified Azure DevOps project.
  • core_list_projects: Retrieve a list of projects in your Azure DevOps organization.

⚒️ Work

  • work_list_team_iterations: Retrieve a list of iterations for a specific team in a project.
  • work_create_iterations: Create new iterations in a specified Azure DevOps project.
  • work_assign_iterations: Assign existing iterations to a specific team in a project.

📅 Work Items

  • wit_my_work_items: Retrieve a list of work items relevent to the authenticated user.
  • wit_list_backlogs: Revieve a list of backlogs for a given project and team.
  • wit_list_backlog_work_items: Retrieve a list of backlogs of for a given project, team, and backlog category.
  • wit_get_work_item: Get a single work item by ID.
  • wit_get_work_items_batch_by_ids: Retrieve list of work items by IDs in batch.
  • wit_update_work_item: Update a work item by ID with specified fields.
  • wit_create_work_item: Create a new work item in a specified project and work item type.
  • wit_list_work_item_comments: Retrieve list of comments for a work item by ID.
  • wit_get_work_items_for_iteration: Retrieve a list of work items for a specified iteration.
  • wit_add_work_item_comment: Add comment to a work item by ID.
  • wit_add_child_work_item: Create a child work item from a parent by ID.
  • wit_link_work_item_to_pull_request: Link a single work item to an existing pull request.
  • wit_get_work_item_type: Get a specific work item type.
  • wit_get_query: Get a query by its ID or path.
  • wit_get_query_results_by_id: Retrieve the results of a work item query given the query ID.
  • wit_update_work_items_batch: Update work items in batch.
  • wit_close_and_link_workitem_duplicates: Close duplicate work items by id.
  • wit_work_items_link: Link work items together in batch.

📁 Repositories

  • repo_list_repos_by_project: Retrieve a list of repositories for a given project.
  • repo_list_pull_requests_by_repo: Retrieve a list of pull requests for a given repository.
  • repo_list_pull_requests_by_project: Retrieve a list of pull requests for a given project Id or Name.
  • repo_list_branches_by_repo: Retrieve a list of branches for a given repository.
  • repo_list_my_branches_by_repo: Retrieve a list of my branches for a given repository Id.
  • repo_list_pull_request_threads: Retrieve a list of comment threads for a pull request.
  • repo_list_pull_request_thread_comments: Retrieve a list of comments in a pull request thread.
  • repo_get_repo_by_name_or_id: Get the repository by project and repository name or ID.
  • repo_get_branch_by_name: Get a branch by its name.
  • repo_get_pull_request_by_id: Get a pull request by its ID.
  • repo_create_pull_request: Create a new pull request.
  • repo_update_pull_request_status: Update status of an existing pull request to active or abandoned.
  • repo_reply_to_comment: Replies to a specific comment on a pull request.
  • repo_resolve_comment: Resolves a specific comment thread on a pull request.

🛰️ Builds

  • build_get_definitions: Retrieves a list of build definitions for a given project.
  • build_get_definition_revisions: Retrieves a list of revisions for a specific build definition.
  • build_get_builds: Retrieves a list of builds for a given project.
  • build_get_log: Retrieves the logs for a specific build.
  • build_get_log_by_id: Get a specific build log by log ID.
  • build_get_changes: Get the changes associated with a specific build.
  • build_run_build: Triggers a new build for a specified definition.
  • build_get_status: Fetches the status of a specific build.

🚀 Releases

  • release_get_definitions: Retrieves list of release definitions for a given project.
  • release_get_releases: Retrieves a list of releases for a given project.

🧪 Test Plans

  • testplan_create_test_plan: Creates a new test plan in the project.
  • testplan_create_test_case: Creates a new test case work item.
  • testplan_add_test_cases_to_suite: Adds existing test cases to a test suite.
  • testplan_list_test_plans: Retrieve a paginated list of test plans from an Azure DevOps project. Allows filtering for active plans and toggling detailed information.
  • testplan_list_test_cases: Gets a list of test cases in the test plan.
  • testplan_show_test_results_from_build_id: Gets a list of test results for a given project and build ID.

🔎 Search

  • search_code: Get the code search results for a given search text.
  • search_wiki: Get wiki search results for a given search text.
  • search_workitem: Get work item search results for a given search text.

🔌 Installation & getting started

Clone the repository, install dependencies, and add it to your MCP client configuration.

Visual Studio Code & GitHub Copilot

For the best experience, use Visual Studio Code and GitHub Copilot.

Prerequisites

  1. Install VS Code or VS Code Insiders
  2. Install Node.js 20+
  3. Open VS Code in an empty folder

Azure Login

Ensure you are logged in to Azure DevOps via the Azure CLI:

az login