> ## Documentation Index
> Fetch the complete documentation index at: https://docs.willthispersonanswer.com/llms.txt
> Use this file to discover all available pages before exploring further.

# MCP errors

> Over MCP, errors come back inside a successful response as a tool result with isError set to true. The text starts with an uppercase code.

```json Tool result theme={null}
{
  "isError": true,
  "content": [{
    "type": "text",
    "text": "INSUFFICIENT_CREDITS: Not enough credits. 5 needed, 3 available."
  }]
}
```

## Error codes

| Code | Meaning | REST equivalent |
| - | - | - |
| `INVALID_INPUT` | A field is missing or did not pass validation, or no request has that id. | 400, 404 |
| `AUTH_FAILED` | The API key is missing, wrong or revoked. | 401 |
| `INSUFFICIENT_CREDITS` | Not enough credits. Don't retry until credits are added. | 402 |
| `DUPLICATE_REQUEST` | The idempotency key was used for different content, or the first request is still running. | 409 |
| `RATE_LIMITED` | Over 60 requests in 60 seconds. | 429 |
| `SERVICE_UNAVAILABLE` | The lookup could not run right now. Nothing was charged. Try again. | 503 |
| `INTERNAL_ERROR` | Something went wrong on our side. | 500 |

> [!NOTE]
>
> A number we could not check is not an error. It comes back in a normal result with `status: "unable_to_check"` and a reason.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.