Skip to main content

Overview

Resource errors cover failures related to MCP resources — not found, read failures, and invalid URIs. ResourceNotFoundError includes a custom toJsonRpcError() method that returns an MCP-compliant JSON-RPC error with the resource URI.

Error Reference

ResourceNotFoundError

Thrown when a requested resource URI does not match any registered resource.
PropertyTypeValue
codestringRESOURCE_NOT_FOUND
statusCodenumber404
isPublicbooleantrue
uristringThe requested URI
mcpErrorCodenumber-32002
new ResourceNotFoundError(uri: string)
JSON-RPC format:
error.toJsonRpcError();
// { code: -32002, message: "Resource not found: file:///missing.txt", data: { uri: "file:///missing.txt" } }
Example:
import { ResourceNotFoundError } from '@frontmcp/sdk';

throw new ResourceNotFoundError('file:///missing.txt');

ResourceReadError

Thrown when reading a resource fails. This is an internal error — details are hidden from clients.
PropertyTypeValue
codestringRESOURCE_READ_ERROR
statusCodenumber500
isPublicbooleanfalse
originalErrorError | undefinedThe underlying cause
new ResourceReadError(uri: string, originalError?: Error)
Example:
import { ResourceReadError } from '@frontmcp/sdk';

try {
  const data = await fs.readFile(path);
} catch (error) {
  throw new ResourceReadError('file:///data.json', error);
}

InvalidResourceUriError

Thrown when a resource URI does not conform to RFC 3986 or is otherwise malformed.
PropertyTypeValue
codestringINVALID_RESOURCE_URI
statusCodenumber400
isPublicbooleantrue
new InvalidResourceUriError(uri: string, reason?: string)
Example:
import { InvalidResourceUriError } from '@frontmcp/sdk';

throw new InvalidResourceUriError('no-scheme', 'URI must have a valid scheme');