Skip to content

MCP: Describe tool side effects and retry behavior #2636

Open

Description

@erichare

Publish accurate hints about whether each tool reads data, changes or deletes data, can be repeated safely, or contacts an external provider. Clients use these hints to explain operations and guide their behavior.

This independent follow-up under #2408 changes tool metadata only. Review actual behavior, including generated IDs and embedding or reranking calls. A hint does not enforce permission checks or make retries safe.

This ticket is done when registry tests verify representative read, write, destructive, and provider-calling tools. The advertised hints must match behavior, and tool execution must remain unchanged.

Status on October 23, 2026

PR #2649 implements this and is still open in the MCP stack. All 35 tools publish read-only, destructive, idempotency and external-interaction hints, and an independent test checks them. The combined stack passed 381 focused tests locally. It has no CI run yet because it does not target main.

Implementation requirements and source references

Tracking issue: #2408.

Tracking correspondence: Related changelog IDs are listed below. This is an independent follow-up, outside the launch milestone unless promoted for a demonstrated release blocker. Shared requirement IDs remain stable across the delivery plan and #2408.

Why

The existing MCP tools do not publish behavior hints that help clients distinguish a read from a write or a destructive operation. Clients also cannot tell from those hints whether a repeated call is safe or whether the tool may contact an external embedding/reranking service.

These annotations are optional client guidance. Adding them is not required to upgrade to Quarkiverse 2.0.3, and they do not replace authorization.

Work

  • Review the existing tools and explicitly set accurate read-only, destructive, idempotency, and external-interaction hints.
  • Base each hint on actual behavior. Account for generated IDs, data mutations, and embedding/reranking calls.
  • Keep the change limited to tool metadata.

Done when

Registry tests verify representative read, write, destructive, and provider-calling tools. The advertised hints match their behavior and tool execution is unchanged.

This is an independent follow-up under #2408. It is separate from #2631, which fixes the shape of update arguments.

Released annotation API.

Modern protocol and OAuth acceptance details

Review retry consequences after broken streams. A new JSON-RPC ID does not deduplicate a mutation, and idempotentHint does not enforce idempotency. Do not mark generated-ID inserts or side-effecting provider calls safe to replay without evidence. Keep annotations as optional guidance, never a substitute for authorization or execution safeguards.

Changelog traceability

Normative detail: Streamable HTTP, authorization, caching.

Required base protocol/schema behavior remains owned by #2625 and verified by #2626. This follow-up owns only its stated enhancement or proven gap.

Activity

  1. changed the title [-]Add accurate behavior annotations to MCP tools[/-] [+]MCP: Add accurate tool behavior annotations[/+] on Oct 12, 2026
  2. added
    MCP nice-to-haveIndependent MCP improvements that do not block the package upgrade.
    MCP follow-upIndependent MCP improvement unless promoted to a release blocker
    and removed
    MCP nice-to-haveIndependent MCP improvements that do not block the package upgrade.
    on Oct 12, 2026
  3. changed the title [-]MCP: Add accurate tool behavior annotations[/-] [+]MCP: Describe tool side effects and retry behavior[/+] on Oct 19, 2026
  4. self-assigned this
    on Oct 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

MCP follow-upIndependent MCP improvement unless promoted to a release blocker

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions