Skip to main content
Glama

Electronics Architect

Poll a Monte Carlo job

get_job
Read-onlyIdempotent

Poll a Monte Carlo job by the jobId run_monte_carlo_job returned. Each call first runs a few more seconds of the job's trials (3 s, up to about 5 s a call) — the job progresses only while it is polled — then answers with job (status, trials.done of trials.total, progress) and next, which says whether to call again and how many calls are likely left. Keep calling until job.status is done, failed or cancelled; do not wait between calls unless job.sliceInProgress is true (another request is running a slice — wait about five seconds). When done, result is the digest simulate_monte_carlo returns (summary, counts, seed, nodeStats). Polling uses no quota. A job is readable for 24 h after it finishes or last progressed; a job that belongs to another key is NOT_FOUND. To cancel one, DELETE /v1/jobs/{id} over REST (no refund).

Input Schema

NameRequiredDescriptionDefault
jobIdYesThe job id (`job_` followed by 20 characters) from run_monte_carlo_job.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Adds a lot beyond the readOnly/idempotent annotations: each call advances the job 3-5 s of trials, progress only happens while polling, polling consumes no quota, jobs expire 24 h after finishing or last progressing, and a job belonging to another key returns NOT_FOUND. That last point and the quota-free guarantee are precisely the operational facts an agent cannot infer from annotations.

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 purpose and the polling loop, then the terminal-state rule, then lifecycle caveats. Dense and information-rich, though the em-dash parentheticals make it read as one crowded paragraph rather than clearly separated concerns.

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?

There is no output schema, so the description carries the return burden and does it: it names the `job` fields (status, trials.done/total, progress), the `next` field's meaning and its 'how many calls left' estimate, and the `result` shape on completion. Nothing needed for correct polling or interpreting the response 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% and the single param is already documented with its `job_` + 20-char format, so baseline is 3. The description still adds provenance the schema lacks — that the id must come from run_monte_carlo_job — which is the one semantic detail that prevents a caller from passing an arbitrary id.

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?

Opens with a specific verb+resource ('Poll a Monte Carlo job') and immediately ties the input to its producer ('by the `jobId` run_monte_carlo_job returned'), which cleanly separates it from the sibling run_monte_carlo_job (starts a job) and simulate_monte_carlo (returns the digest synchronously). An agent can identify the tool without opening any 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 an explicit loop contract: keep calling until status is done/failed/cancelled, do not sleep between calls unless `job.sliceInProgress` is true, and cancel via REST DELETE instead. It also names the alternative path for getting the same digest (simulate_monte_carlo), so the when/when-not decision is fully covered.

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