Skip to main content
Glama

Bulk Execute

bulk_execute
Destructive

Fan out one router tool to many MikroTik routers in parallel by router IDs or tags; writes need confirmation, reads run immediately.

Instructions

Fan out a single-router tool to many routers in parallel (up to concurrency), targeted by routerIds or tag. Write tools need two-step confirmation for every role: call without confirmationToken to get a fleet token, then re-call with it. Read-only tools fan out immediately. Writes snapshot+journal each router for rollback. Returns per-router results with succeeded/failed counts. To fan out a read-only tool, prefer bulk_read.

Input Schema

NameRequiredDescriptionDefault
tagsNoTarget all routers with ALL of these tags (mutually exclusive with routerIds)
paramsYesParams to pass to the tool (omit routerId — injected per router)
toolNameYesName of the tool to fan out (must be a single-router tool)
routerIdsNoExplicit list of router IDs to target
concurrencyNoMax simultaneous router calls
confirmationTokenNoFleet confirmation token from a prior APPROVAL_REQUIRED response. Required to fan out any write tool.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv1.14.1
    • changedInput schema / properties / confirmationToken / description
      Previous value: -"Fleet confirmation token from a prior APPROVAL_REQUIRED response. Required to fan out a destructive tool."New value: +"Fleet confirmation token from a prior APPROVAL_REQUIRED response. Required to fan out any write tool."
  2. Addedv1.5.0
  3. Removedv1.1.0
  4. First observedv0.1.0

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already declare destructive=true/readOnly=false, but the description adds substantial context beyond them: the two-step fleet confirmation token flow, snapshot+journal per-router rollback, and the shape of the response (succeeded/failed counts). These are exactly the mutation-safety details an agent needs and that the annotations do not carry.

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?

Front-loads the core action, then sequences confirmation, rollback, return, and the alternative routing in tight sentences. Every sentence carries distinct information with no restatement of the name or title.

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 destructive, multi-target tool with no output schema, the description covers the targeting model, the confirmation requirement, rollback behavior, and return summary. Nothing an agent needs in order to invoke it correctly is missing.

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; the description still adds meaning by framing concurrency as the parallel fan-out cap, clarifying that targeting is by routerIds or tag, and explaining the confirmationToken round-trip. It does not add format/syntax beyond the schema, so it sits just above baseline.

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+resource ('fan out a single-router tool to many routers in parallel') and immediately bounds it ('targeted by routerIds or tag'). It explicitly names the sibling it is not for read-only cases ('prefer bulk_read'), so an agent can distinguish it 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?

Gives explicit when-to-use routing ('To fan out a read-only tool, prefer bulk_read') plus the write-path workflow (call without confirmationToken to get a fleet token, then re-call). The read-vs-write selection condition is fully spelled out with no inference required.

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