Skip to content

fix(coding-agents): identify safe MCP knowledge reads - #3818

Open
altaywtf wants to merge 1 commit into
vectorize-io:mainfrom
altaywtf:fix/coding-agent-mcp-tool-annotations
Open

fix(coding-agents): identify safe MCP knowledge reads#3818
altaywtf wants to merge 1 commit into
vectorize-io:mainfrom
altaywtf:fix/coding-agent-mcp-tool-annotations

Conversation

@altaywtf

Copy link
Copy Markdown
Contributor

Codex Auto-review can now distinguish safe Hindsight knowledge reads from writes. Previously, the coding-agent MCP registered bare tools, so clients treated every call as unverified external access.

  • Fix: attach explicit read-only, destructive, idempotent, and open-world hints to every ToolSpec and pass them through tools/list.
  • Writes: hindsight_capture_initiative and hindsight_ingest_document remain additive, non-idempotent writes. Clients must still approve them.
  • Guard: assert the exact tools/list metadata for all 8 tools, so no tool can inherit unsafe protocol defaults.
  • Precedent: match the native MCP behavior from feat(mcp): add ToolAnnotations (read-only/destructive hints) to MCP tools #2243. hindsight_reflect is read-only because it does not persist.
Class Tools MCP annotations
Read-only sync status, diagnostics, knowledge search/list/read, reflect readOnlyHint=true, destructiveHint=false, idempotentHint=true, openWorldHint=false
Additive write capture initiative, ingest document readOnlyHint=false, destructiveHint=false, idempotentHint=false, openWorldHint=false

Copilot AI lite review requested due to automatic review settings August 26, 2026 15:04
@strix-security

strix-security Bot commented Aug 26, 2026

Copy link
Copy Markdown

Strix Security Review

No security issues found.

Updated for 9612e71.


Reviewed by Strix
Re-run review · Configure security review settings

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants