shareout_activate_version
Activate a saved version at existing unpinned links. Requires the current base_version; prior versions remain saved.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| version | Yes | ||
| document_id | Yes | ||
| base_version | Yes |
Activate a saved version at existing unpinned links. Requires the current base_version; prior versions remain saved.
| Name | Required | Description | Default |
|---|---|---|---|
| version | Yes | ||
| document_id | Yes | ||
| base_version | Yes |
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, non-idempotent and openWorld, so the safety profile is partly covered. The description adds genuinely non-obvious context: 'Requires the current base_version' signals a stale-state guard, and 'prior versions remain saved' reassures that the destructive operation is recoverable. It still omits who may call it and what happens to the affected links.
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?
Two short sentences, zero filler, with the activation action front-loaded and the precondition and persistence guarantee following immediately. Every clause earns its place.
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 three-parameter mutation with a rich annotation profile and no output schema, the description supplies the two things an agent most needs: the required concurrency token and the fact that prior versions survive. Only permission requirements and the effect on the linked documents remain unstated.
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 description coverage is 0%, so the description must carry the load. It clarifies that base_version must be *current* (an optimistic-lock token) and that version names the saved version to activate, but document_id is never explained and the version/base_version distinction remains implicit rather than stated.
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 resource ('Activate a saved version at existing unpinned links'), which distinguishes it from read-only siblings like shareout_list_versions or shareout_get_document. The scope qualifier 'at existing unpinned links' is meaningful but slightly opaque without domain knowledge, and it never explicitly contrasts itself with shareout_publish or shareout_create_link.
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 sentence 'Requires the current base_version' gives an actionable precondition, implying this is an optimistic-concurrency activation rather than a blind overwrite. However, there is no guidance on when to activate versus publish or create a new link, and no exclusions or alternative routing.
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.