Skip to main content
Glama

Restore deleted drop

lnkdrp_restore_drop
Idempotent

A drop is one email template sent from the member's own Gmail to people picked for it and the people on its contact lists, each person with their own tracked link to each of the template's documents. Brings back a drop (a campaign in the API) deleted with lnkdrp_delete_drop (or in the app), within 30 days of the delete, in the state it had: active, sent or archived. Its id is the campaignId in the delete's result, and a row of lnkdrp_list_deleted with kind campaign. Refusals: not_found when the id is unknown here (another person's private drop included) or the drop was permanently removed (past its 30 days); validation when it is not deleted (details.code not_deleted), when the workspace is at its cap on drops that are not archived (details.code campaigns_limit; a drop deleted while archived comes back archived and is not refused), or when its workspace is deleted (details.code conflict). A viewer cannot restore (forbidden).

Input Schema

NameRequiredDescriptionDefault
campaignIdYesThe drop's id (campaignId, 24 hex chars), from lnkdrp_list_drops.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already say the operation is non-readonly, idempotent, and non-destructive, but the description adds substantial behavioral context: a 30-day restore window, state preservation, permission requirement (viewer forbidden), and exact refusal codes (not_found, not_deleted, campaigns_limit, conflict). This is well beyond what the structured annotations convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the resource definition and then covers restore behavior and refusals without wasted sentences. It is dense as a single paragraph, and the refusal conditions could be easier to scan as a list, but the length is justified by the complexity of the operation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter mutation with no output schema, the description covers the critical context an agent needs: time window, resulting state, id source, permission restriction, and all known refusal codes with their meanings. Nothing material appears to be missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the campaignId description already covers the 24-hex format and lnkdrp_list_drops source. The tool description adds useful source semantics not present in the schema: the id is the campaignId from the delete's result or a row in lnkdrp_list_deleted with kind campaign.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Brings back a drop') and defines what a drop is in concrete terms. It explicitly ties the tool to lnkdrp_delete_drop and distinguishes it from listing deleted items via lnkdrp_list_deleted, so an agent can tell it apart from siblings without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives explicit conditions for use: within 30 days of deletion, restoring to the prior state (active, sent, archived), and identifies where the id comes from (delete result or a row of lnkdrp_list_deleted with kind campaign). It also names when the tool refuses, effectively covering when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources