patch_key
Apply JSON Merge Patch text with an exact quoted ETag. Null members delete; arrays/scalars replace. No blind retries.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | ||
| patch | Yes | ||
| if_match | Yes |
Apply JSON Merge Patch text with an exact quoted ETag. Null members delete; arrays/scalars replace. No blind retries.
| Name | Required | Description | Default |
|---|---|---|---|
| key | Yes | ||
| patch | Yes | ||
| if_match | Yes |
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already flag destructiveHint=true, idempotentHint=false, and readOnlyHint=false, so the safety profile is covered. The description adds substantive behavior beyond that: null members delete, arrays/scalars replace, and an exact quoted ETag is mandatory with no blind retries — effectively disclosing precondition-failure semantics. It stops short of saying what happens on an ETag mismatch or what is returned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short, front-loaded sentences with no filler; the core mechanism and its key caveats come first. The telegraphic style ('No blind retries.') is efficient but borders on cryptic, which keeps it just below the top score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, non-idempotent mutation with no output schema and zero parameter descriptions, the definition covers merge semantics and concurrency preconditions but omits permission/auth requirements, failure behavior on ETag mismatch, and any notion of the response. Adequate to call correctly in the happy path, incomplete around failure handling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description carries the load. It meaningfully explains the `patch` parameter's merge semantics and clarifies that `if_match` must be an exact quoted ETag, which adds real value over the schema's regex. However, the `key` parameter's namespace/format and the encoding of the patch body are left entirely to the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and mechanism: 'Apply JSON Merge Patch text with an exact quoted ETag', which tells the agent this is a merge-patch mutation rather than a full replace. It does not explicitly distinguish itself from put_key or create_key, but the 'patch' verb plus merge-patch reference is enough for an agent to infer the distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The 'exact quoted ETag' and 'No blind retries' constraints imply usage context (optimistic concurrency; re-read on conflict), but there is no explicit when-to-use-this-vs-put_key guidance and no stated prerequisite for obtaining the ETag. Usage is implied rather than directed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.