Skip to main content
Glama

tool_invoke

Run any registered tool by name using its keyword arguments, enabling clients with limited context to discover tools via tool_catalog and execute them without loading schemas upfront.

Instructions

Invoke any registered tool by name: the companion to tool_catalog.

A client with a limited context can expose only the core tools plus this pair: discover a tool with tool_catalog, then run it here by name without ever loading its schema. arguments is the tool's keyword-argument dict.

GET THE ARGUMENT NAMES FIRST. Under the minimal toolset no schema is loaded up front, so call tool_catalog(query="<name>", with_schema=True) and use the parameters/required it returns. Guessing is a real failure mode: several tools take names that look obvious but are not (current_amps, not current_a), and the same tool can differ between backends.

Returns the tool's own result (JSON-decoded), or {"error": ...} for an unknown/disallowed name. Note: bypassing the schema means argument mistakes surface as the target tool's own error, not a pre-validation message.

Input Schema

NameRequiredDescriptionDefault
nameYes
argumentsNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.6.1

TDQS

A4.6/5.0
Behavior4/5

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

With no annotations, the description carries the burden and does well: it discloses the return contract (the target tool's own JSON-decoded result, or {"error": ...} for unknown/disallowed names) and the important trait that argument mistakes bypass pre-validation and surface as the target tool's raw error. What it omits is any warning that this dispatcher can reach destructive siblings and offers no permission/allowlist detail beyond the phrase 'unknown/disallowed name'.

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 one-line purpose and the discovery-then-invoke workflow, and every paragraph adds an actionable detail. Slightly redundant: the 'no schema loaded up front' point is made twice (in the intro and again in the GET THE ARGUMENT NAMES paragraph and the closing note).

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 generic dispatcher this is complete: it covers discovery, argument sourcing, error surface, and name-resolution pitfalls. An output schema exists, yet the description still usefully summarizes the return shape and the error shape, leaving nothing an agent needs before calling it.

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 description coverage is 0% and the schema titles ('Name', 'Arguments') convey nothing, so the description must compensate — and it does: `name` is the registered tool's name, `arguments` is that tool's keyword-argument dict, sourced from the `parameters`/`required` fields returned by tool_catalog. It does not say that `arguments` may be omitted for zero-argument tools, but the core semantics are covered.

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 verb and resource ('Invoke any registered tool by name') and immediately positions itself relative to its sibling: 'the companion to tool_catalog'. An agent can distinguish dispatching a tool from discovering one without opening either 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?

Explicitly describes the two-step workflow (discover via tool_catalog, then run here) and the exact call to make first: `tool_catalog(query="<name>", with_schema=True)`. It also names the failure mode to avoid (guessing argument names) and gives a concrete example of a non-obvious name (current_amps vs current_a), which is far beyond generic when-to-use guidance.

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

Deploy Server

Other Tools