Skip to main content

MCP Error Codes

Error Hierarchy

Base Error Classes

McpError (Abstract)

Base class for all MCP-related errors.

PublicMcpError

Errors safe to expose to clients (validation errors, not found, etc.).

InternalMcpError

Errors that should NOT expose details (server errors, unexpected failures).

Error Categories

Tool Errors

ToolNotFoundError, ToolExecutionError

Resource Errors

ResourceNotFoundError, ResourceReadError

Validation Errors

InvalidInputError, InvalidOutputError

Auth Errors

UnauthorizedError, AuthorizationRequiredError

Agent Errors

AgentNotFoundError, AgentExecutionError

Rate Limit Errors

RateLimitError, QuotaExceededError

Usage Patterns

Throwing Errors

Using fail()

Error with Details

Custom toJsonRpcError

Some errors override toJsonRpcError() for custom data:

Error Properties

Best Practices

Use Specific Error Classes

Preserve Original Errors

Don’t Expose Internal Details

Use Error IDs for Tracking

Import