In depth
An MCP prompt is a server-authored message template that appears in the host UI for easy reuse. Unlike tools (which the LLM calls autonomously) or resources (which the host reads), prompts are user-triggered: the human picks a prompt, supplies any arguments, and the server returns a composed message that's injected into the conversation.
Prompts are a way for MCP servers to ship workflows, not just primitives. A GitHub MCP could expose a `/review-pr` prompt that takes a PR number, fetches the diff, and produces a pre-composed review prompt for the LLM. Users click once; the server handles all the boilerplate.
Each prompt has a name, description, and optional arguments (with JSON Schema). When invoked, it returns a list of messages that the host adds to the conversation. This gives servers a UI-level presence without building their own UI.
Claude Code surfaces prompts as slash commands; Cursor surfaces them in a palette. Not all hosts support prompts yet, but the feature is part of the MCP spec.