Skip to main content
Glama

emergency_stop_all

Stop all locomotives under your session's control with a single emergency command. Use this panic button for derailment or collision risk.

Instructions

Emergency-stop EVERY locomotive currently under this session's control at once.

No arguments — panic button for "stop everything NOW" (derailment, collision risk, no time to name individual locomotives). Call for "stop everything"/"stop all trains"/"arrête tout"/"arrête toutes les locos" — stop MOTION generically, no locomotive named. Sends the same decoder e-stop as emergency_stop(address) to every address this session has acquired.

NOT "cut the power"/"coupe le courant"/"coupe tout" — that means power_off_all (real power cut to every DCC system, reaching locomotives regardless of who's driving them). This only sends a throttle command, never touches track power.

LIMITATION: only reaches locomotives THIS session has acquired. A locomotive driven only from a JMRI panel or another session is NOT stopped, since only the connection holding a throttle can command it. For a guarantee covering everything regardless of driver, use power_off_all instead.

Returns {"stopped": [...addresses e-stopped...], "failed": [...]}. An address with no error is confirmed at emergency-stop speed either way (already-stopped locos are a safe no-op, not skipped silently without being reported).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Behavior5/5

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

No annotations provided, but description fully discloses behavior: sends same e-stop as emergency_stop to each acquired address, return format, and safe handling of already-stopped locos. No contradictions.

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?

Well-structured with bold emphasis, clear sections, and efficient sentences. Slightly long but all content earns its place; minor multilingual phrases ('arrête tout') add minor redundancy.

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?

Given no annotations or output schema, description covers purpose, use context, limitations, behavior, return format, and distinctions from siblings. No missing information.

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?

Zero parameters, schema coverage 100%. Baseline for 0 params is 4. Description adds no param info (unnecessary), but confirms no arguments needed.

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?

Description states 'Emergency-stop EVERY locomotive currently under this session's control at once.' It clearly distinguishes from siblings like emergency_stop (single address) and power_off_all (track power cut).

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 says when to use (panic button, no time for individual locos) and when not (power cut). Provides clear alternative: power_off_all for full guarantee. Limitations explained (only session-acquired locos).

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/HO44-PROJECT/MrJ-JMRI-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server