MCP · Tools
Tools: logs
One tool on the data plane. No human required. The description is quoted as the agent reads it.
get_logs#
Read a project's request log — the tool to debug an app: what was called, by which key plane, the status and the timing. Filters use the standard operators (eq, neq, gt, gte, lt, lte, like, in, is), e.g. plane='eq.data', status='gte.400'. Newest first by default.
| Parameter | Type | Required | Meaning |
|---|---|---|---|
project_id | string | yes | |
plane | string | no | Filter by key plane, e.g. 'eq.data', 'eq.management', 'eq.auth'. |
status | string | no | Filter by HTTP status, e.g. 'gte.400'. |
path | string | no | Filter by route template, e.g. 'like.rows'. |
method | string | no | Filter by HTTP method, e.g. 'eq.POST'. |
key_id | string | no | Filter by key: 'eq.' with a key's id from list_keys, or 'in.(…)' with a function's log_key_ids. |
order | string | no | e.g. 'ts.desc' (the default). |
limit | integer, at most 200 | no | |
cursor | string | no |
Calls GET /v1/projects/:pid/logs. Each entry carries thirteen fields — request_id, ts, method, path, status, error_code, level, message, plane, replay, key_id, account_session_id, actor — described in SQL and logs.
Three things to know before reading:
- There is no default plane filter. Without
plane, the log returns everything: the app's traffic (data), the agent's and dashboard's own calls (management), and unidentified requests (unknown). To read what the app did, passplane: "eq.data"yourself. The values ofplaneon the wire aredata,managementandunknown. key_idacceptsin.(…): the way to read one edge function's calls iskey_id: "in.(…)"with thelog_key_idsits card publishes.- Retention is 30 days and 5 000 entries. Execution output of a function (
console.log) is not readable through any tool or screen yet — only its requests to the project's API are.
