# play.capture

> Talos next · Since next

Render a frame of the running game, overlays optional (colliders, navmesh, paths), to out or a temp file, shown to you (max 1024 px) unless image is false; a clip is one sheet of up to 12 numbered frames.

hold: actions held meanwhile, as play.input's. kind material: a material alone under the scene's sky.

| | |
|---|---|
| Title | Capture a frame |
| Mode | `editor` |
| Token cost | about 245 tokens (in the default list, paid on every call) |
| Toolset | core |

## Arguments

| Argument | Type | Required | Default | Allowed values | Description |
|---|---|---|---|---|---|
| `agent` | `string` | no |  |  | The name of the agent making the call, when several agents share one connection: each named agent is its own actor and plays its own game. Leave it out when there is one agent. |
| `body` | `object` | no |  |  | {kind: frame\|clip\|at\|views\|material, width, height, overlays: ["navmesh"], at: [x,y,z], look: [x,y,z], seconds, entity, material: asset id or material JSON, shape: sphere\|cube\|plane}, or these top-level |
| `hold` | `string \| object[]` | no |  |  |  |
| `image` | `boolean` | no |  |  | `false` leaves the picture out of the answer. |
| `out` | `string` | no |  |  | The PNG; a clip's other frames go beside it |
| `ui` | `boolean` | no | `true` |  | false leaves the UI out |

## Example

An MCP `tools/call` with the required arguments (placeholders in angle brackets).

```json
{
  "name": "play.capture",
  "arguments": {}
}
```
