Skip to main content
Glama

Yardstick ATS

Restore an earlier email version

yardstick_email_templates_rollback
DestructiveIdempotent

Restore an email to an immutable version.

Input Schema

NameRequiredDescriptionDefault
email_typeYes
request_idNo
version_idYes
idempotency_keyNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • removedInput schema / properties / email_type / enum
      Removed value: -[
      -  "acknowledgment",
      -  "advancement",
      -  "interview_confirmation",
      -  "rejection",
      -  "offer_declined",
      -  "offer",
      -  "hired",
      -  "withdrawn",
      -  "on_hold",
      -  "candidate_follow_up"
      -]
    • addedInput schema / properties / email_type / pattern
      Added value: +"^[a-z][a-z0-9_]{0,99}$"
  2. First observed

TDQS

C2.4/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false, destructiveHint=true, idempotentHint=true and openWorldHint=false, which is most of the safety profile. The description adds only the word "immutable", which is a property of versions rather than a behavior of this call; it never states what current content is overwritten, whether the action is reversible, or what permissions are needed.

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

Conciseness3/5

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

It is a single front-loaded sentence with no filler, which is structurally clean. The brevity is under-specification rather than economy, though — there is simply too little text to cover a destructive four-parameter mutation.

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

Completeness2/5

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

For a destructive, non-read-only mutation with no output schema and 0% parameter description coverage, the description should at minimum identify the resource domain, the target of the restore, and any prerequisite or reversibility note. None of that is present, so an agent cannot safely invoke it from this definition alone.

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

Parameters2/5

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

Schema description coverage is 0% across four parameters, so the description carries the full explanatory burden. It only loosely implies two of them ("an email" ~ email_type, "a version" ~ version_id) and says nothing at all about request_id or idempotency_key, leaving half the surface undocumented.

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

Purpose3/5

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

The description names a verb ("Restore") and a resource ("an email") with a target ("an immutable version"), so the basic operation is inferable. However, it never says it operates on email templates, and it gives no differentiation from the close sibling yardstick_email_templates_reset or yardstick_email_templates_publish, leaving the agent to guess which of the trio to call.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no preconditions (e.g. the version must already exist via yardstick_email_template_versions_list), and no mention of alternatives such as reset. The agent gets a one-line statement of effect and nothing about the situation that selects 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.