Repository navigation
fix(mcp): mark tools that write not read-only and test the schema - #3649
Merged
dan-petty merged 4 commits intoNov 5, 2026
Merged
Conversation
The exposure table marked pr check-readiness, roadmap refine and tf plan as read-only. Each has an option that writes to GitHub or to a file. Mark the three tools not read-only. Drop the sarif option from the scan injection tool, which stays read-only. A new test fails on a read-only tool with an option whose description holds resolve, write, delete or create. Refs #3235
The review of #3235 found two more tools that write: roadmap run with --confirm and ci with --fix. The tf plan tool published --out, a path that the command writes and nothing confines. Its schema now leaves out that option and the tool stays read-only. The change folder names the follow-up issues.
Owner
Author
Test resultsFail-to-pass run ( The 7 tests that fail on the base:
Full gate ( The 4 failures and the 1 error read the state of the host. They fail the same way on a clean
Open issues already own them (#3585, #3590, #3593, #3594, #3597 and #3025). This change touches none of them. Review findingsA review of the first version gave five findings. I checked each one.
|
dan-petty
marked this pull request as ready for review
November 5, 2026 16:25
dan-petty
deleted the
fix/3235-read-only-mcp-tools-have-no-write-option
branch
November 5, 2026 16:26
dan-petty
pushed a commit
that referenced
this pull request
Nov 5, 2026
🤖 I have created a release *beep* *boop* --- ## [0.62.6](v0.62.5...v0.62.6) (2026-11-05) ### Bug Fixes * **mcp:** mark tools that write not read-only and test the schema ([#3649](#3649)) ([6d9dded](6d9dded)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). Co-authored-by: dan-petty-release[bot] <346998822+dan-petty-release[bot]@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A role server and a client choose tools by the read-only flag, so a tool with an option that writes must not be read-only. The change marks
pr_check_readiness,roadmap_refine,roadmap_runandcinot read-only. Each command keeps its option. The schemas ofscan_injectionandtf_plandrop the file optionssarifandout, and both tools stay read-only. A new test reads the published schema of every tool. It fails on a read-only tool whose option description holds the verb resolve, write, delete or create. Other tools stay open in #3642 (tools that write local state), #3644 (help text oftf_notify_plan) and #3480 (path decisions).Closes #3235
Change:
openspec/changes/archive/2026-11-05-3235-read-only-mcp-tools-have-no-write-option/Elapsed: 3.61s