Skip to main content
Glama

Learn a poem by heart

learn_by_heart
Read-onlyIdempotent

A plan to learn a poem by heart in a number of days (7 by default, 3 to 14): its stanzas and lines, which stanzas to learn on which day with a time estimate, the review days after, and the link to the free web trainer that does the drilling. No poem in mind: find_poems with easy_to_memorise suggests an easy first poem to learn.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "id": "<id>"
    },
    "name": "learn_by_heart"
  }
}

Input Schema

NameRequiredDescriptionDefault
idYesThe poem id, 24 hex characters.
daysNoDays to learn it in.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds genuine value beyond that by disclosing the shape of the output: schedule structure, per-day time estimates, review days, and an external trainer link, plus the 7-day default and 3–14 range.

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?

Two sentences, front-loaded with the output contents and ending with the fallback routing. The first sentence is a long enumerated list but every item is informative, so it earns its length.

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?

With only two parameters, no output schema and no nesting, the description does what is needed: it explains what a caller gets back, including the plan structure and the trainer link, so an agent knows the return without a schema. Nothing material for correct invocation is missing.

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

Parameters3/5

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

Schema description coverage is 100%, so both parameters are already documented, including the 24-hex-char format for id and the 3–14 bounds for days. The description restates the default and range but adds no new meaning about how days affects the plan's composition.

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

Purpose4/5

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

The description enumerates exactly what the tool produces: stanzas and lines, a per-day learning schedule with time estimates, review days, and a link to the web trainer. This is a rich, specific statement that an agent can distinguish from get_poem or get_analysis without opening the schema, though it phrases the purpose as a noun ("a plan to...") rather than a clear verb like "generate."

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

Usage Guidelines4/5

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

It gives an explicit routing rule for a concrete situation: if you have no poem in mind, call find_poems with easy_to_memorise first. That is real alternative guidance, but it covers only one case and says nothing about when this tool is inappropriate (e.g., for poems already memorized, or for prose).

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