Resources
~3 min read
Concept & How It Works
Why Does It Exist?
Not everything should be a tool. Resources provide passive context (config files, schemas) that clients can preload or reference, reducing LLM tool-call churn.
Real-World Analogy
MCP resources are reference books on the shelf — the agent can open them anytime, unlike tools which are actions you perform.
Visual Workflows
What is Resources?
Example
Scenario
A Postgres MCP server exposes db://schema/public as a resource listing all table definitions, preloaded into the agent's context at session start.
Solution
In Model Context Protocol, apply Resources to this scenario: A Postgres MCP server exposes db://schema/public as a resource listing all table definitions, preloaded into the agent's context at session start. Identify the inputs, run the technique, validate the output, and note one thing you would monitor in production.
Practice Task
Do this before moving to the next module — reading alone is not enough.
Open the Code Walkthrough below and run it locally. Change one parameter related to Resources (e.g. model, temperature, top_k, or tool name), observe the difference in output, and write 2–3 sentences explaining what changed.
Code Walkthrough
Highlighted lines show where Resources happens in the code.
1# Resources — minimal example2from openai import OpenAI3
4client = OpenAI() # create API client5
6# Ask the model to explain this topic7response = client.chat.completions.create( # core API call for Resources8 model="gpt-4o-mini",9 messages=[10 {"role": "system", "content": "You explain resources clearly."},11 {"role": "user", "content": f"What is resources?"},12 ],13 temperature=0,14)15print(response.choices[0].message.content) # show output for debuggingCommands to Remember
Commands to Remember
npx @modelcontextprotocol/inspector # debug MCP servers interactivelypip install mcp # Python MCP SDKuvx mcp-server-filesystem # run a filesystem MCP server
Common Mistakes
- Treating Resources as a black box without evaluation
- Ignoring cost and latency in production
- Skipping error handling for resources
Cheat Sheet
Quick recap — the most important points from this module.
Cheat Sheet
quick ref- •Resources
- •URI
- •read_resource
- •list_resources