# play.query

> Talos next · Since next

One request to Play's query API: /entities, /entity/{id}, /contacts, /perf, /events, /trace, /frame, /navmesh, /feel, POST /raycast, POST /path; shapes in argus://docs/query-api.

Components read as {"type","props"}: flatten before entity.set_component. /entities and /feel narrow with ?id= (ids or coin#* patterns), ?name=, ?tag=, ?fields=, ?section= (feel), ?limit=, ?cursor= (page.next); an over-budget answer is summarised, saying how to narrow.

| | |
|---|---|
| Title | Query the running world |
| Mode | `editor` |
| Token cost | about 218 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 |  |  | For the POST endpoints |
| `method` | `enum` | no |  | `GET`, `POST` | GET unless a body is given |
| `path` | `string` | no | `/entities` |  | Starting with / |

## Example

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

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