Creativity · MCP — pattern

MCP Prompts Capability: Deep Dive

Alongside tools and resources, the Model Context Protocol defines a 'prompts' capability: a server can publish a list of named prompt templates with typed arguments, and a client can render these as slash commands, quick actions, or library entries. This page unpacks how prompts are declared, listed, and executed — plus where the capability shines versus where you should use a tool instead.

MCP facts

Kind
pattern
Ecosystem
anthropic-mcp
Transports
stdio, sse, http

Capabilities

  • prompts/list — client enumerates all prompt templates exposed by the server
  • prompts/get — client fetches a rendered prompt with provided arguments
  • Typed arguments: each prompt declares name, description, and required params

Frequently asked questions

When should I use a prompt vs a tool?

Prompts render text the user wants to send to the model — 'summarize this PR', 'review these diffs'. Tools perform side effects — 'create issue', 'write file'. If the server action has no side effect beyond producing a prompt, use a prompt.

Do all clients support prompts?

Claude Desktop, Cursor, Zed, Continue, and Windsurf all honor prompts. Simpler clients may ignore the capability; servers should treat prompts as optional sugar rather than a hard dependency.

Can prompts reference resources?

Yes — a rendered prompt can embed @resource references that the client resolves before sending to the model. This keeps long documents out of the prompt text itself.

Are prompt arguments typed?

Yes — each argument declares name, description, and required flag. Richer schema support is an active area of the MCP spec; treat complex validation as best-effort today.

Sources

  1. MCP Prompts spec — accessed 2026-04-20
  2. MCP docs — accessed 2026-04-20