Skip to main content
Glama

Use Tool

use_tool

Call a ToolRouter catalogue tool. Prefer route with a natural-language intent when you do not already know the tool and skill — it picks them, fills arguments, and runs the call. Use discover when you need schemas or a catalogue listing, then pass the exact tool name and skill here. IMPORTANT: "discover", "route", "credits_balance", and other built-in tools are NOT catalogue tools — call them directly, never through use_tool. Long-running tools return a job_id — poll with job_get. If a skill needs an image_url or file URL and you have a local file or base64 image, use file_write first to get a hosted URL, then pass that URL to the skill. BRAIN: Some tools require you to consult brain_query first. If use_tool returns an error about brain_context, call brain_query with a relevant query, then pass the result text as brain_context in your use_tool input.

Input Schema

NameRequiredDescriptionDefault
toolYesTool reference from discover results, e.g. "web-search"
inputYesSkill input parameters (see discover for schema). For persona-using tools, include persona_file_id from discover or persona_list. For scene-using tools, include scene_file_id from discover or scene_list. For product-using tools, include product_file_id from discover or product_list. For outfit-using tools, include outfit_file_id from discover or outfit_list. For style-reference tools, include style_reference_id (from discover or file_list), style_reference_query (semantic search), or style_reference_prompt (inline prose). For image-composition tools (e.g. generate-image image_to_image), pass any combination of scene_file_id, persona_file_id, product_file_ids[] (from file_list section "products"), outfit_file_ids[] (section "outfits"), and raw image_urls[] — the gateway resolves and merges them into a single image_urls array (max 4 by default).
skillYesSkill name from discover results, e.g. "search"
backendNoRoute the same model through interchangeable providers. order prioritises providers; only restricts; ignore excludes; allow_fallbacks defaults true.
billingNoWhich account to bill. "personal", "team" (auto-resolves if on one team), a team slug ("humanleap"), or a team ID ("team:m57df8c..."). Omit to use your default.
brain_contextNoBrain knowledge from brain_query. Pass at the top level of use_tool (alongside "tool", "skill", "input") — NOT inside input. Call brain_query first, then paste the result text here to clear the brain gate.
response_formatNoResponse verbosity. "concise" (default) strips noise, returns essential data only. "detailed" returns everything including raw metadata.concise

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations only declare readOnly=false, openWorld=true, idempotent=false, destructive=false. The description adds substantial non-annotation behavior: long-running calls return job_id to poll via job_get, brain-gated tools error and require brain_query output re-passed as brain_context, built-in tools must be invoked directly, and local files must be hosted via file_write before use.

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?

Information-dense and largely front-loaded: the core action and the route/discover alternatives come first, followed by caveats. It is long, but for a 7-parameter gateway tool most sentences carry distinct routing, error-recovery, or precondition content rather than filler.

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 high-complexity dispatcher with 7 params, nested objects, open-world access and no output schema, the description covers alternatives, error recovery (brain_context, job polling), preconditions (file hosting) and exclusion rules. Nothing an agent needs to call this correctly 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 the schema already documents tool, skill, input, backend, billing, brain_context and response_format. The description reinforces the critical top-level placement of brain_context and notes the max-4 image merge default, but it mostly restates what the schema already carries. Baseline 3 applies.

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 specific action on a specific resource: dispatch a ToolRouter catalogue tool by name and skill. It explicitly draws the boundary against siblings, naming discover, route, credits_balance as NOT catalogue tools that must be called directly. An agent can distinguish use_tool from route/discover without opening the schema.

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?

Gives explicit routing guidance: prefer route when tool+skill are unknown, use discover to obtain schemas/listing first, and call use_tool only with exact tool and skill names. It also covers the job_id polling path, the file_write prerequisite for image/file URLs, and the brain_query prerequisite when a brain_context error is returned.

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.