Skip to main content
Glama

route_task

Read-only

WHEN TO CALL: first, whenever (1) you need live external data or an action none of your connected tools covers, (2) a connected MCP tool fails and you need a working substitute now, or (3) the user asks which MCP server or tool to use for a task. Describe the task in plain language; get the single best live tool, ready to call: its endpoint (MCP URL or package to launch), input schema with example arguments, call hints, reliability verdict, free or paid with the exact price and how to pay, and ranked fallbacks (bestFree and bestValue included). freeOnly / requireAutomatable / maxPricePerCall narrow the choice. Replaces discover_tools + check_tool_reliability + prepare_tool_call + find_alternatives in one call.

Input Schema

NameRequiredDescriptionDefault
taskYesPlain-language description of what you want to do (e.g. 'send a slack message').
viewNo'full' (default, all fields) or 'compact' (lean, far fewer tokens — just what you need to call + fail over + pay + report).
categoryNoOptional capability category to narrow the choice.
freeOnlyNoOnly consider FREE tools (many callers want this).
fallbacksNoHow many backup tools to return (default 5, max 10).
maxPricePerCallNoCap per-call price in USD; paid tools above this are excluded.
maxToolListTokensNoSkip servers whose whole tool list costs more than this many tokens to load into context.
requireAutomatableNoOnly tools an agent can pay for autonomously (free or x402/USDC) — for unattended agents that can't do a human card/OAuth signup.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / maxToolListTokens
      Added value: +{
      +  "description": "Skip servers whose whole tool list costs more than this many tokens to load into context.",
      +  "type": "number"
      +}
  2. Changed1 schema field changed
    • changedInput schema / properties / fallbacks / description
      Previous value: -"How many backup tools to return (default 3, max 8)."New value: +"How many backup tools to return (default 5, max 10)."
  3. Changed4 schema fields changed
    • addedInput schema / properties / freeOnly
      Added value: +{
      +  "description": "Only consider FREE tools (many callers want this).",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / maxPricePerCall
      Added value: +{
      +  "description": "Cap per-call price in USD; paid tools above this are excluded.",
      +  "type": "number"
      +}
    • addedInput schema / properties / requireAutomatable
      Added value: +{
      +  "description": "Only tools an agent can pay for autonomously (free or x402/USDC) — for unattended agents that can't do a human card/OAuth signup.",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / view
      Added value: +{
      +  "description": "'full' (default, all fields) or 'compact' (lean, far fewer tokens — just what you need to call + fail over + pay + report).",
      +  "type": "string"
      +}
  4. Changed4 schema fields changed
    • removedInput schema / properties / freeOnly
      Removed value: -{
      -  "description": "Only consider FREE tools (many callers want this).",
      -  "type": "boolean"
      -}
    • removedInput schema / properties / maxPricePerCall
      Removed value: -{
      -  "description": "Cap per-call price in USD; paid tools above this are excluded.",
      -  "type": "number"
      -}
    • removedInput schema / properties / requireAutomatable
      Removed value: -{
      -  "description": "Only tools an agent can pay for autonomously (free or x402/USDC) — for unattended agents that can't do a human card/OAuth signup.",
      -  "type": "boolean"
      -}
    • removedInput schema / properties / view
      Removed value: -{
      -  "description": "'full' (default, all fields) or 'compact' (lean, far fewer tokens — just what you need to call + fail over + pay + report).",
      -  "type": "string"
      -}
  5. Changed1 schema field changed
    • addedInput schema / properties / view
      Added value: +{
      +  "description": "'full' (default, all fields) or 'compact' (lean, far fewer tokens — just what you need to call + fail over + pay + report).",
      +  "type": "string"
      +}
  6. Changed3 schema fields changed
    • addedInput schema / properties / freeOnly
      Added value: +{
      +  "description": "Only consider FREE tools (many callers want this).",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / maxPricePerCall
      Added value: +{
      +  "description": "Cap per-call price in USD; paid tools above this are excluded.",
      +  "type": "number"
      +}
    • addedInput schema / properties / requireAutomatable
      Added value: +{
      +  "description": "Only tools an agent can pay for autonomously (free or x402/USDC) — for unattended agents that can't do a human card/OAuth signup.",
      +  "type": "boolean"
      +}
  7. Added

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already say readOnly (consistent — routing does not mutate anything), and the description adds substantial context the annotations do not: it enumerates the full response payload (endpoint, input schema with example args, call hints, reliability verdict, price and payment method, ranked fallbacks) and explains that freeOnly/requireAutomatable/maxPricePerCall narrow the candidate set. It could go one step further on latency/caching behavior, but it already carries far more than its annotations.

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?

Front-loaded with the trigger conditions and then a compact payload description; both sentences earn their place. It is dense and slightly long for one paragraph, but there is no filler and the WHEN TO CALL / what-you-get / narrowing / supersedes order is logical.

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?

For a tool with no output schema, the description must explain the return shape — and it does, itemizing every field of the routed result including fallbacks and pricing. Combined with the trigger conditions and parameter narrowing notes, an agent has everything needed to call and interpret it correctly.

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 the baseline is 3, but the description adds value by grouping the constraint parameters into a single clause ('freeOnly / requireAutomatable / maxPricePerCall narrow the choice') and by tying requireAutomatable to the unattended-agent use case. It gives the agent a mental model of how 'task' vs. the filter parameters interact, which the schema alone does not.

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

Purpose5/5

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

States a concrete action — resolve a plain-language task to a single best live tool with endpoint, schema, and fallbacks — which is clearly distinct from siblings like discover_tools or prepare_tool_call. It even names the four sibling tools it supersedes, so an agent can route unambiguously.

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

Usage Guidelines5/5

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

Opens with an explicit 'WHEN TO CALL: first' plus three enumerated trigger conditions (missing capability, failing connected tool, user asking which tool to use). This is the strongest possible form of when-to-use guidance and leaves nothing to inference.

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