droplink_read_document
Read a published DropLink document and its expiry. Expired links return 404.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
Read a published DropLink document and its expiry. Expired links return 404.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safe read profile is established. The description adds valuable behavior beyond that: the document must be published, expired links return 404, and the result includes the document and its expiry. It does not cover authentication or output shape, but the annotation coverage lowers the bar.
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 with no filler. The main action, the scope, and the relevant 404 failure mode are all front-loaded. 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 single-id read tool with no output schema, the description covers the operation, the precondition that the document must be published, the expected failure signal, and that expiry is part of the result. It does not describe the response structure or auth requirements, but the annotations already establish the safety profile and the complexity is low.
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?
The schema has one required string parameter, id, with 0% description coverage, and the tool description never explicitly explains that id must be the DropLink document ID. The tool name and 'Read a published DropLink document' make the parameter inferable, but the description adds no parameter-specific meaning beyond what the schema field name already implies. With low schema coverage, this is a clear gap.
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?
The description names a specific action and resource: 'Read a published DropLink document' and its expiry. It also gives the observable edge case of expired links returning 404, which sharply distinguishes this read tool from the droplink_delete_document and droplink_publish_document siblings. There is no ambiguity about what the tool does.
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 description clearly frames this as the tool for reading already-published DropLink documents and warns that expired links will return 404, which helps an agent anticipate failure. It does not explicitly name alternatives, but the close Droplink siblings are delete and publish, so the read role is unambiguous. Slight lack of an explicit when-not-to-use statement keeps it from being a 5.
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.