Skip to content

Docs

Errors

Tool errors come back as an MCP result with isError set, a code and a hint that tells Claude (and you) what to do next.

structuredContent of an error
{
  "code": "RATE_LIMITED",
  "hint": "…",
  "retry_after_s": 2.0
}
RATE_LIMITED

Too many calls in a short time or in parallel for your plan, or an upstream service asked us to slow down.

Wait retry_after_s seconds, then retry. Claude does this on its own.

BUDGET_EXCEEDED

Your monthly allowance is used up. Rarely, a service-wide daily safety cap on upstream spending has been reached.

The hint shows your usage, the reset date and an upgrade link (/app/billing). For the service-wide cap, try again later.

NOT_FOUND

The paper id could not be resolved, or a cursor refers to a search that has expired (results are kept for 30 minutes).

Check the id, or repeat the search instead of following an old cursor.

INVALID_ID

The id does not match a supported form.

Use doi:<doi>, openalex:<W-id>, a bare DOI (10.…) or a hit’s pid.

UPSTREAM_INVALID

A data source returned something we could not validate. We log the event, never the query.

Retry once. If it keeps happening, email support with the time of the call.

ACCOUNT_SUSPENDED

Your account has been suspended, for example for abuse or a billing problem.

Email support@corroborum.com.