Reference
Error reference
Every error the Pastepile MCP server can surface: model-visible tool errors, JSON-RPC protocol faults, and the underlying REST statuses.
1 min read · Updated
Failures surface at two layers. Tool-level failures return an isError text result the model can read and react to, so assistants recover without crashing. Protocol-level faults (malformed JSON, unknown method) use standard JSON-RPC error codes and typically indicate a client bug.
Underlying REST statuses
| Status | Code | Meaning |
|---|---|---|
| 400 | invalid_body | Malformed arguments: bad expiry or visibility, missing content. |
| 401 | unauthorized | Scope mine with a missing, invalid, or revoked API key. |
| 403 | burn_after_read | Burn pastes are never served to automated clients. |
| 403 | sealed | Time capsule still sealed until its unlock time. |
| 404 | not_found | Unknown or expired slug. |
| 404 | encrypted | End-to-end encrypted paste; unreadable by the API by design. |
| 404 | password_protected | Password-protected paste; no automated password path. |
| 413 | payload_too_large | Paste exceeds the size cap for your plan; see Limits. |
| 422 | rejected | Content tripped the server-side abuse filter. |
| 429 | rate_limited | Per-minute or daily budget exhausted; the response carries Retry-After and X-RateLimit-* headers. |
Errors caught before the network
The server validates locally where it can, so obviously bad calls never spend a request:
- Empty
contenton save and emptyqueryon search are rejected immediately. - Invalid
expiry,visibility, orscopevalues are rejected with the allowed values named. - Scope
minewithout a configured key returns a clear instruction to setPASTEPILE_API_KEY.
Refusals that are features
Four pastepile_get refusals exist to protect content, not to annoy you: encrypted, password_protected, burn_after_read, and sealed. Each returns a distinct, honest message so the assistant can tell the user exactly why the content is unavailable. The reasoning lives in the security model.