← Back to Dashboard
1. Resource Fundamentals2. Resource Templates3. Pagination & Subscriptions

Pagination & Subscriptions

📚 Resources9 min80 XP

Pagination via Cursors

For API endpoints that return massive lists, MCP supports cursor-based pagination. If a resource list response contains too much data, the server returns a nextCursor.

const listResources = async (cursor?: string) => {
  const result = await db.query({ limit: 100, cursor });
  return {
    resources: result.items.map(toResource),
    nextCursor: result.nextCursor
  };
};

Resource Subscriptions

MCP supports real-time updates! The Client can send a subscribe request for a specific URI. When the data changes, the Server pushes an event to the client over the transport telling it to re-fetch.

🧪 Knowledge Check
Press 1-4 to select1 of 3
How does MCP handle massive lists of resources limit-checking?
It streams them over WebSockets.
It zips them into a single file.
It uses standard cursor-based pagination.
It truncates data after 1000 items.
Watch: 139x Rust Speedup
Pagination & Subscriptions | Resources — MCP Academy