MCP Server Framework - v1.0.0
    Preparing search index...
    • Define a prompt with automatic registration.

      This is the recommended way to define prompts in the framework. The prompt is automatically registered in the global registry when defined.

      Type Parameters

      Parameters

      • definition: PromptDefinition<TInput>

        Prompt definition with name, description, optional input schema, and generate handler

      Returns PromptDefinition<TInput>

      The prompt definition (for re-export and type inference)

      // prompts/explain.ts - Prompt with typed arguments
      import { definePrompt } from 'mcp-server-framework';
      import { z } from 'zod';

      export const explainPrompt = definePrompt({
      name: 'explain-concept',
      description: 'Explain a technical concept clearly',
      input: z.object({
      topic: z.string().describe('The topic to explain'),
      level: z.enum(['beginner', 'intermediate', 'expert'])
      .default('intermediate')
      .describe('Target expertise level'),
      }),
      generate: async ({ topic, level }) => [
      {
      role: 'user',
      content: `Please explain ${topic} for someone at ${level} level.

      Include:
      - A clear definition
      - Key concepts
      - Practical examples
      - Common misconceptions`,
      },
      ],
      });
      // prompts/code-review.ts - Multi-turn prompt
      import { definePrompt } from 'mcp-server-framework';
      import { z } from 'zod';

      export const codeReviewPrompt = definePrompt({
      name: 'code-review',
      description: 'Start a code review conversation',
      input: z.object({
      code: z.string().describe('The code to review'),
      language: z.string().describe('Programming language'),
      }),
      generate: async ({ code, language }) => [
      {
      role: 'user',
      content: `Please review this ${language} code:\n\n\`\`\`${language}\n${code}\n\`\`\``,
      },
      {
      role: 'assistant',
      content: 'I\'ll analyze this code for best practices, potential bugs, and improvements.',
      },
      ],
      });
      // prompts/greeting.ts - No-argument prompt
      import { definePrompt } from 'mcp-server-framework';

      export const greetingPrompt = definePrompt({
      name: 'greeting',
      description: 'Standard greeting prompt',
      generate: async () => [
      {
      role: 'user',
      content: 'Hello! How can you help me today?',
      },
      ],
      });