MCP glossary

Core

Resource

Understand MCP resources, resource URIs, when to use resources instead of tools, and how hosted MCP servers expose contextual data.

Definition

A resource is context that an MCP server can expose to a client, such as a file, database record, generated report, or application-specific object. Resources are identified by URIs and are typically selected by the host application rather than invoked as actions.

How Astrail Uses It

Astrail focuses on hosted tool execution, but generated bundles and manifests can link durable artifacts such as endpoint catalogs, docs, and resources that help clients understand the generated server.

Implementation Checklist

Use resources for read-only context that should be referenced, not executed.

Choose durable URIs that remain stable across deployments.

Include a useful MIME type when clients need to render the content.

Avoid exposing secrets, local files, or tenant-private data as public resources.

FAQ

When should I use a resource instead of a tool?

Use a resource when the client needs context to read or attach. Use a tool when the model needs to request an action, query, calculation, or upstream API call.

Can a tool return a resource link?

Yes. A tool result can include resource links or embedded resources when the result should point the client to richer context.