Skip to main content
Glama

Save recommendations

save_recommendations

Saves ranked candidate JSON from find_candidates, drops unknown candidates and profile entries, then returns the recommendations for display to the user.

Instructions

Save the ranking JSON written from find_candidates. Picks that name unknown candidates or profile entries are dropped. Returns the recommendations to show the user.

Input Schema

NameRequiredDescriptionDefault
topNo
answerYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.1

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already indicate this is a mutation (readOnlyHint=false) and closed-world (openWorldHint=false). The description adds meaningful behavior beyond that: invalid picks naming unknown candidates or profile entries are dropped, and the tool returns recommendations to show the user. It does not state overwrite or concurrency behavior, keeping it from a 5.

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

Conciseness5/5

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

Three short, front-loaded sentences with no wasted wording. The core action, validation behavior, and return value are each stated once and in a useful order.

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

Completeness3/5

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

For a mutation tool with a nested required object, no output schema, and zero schema description coverage, the description covers the main flow but misses important details. It does not explain the 'top' parameter, the ranking JSON shape, or whether saving replaces prior recommendations. These gaps matter for correct invocation.

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%, so the description must carry parameter meaning. It explains that 'answer' is the ranking JSON from find_candidates, but it leaves 'top' completely unexplained, including its 1–20 limit and effect on saved recommendations. The nested object structure of 'answer' is also not clarified.

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 uses a specific verb and resource ('Save the ranking JSON') and ties it directly to the sibling tool find_candidates. This lets an agent distinguish it from siblings like save_expansion or show_recommendations, though it does not fully spell out the persistence target.

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 clearly implies the tool is used after find_candidates, since it saves 'the ranking JSON written from find_candidates.' The context is strong, but there are no explicit when-not-to-use conditions or named alternatives for other save paths.

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