What are MCP resources?
MCP resources are read-only context an MCP server offers your AI app, like files or records. You pick them, the AI does not.
MCP resources are pieces of data an MCP server shares with an AI app as background context, such as a file, a database schema or a record. Each has a web-style address (URI). The app decides which ones to use.
Also called MCP resource, resources/list, resources/read, resource templates, Model Context Protocol resources.
A server can list its resources, and the app can read them. The spec gives files, database schemas and application-specific information as examples. A resource might be file:///project/src/main.rs.
MoreLess
Resources are chosen by the app, not by the AI model. The spec says they are application-driven. An app might let you pick from a list, search them, or add some automatically.
A server can also offer resource templates, which are addresses with blanks, such as a city and a category. The MCP docs show travel://activities/{city}/{category} as an example. Servers can tell the app when their list changes, and apps can subscribe to updates for a resource.
Resources are one of three things a server can offer. The others are tools (actions) and prompts (instruction templates).
Related:MCP serverMCP toolsMCP promptsMCP clientModel Context Protocol (MCP)
MCP resources are data an MCP server shares with your AI app as context, such as a file, a database schema or a record. The app decides how to use them, and you often pick them yourself. The one thing to know first: how resources show up depends on your app.
In Claude Code, type @ in a prompt and resources from your connected servers appear next to your files. Reference one as @server:protocol://path, and Claude Code fetches it and attaches it to your message.
Cursor's docs also list resources as supported. Check your own app's docs for the rest.
The MCP docs say tools can write to databases or modify files, while resources give read-only access to information for context. See MCP tools and how a server fits with the app.
Good for
- Claude Code users who want to point Claude at a specific record or file
- Anyone curious why a server shows data but no action
- Builders deciding between a resource and a tool
Comparison
Resources feed context to the AI. Tools act.
| Option | What it is | Who decides | Can change things |
|---|---|---|---|
| ResourcesThis page | Context data | The app | No |
| Tools | Actions | The AI model | Yes |
| Prompts | Instruction templates | You | Not applicable |
Questions
What are MCP resources?
Data an MCP server shares with your AI app as context, such as files, database schemas or records. Each one has a web-style address. They are read, not run.
What is the difference between MCP resources and tools?
Resources supply information and are chosen by the app. Tools perform actions and are chosen by the AI model. A tool can change data. A resource only gives context.
How do I use MCP resources in Claude?
In Claude Code, type @ in your prompt, pick a resource from the list and send. Claude Code fetches it and attaches it. Cursor's docs list resources as supported too. For other apps, check your app's docs.
Can an MCP resource change my data?
No. The MCP docs describe resources as read-only access to information for context. Tools are the part of a server that can write to databases or modify files.
What is a resource template?
A resource address with blanks, such as a city and a category, so one entry covers many resources. The app fills in the blanks, and the spec allows suggesting values for them.
Do all servers offer resources?
No. A server that supports resources must declare the resources capability, so a given server may offer only some of tools, resources and prompts.
Are MCP resources safe?
The spec says servers must validate all resource addresses and sanitize file paths, and that access controls should be implemented for sensitive resources. Our advice: only add servers from companies you trust, since a resource can hold whatever the server returns.
Are resources the same as files in the chat?
Not exactly. They work like attachments that a server supplies. In Claude Code they appear next to files in the @ menu.
Sources
Docs, issue trackers and discussions this page is built from.
Show all 5Hide
- Resources · modelcontextprotocol.io
- Understanding MCP servers · modelcontextprotocol.io
- Connect Claude Code to tools via MCP · code.claude.com
- Model Context Protocol (MCP) | Cursor Docs · cursor.com
- Prompts · modelcontextprotocol.io