Skip to main content
Glama
Gatsuke

The Context-Saver

by Gatsuke

Prompt-aware tool suggestions (the context saver)

suggest_tools
Read-onlyIdempotent

Ranks available tools against your current prompt and returns matching upstream tools with their full JSON schemas in one response. This reduces context load by replacing the need to load every schema.

Instructions

THE core trick: pass the user's current prompt. Ranks the catalog against it and returns the best-matching upstream tools WITH their full JSON schemas in this single response — so one cheap call replaces loading every schema. Default top_k=4 keeps context lean; raise it for complex multi-tool tasks.

Input Schema

NameRequiredDescriptionDefault
top_kNoHow many candidate tools to return (default 4)
promptYesThe user's current prompt, verbatim or paraphrased
auto_loadNoReturn full schemas of matches (default true)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.2

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint, so safety is covered; the description adds real value beyond them by disclosing the response payload (full JSON schemas inline), the context-cost tradeoff of top_k, and the intent that it substitutes for repeated schema loads. It does not say what happens on zero matches or how ranking is ordered.

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?

Three tight sentences with the mechanism front-loaded and the budget advice last. The framing phrases ('THE core trick', 'the context saver') are promotional padding rather than information, but they cost little.

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

Completeness4/5

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

With no output schema, the description carries the burden of describing returns and does so concretely (matching tools plus full JSON schemas in one response). Edge behavior — empty results, ranking order, effect of auto_load=false — remains unstated.

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

Parameters4/5

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

Schema coverage is 100%, so baseline would be 3, but the description adds operational meaning: top_k is framed as a context-budget lever with guidance to raise it for multi-tool tasks. The auto_load parameter is never mentioned in the description, which is the only parameter left to schema alone.

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?

States a specific verb and resource: it ranks the tool catalog against a prompt and returns matching upstream tools with their full JSON schemas. That distinguishes it functionally from get_tool_schema and search_tools, though those siblings are never named, so the agent must infer the boundary from 'one cheap call replaces loading every schema'.

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?

Clear directive to pass the user's current prompt as the entry point, plus concrete tuning guidance ('default top_k=4 keeps context lean; raise it for complex multi-tool tasks'). It lacks an explicit when-not-to-use case, e.g. what to do when no match is returned or how it differs from calling search_tools first.

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