veda.ng

Tools, Resources & Prompts: The Three Primitives

MCP servers expose three types of capabilities. Understanding when to use each. and who controls them. is the key to building well-designed servers.

T

Tools

Functions the LLM can call

Model-controlled. The LLM decides when to use them based on context.

R

Resources

Data the app can read

App-controlled. The host application decides when to fetch and inject them.

P

Prompts

Reusable prompt templates

User-controlled. The user selects which prompt template to use.

A common mistake is putting everything into tools. MCP gives you three distinct primitives, each with different control semantics. Using the right one for the right job makes your server more predictable, secure, and useful.