Which statements correctly describe the MCP primitive types?
Same topic, related formats. Practice these next.
Same topic, related formats. Practice these next.
MCP servers expose three primitives: tools (model-initiated, side-effectful), resources (app-initiated, read-only), and prompts (user-initiated templates). Each has a distinct initiator.
Picture a kitchen with three drawers. The first drawer holds appliances the chef reaches for on their own to cook something, which changes the meal. Those are tools, the model decides to use them. The second drawer holds recipe cards, read-only references someone hands the chef when needed, and the chef never rewrites them. Those are resources, the app decides what to pass in. The third drawer holds pre-written order forms a diner picks from a menu to start a request. Those are prompts, the user picks them. The whole trick is remembering who opens each drawer: the chef, the kitchen staff, or the diner. Mixing up who initiates what is the classic mistake.
Everything you need to truly understand this topic: intuition, mechanics, step by step explanation, code, formulas, and worked example. Click to expand.
Everything you need to truly understand this topic: intuition, mechanics, step by step explanation, code, formulas, and worked example.
Everything important, quickly.
3 min: name the three primitives, state the initiator for each, then explain why resources are read-only and why approval is a host policy rather than a spec rule.
| Primitive | Initiator | Side effects | Key field |
|---|---|---|---|
| Tools | Model | Yes, may mutate state | inputSchema |
| Resources | Application | No, read-only | URI |
| Prompts | User | No, expands a template | arguments / slots |
Real products, models, and research that use this idea.
What an interviewer would ask next. Try answering before peeking at the approach.
Red flags and common mistakes that signal junior thinking. Click to expand.
Thinking resources are model-initiated or writable. Resources are read-only and pulled by the host application, never invoked by the model.
The night-before-the-interview bullets. Scan these on the way to the call.
Primary sources. Skim if you want the original framing.