overslash_read
A read-only variant of overslash_call. The server rejects any action that writes or deletes, so clients can safely skip their confirmation prompt — useful for fast iterations that just need to look something up.
Pre-release
Parameters
| Field | Type | Default | Notes |
|---|---|---|---|
service | string | — | Instance name (e.g. gmail_work). Pass the service field from an overslash_search result, not the template key. Required. |
action | string | — | Action name. Required. |
params | object | {} | Action arguments. |
verbose | boolean | false | Return the full result including response headers and the untruncated raw body. The default compact shape (status_code, duration_ms, parsed body capped at ~8 KB) is enough for almost every read. |
There is no approval_id parameter — read actions never raise an approval, and approval replays always replay a write/delete (see below).
Result shape
A successful read returns the same status: "called" shape as overslash_call:
{
"status": "called",
"result": { "status_code": 200, "duration_ms": 88, "body": { "messages": [] } },
"action_description": "List Gmail messages"
}Errors use the same typed envelope as overslash_call.
Examples
{ "service": "gmail_work", "action": "list_messages", "params": { "q": "is:unread" } }Routing a write through this tool is rejected before it executes:
{ "service": "gmail_work", "action": "send_email", "params": { "to": "alice@example.com" } }
// → error: the resolved action's risk is not `read` — use overslash_callWhat counts as read-only
The server enforces the read-only guarantee — the client doesn't have to trust the action name:
- Every call is forwarded to the action gateway with
require_risk: "read". The gateway looks up the resolved action's risk class and rejects with400if it isn'tread(write/deleteactions are refused). approval_idis rejected outright — an approval resume always replays a previously permission-gated (write/delete) action, which has no place on a read-only tool. Useoverslash_callto resume an approval.- For the
overslashplatform meta-service, only the read-class sub-actions pass:list_pending,list_services,get_service,list_templates,get_template. Anything else is refused with "not read-class; use overslash_call."
Because no call through overslash_read can mutate state, a client can skip its confirmation prompt for this tool.