Skip to main content
Glama

Run tools at once

run_tools
Destructive

Run several AskEditor tools in one request: up to 20 calls, 4 at a time (inOrder: true runs them one after another). Each call is that tool called on its own: its arguments, guards, approvals and credits apply to it alone, so a paid call answers needs_approval while the others run. Use it for independent steps: write several graphics, read several transcripts, look at several moments. Not for get_editor_url, load_skill or this server's other session tools. Returns one result per call, in order.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "calls": "<calls>"
    },
    "name": "run_tools"
  }
}

Input Schema

NameRequiredDescriptionDefault
callsYesThe tool calls.
inOrderNoTrue to run them one after another, when a later call needs an earlier one.
project_idNoThe project every call works on, unless a call names its own.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior5/5

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

Goes well past the annotations: it discloses the 20-call cap, the 4-at-a-time concurrency, that inOrder serializes execution, and that per-call guards, approvals and credits apply individually — including that one paid call can answer needs_approval while siblings continue. The return shape (one result per call, in order) is also stated. Nothing here contradicts readOnlyHint=false, destructiveHint=true or openWorldHint=true.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The batching and limits come first, then per-call isolation, then the use cases and the exclusion, then the return contract. Five tight sentences with no filler; the parenthetical on inOrder folds the ordering rule into the relevant clause.

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?

No output schema exists, so the description supplies the return contract itself (one result per call, in order) plus limits, ordering, and the approval/credits flow an agent needs before composing a batch. For a multi-call dispatcher with destructive and open-world annotations, the practical gaps are covered.

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% and the nested args/tool/project_id fields are already well documented in the schema. The description's added value is mostly the concurrency cap and the meaning of inOrder, which partially overlaps the schema's own note. Useful, but not meaningfully beyond the structured fields.

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 (run several AskEditor tools in one request) plus the batching semantics: up to 20 calls, 4 concurrently. It explicitly excludes get_editor_url, load_skill and other session tools, so the agent can separate it from most siblings. It never names call_tool as the single-invocation counterpart, which is the one differentiation it leaves to inference.

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?

Gives concrete positive cases (write several graphics, read several transcripts, look at several moments) and a hard negative scope (not for get_editor_url, load_skill, or session tools). It also explains when to set inOrder — when a later call needs an earlier one. The alternative for a single call (call_tool) is not stated, so one routing decision is left implicit.

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