MCP Server Primitives: Resources
definition
Resources are one of MCP's three server primitives, representing data that a server exposes for an agent to read — like files, database records, API responses, or live state from connected systems. Unlike tools (which perform actions), resources are passive data sources identified by URIs that the agent or client can retrieve to populate its context.
Resources are one of MCP's three server primitives, representing data that a server exposes for an agent to read — like files, database records, API responses, or live state from connected systems. Unlike tools (which perform actions), resources are passive data sources identified by URIs that the agent or client can retrieve to populate its context. Resources enable a powerful pattern where agents dynamically discover and pull in relevant data rather than having everything pre-loaded into the initial context, effectively giving agents the ability to explore information at their own pace. Understanding resources matters because they solve the context engineering problem at the protocol level: instead of stuffing everything into a system prompt, you expose resources that the agent requests as needed. This concept connects to MCP server primitives tools for the action-oriented counterpart, retrieval-augmented generation for the broader pattern of dynamic knowledge injection, and context window budget for understanding how resource fetching helps manage context limits.