---
title: "Get Job Status"
method: POST
path: "/api/mcp/get_job_status"
tags: ["mcp"]
---

# Get Job Status

`POST /api/mcp/get_job_status`

## Request

- Base URL: `https://writer.swapp1990.org` (the document declares no server; this is the origin it was published from)
- URL: `https://writer.swapp1990.org/api/mcp/get_job_status`
- Auth: none declared

Lean status probe for a story, revision, asset, article, or chat op.

`is_terminal` is the only terminal signal clients should use.
Prefer wait_for_status over a client poll loop.

## Request body

- JobStatusInput
  - `job_id` string, required: The story job ID.
  - `kind` string: Which job family to probe: story | revision | chat_operation | asset | chapter_cover | cover_image | article. `job_id` is the id of that family (story id, asset job id, cover_job_id, operation_id, or article id).
  - `include_debug` boolean: Include noisy revision debug fields when kind=revision.

## Response `200`

Successful Response

- JobStatusResponse
  - `job_id` string, nullable
  - `kind` string, nullable
  - `id` string, nullable
  - `status` string, nullable
  - `current_step` string, nullable
  - `revision_status` string, nullable
  - `chapters_done` integer, nullable
  - `chapter_count` integer, nullable
  - `is_terminal` boolean, nullable
  - `timed_out` boolean, nullable
  - `requested_timeout_seconds` number, nullable
  - `effective_timeout_seconds` number, nullable
  - `created_at` string, nullable
  - `updated_at` string, nullable
  - `story_url` string, nullable
  - `article_url` string, nullable
  - `result` unknown
  - `error` unknown
  - `progress` unknown
  - `current_segment` unknown
  - `segment_events_tail` unknown[], nullable
    - unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/swapp1990/apis/writeforyou-mcp-api.md) · [All operations](https://skmtc.dev/swapp1990/apis/writeforyou-mcp-api/llms.txt) · [OpenAPI document](https://skmtc.dev/swapp1990/apis/writeforyou-mcp-api/revisions/ce5e2a89ab4d?raw)
