Skip to main content
Glama

Check job status (free)

kimi_job_status
Read-only

Monitor a background job's lifecycle after async calls: check result availability, outcome, elapsed time, and expiry without retrieving the full payload.

Instructions

Check a background job's lifecycle state without fetching the full result.

Use after any *_async call (kimi_delegate_async, kimi_consult_async, kimi_review_changes_async) or any sync consult/review/delegate (whose meta.job_id names its record). Returns status, elapsed time, expiry, and result_available; when it is true, call kimi_job_result. result_ok reports a done job's producer-declared outcome — true (success), false (a stored error envelope), or null (running, no stored envelope, an unclassifiable payload, or a record finalized before this field) — so you can spot a stored FAILURE without fetching it. It does not guarantee the payload is still fetchable; a cross-release record may report an outcome yet fail kimi_job_result with job_result_incompatible. Free — no model call.

Honor poll_after_ms between polls — for a running job it GROWS with elapsed runtime (bounded), so following it backs you off instead of tight-looping (a delegate often runs ~20s). expires_at is null while running and is set once the job finishes; results are then retained ttl_seconds past that completion.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
job_idYesThe job_id from an *_async call or a sync call's meta.job_id; recover lost ids with kimi_job_list.
workspace_rootNoAbsolute path to the target repo root — pass it to target the intended repo (MCP roots are unavailable); otherwise the call falls back to the server's own cwd and sets meta.workspace_warning.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
okYes
Install Server

TDQS

A4.7/5.0
Behavior5/5

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

Despite readOnlyHint=true, the description adds substantial non-obvious behavior: result_ok's three-state semantics, the possibility of job_result_incompatible on cross-release records, poll_after_ms backing off, expires_at lifecycle, and ttl retention. It also notes it is free/no model call. No contradiction with annotations.

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?

Long but dense and front-loaded: purpose, then usage, then state semantics, then polling protocol. Every sentence carries behavioral or routing information; the parentheticals ('a delegate often runs ~20s') are relevant, not filler.

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 polling/status tool with complex lifecycle semantics, the description covers the full call path (when to poll, what fields mean, when to escalate to kimi_job_result, edge cases like incompatible payloads). Output schema exists, so return-value detail is not required here.

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?

Input schema coverage is 100% and both parameter descriptions are already complete; the tool description restates job_id's origin but adds no new meaning for the input parameters. The poll_after_ms discussion is output behavior, not an input parameter, so baseline 3 applies.

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 uses a specific verb and resource ('Check a background job's lifecycle state') and immediately differentiates from kimi_job_result with 'without fetching the full result.' It also names the async/sync origins of job_id, making it unmistakable which call is being described.

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 to use after any *_async call or sync consult/review/delegate whose meta.job_id names the record, tells the agent to call kimi_job_result when result_available is true, and instructs honoring poll_after_ms. This is clear when-to-use guidance with named alternatives.

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

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/briandconnelly/moonbridge'

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