tool_catalog
Free. Full catalog. No args → families. family='' → tools. tool='' → detail.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| tool | No | Tool name → detail. | |
| family | No | Family id → its tools. |
Free. Full catalog. No args → families. family='' → tools. tool='' → detail.
| Name | Required | Description | Default |
|---|---|---|---|
| tool | No | Tool name → detail. | |
| family | No | Family id → its tools. |
Changes observed during successful MCP inspections. Dates show when Glama detected each change.
Input schema / properties / family / descriptionAdded value: +"Family id → its tools."Input schema / properties / tool / descriptionAdded value: +"Tool name → detail."Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the read-only nature is covered. The description adds 'Full catalog' indicating comprehensive coverage, and 'Free' implying no cost. It does not disclose other behavioral aspects like pagination, output structure beyond the navigation, or rate limits, but for a simple catalog read, this is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, using five short fragments to convey the full behavior. It is front-loaded with 'Free' and 'Full catalog', then quickly states input-to-output mappings. Every word contributes value, with no wasted text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with two optional params and no output schema, the description explains the combinations: no args returns families, family returns tools, tool returns detail. It could be more explicit about what 'detail' contains, but given the tool name and context, this is sufficient and complete for typical use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers both parameters with descriptions, and description reinforces them. The description adds the default behavior 'No args → families', clarifying what happens when no parameters are provided, which the schema only implies via required: []. This extra semantic nuance justifies above baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states this is a catalog tool, with navigation patterns like 'No args → families' and 'family='<id>' → tools'. It distinguishes itself from sibling data-processing tools by being the tool for browsing available tool families and tools. However, the telegraphic style is slightly cryptic, not explicitly saying 'list available tools', so it's not a perfect 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides usage patterns (no args, family, tool) but gives no guidance on when to use this tool versus alternatives. It doesn't mention any sibling tools or scenarios where this tool is preferred. The only contextual clue is 'Free', which hints at cost, but not usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.
Several tools overlap in fetching and processing web content (fetch_extract, fetch_html, fetch_metadata, html_to_markdown), which could confuse an agent. However, descriptions clarify output types, so most tools are distinguishable.
Names follow mixed conventions: verb_noun (fetch_html, remove_background), noun_verb (csv_query, rss_parse), and noun_noun (tool_catalog, screenshot_url). Each name is descriptive, but the lack of a consistent pattern makes it harder to guess tool names.
With 17 tools, the count is slightly above the ideal 3-15 range but still manageable. The inclusion of 5 meta-tools (pricing, tool_catalog, task_recipes, memory_snippet, use_tool) inflates the count but serves a discovery purpose.
The toolkit covers a broad range of web and data tasks (fetch, parse, query, convert, image, SEO). Minor gaps exist (e.g., no OCR, no image editing), but use_tool can dynamically access additional tools, mitigating incompleteness.