Repository navigation
v0.1.1 — safer votes, real comment ids, streamed responses
Five fixes and one API correction since v0.1.0, plus release/CI hygiene.
Changed
- Breaking:
add_work_item_commentnow posts through_apis/wit/workItems/{id}/commentsinstead of writing toSystem.History, and returns aWorkItemComment(real id, version) instead of the wholeWorkItem. It also accepts an optionalprojectparameter, matchinglist_work_item_comments.
Added
get_work_item_commentreads a single work item comment by id.
Fixed
vote_on_pull_requestsilently cleared the reviewer's required flag. The PUT only sent{ vote }, and that endpoint replaces the whole reviewer resource. The client now looks up the reviewer's currentisRequiredbefore voting and includes it in the request.- Unsafe HTTP methods (POST/PATCH/PUT/DELETE) were retried automatically on transient Azure DevOps failures, which could create duplicate work items, comments, releases, attachments, or queued builds when a request succeeded but its response was lost. Only GET still retries.
- Repository file content was fully buffered before
maxCharscould limit it. Large files now stream through a byte-level JSON decoder instead of being materialized in full first. - Build logs stream instead of buffering the whole response.
- The NuGet package version is now the single source for the MCP manifest version, so the two can no longer disagree.
An end-to-end smoke test now covers the stdio MCP transport, and CI enforces a test coverage threshold.
Known issues
add_work_item_commentandget_work_item_comment(above) are verified only against stub Azure DevOps handlers in this release, not yet against a real Azure DevOps Server.
62 tools, 263 tests.
Full changelog: v0.1.0...v0.1.1