Skip to main content
Glama

Recover Failed Resource

simulation.recover_resource

Recover one reversible failed resource in a temporary anonymous demo simulation. No API key required for this temporary anonymous demo operation. Lower traffic to a serviceable level first, then provide resourceId or resourceName from simulation.create, simulation.step, or simulation.metrics. This deactivates applicable instance_down/database_overload failures for only the selected resource and returns recoveryProgress with parked, cooling_down, or healthy state plus cooldown counters. It cannot restore an instance_kill because that failure permanently removes the resource. The likely next tool is simulation.step; keep stepping and inspect the targeted resource until recoveryProgress.state is healthy. Pass simulationId from simulation.create when using a fresh MCP session; a preserved session may omit it. Authenticate with an API key to unlock all 62 tools and unlimited simulations.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
resourceIdNoID of the failed resource to recover
resourceNameNoExact case-insensitive name of the failed resource to recover
simulationIdNoSimulation ID returned by simulation.create. Preserve Mcp-Session-Id to omit this field and use the session's current simulation; if your connector starts a fresh MCP session for each call (for example Grok Bot or Cursor), pass this explicit ID after every fresh initialization. A fresh session has no current-simulation pointer and returns NO_ACTIVE_SIMULATION when the ID is omitted. Anonymous capabilities are short-lived (30 minutes by default), unguessable, and revoked when the demo expires or is deleted; proxy IP changes do not invalidate them. Do not treat the ID as a durable share link.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
simulationIdNo
recoveryStateNo
previousHealthNo
stepsToHealthyNo
recoveryProgressNo
resolvedResourceIdNo
simulationIdSourceNo
resolvedResourceNameNo
deactivatedFailureIdsNo
stepsToHealthyIsLowerBoundNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.8/5.0
Behavior5/5

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

Annotations are sparse (all false), so the description carries the transparency burden. It clearly discloses side-effect scope ('for only the selected resource'), return-state semantics (parked, cooling_down, healthy, cooldown counters), unrecoverable failure behavior, anonymous session constraints, and API-key/auth implications. This goes well beyond what the annotations convey.

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?

The description is front-loaded with purpose and prerequisites and stays organized, but it repeats 'temporary anonymous demo' and closes with a somewhat promotional API-key line ('unlock all 62 tools') that is tangential to correct invocation. Slightly longer than necessary, but not wasteful enough to drop below 4.

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 the schema, annotations, and output schema, the description covers all information an agent needs: preconditions, exact recoverable failure types, parameter provenance, session handling, auth constraints, and post-recovery next step. There are no obvious gaps that would cause mis-selection or mis-invocation.

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?

Input schema coverage is 100%, so the baseline is 3; the description adds meaning anyway by stating that resourceId or resourceName should come from prior simulation tools and implying one of them must be supplied. It also restates the simulationId fresh-session rule, which is already in the schema, so the added value is real but modest.

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?

The first sentence names the exact action and scope: 'Recover one reversible failed resource in a temporary anonymous demo simulation.' It also distinguishes recoverable failure types (instance_down/database_overload) from the unrecoverable instance_kill, leaving no ambiguity about what this tool does relative to siblings like simulation.inject_failure or simulation.step.

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?

The description gives an explicit precondition ('Lower traffic to a serviceable level first'), tells where to get the ID ('from simulation.create, simulation.step, or simulation.metrics'), and states a when-not case ('It cannot restore an instance_kill'). It also recommends the next action: use simulation.step and inspect until recoveryProgress.state is healthy.

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