get_prompt_names
Lists available prompt templates for tasks like code review and API documentation generation in MCP Prompt Server.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/index.js:155-172 (registration)Registration of the 'get_prompt_names' tool using server.tool(), including empty input schema, inline handler, and description.server.tool( "get_prompt_names", {}, async () => { const promptNames = loadedPrompts.map(p => p.name); return { content: [ { type: "text", text: `可用的prompts (${promptNames.length}):\n${promptNames.join('\n')}` } ] }; }, { description: "获取所有可用的prompt名称" } );
- src/index.js:158-168 (handler)Inline handler function for 'get_prompt_names' that extracts names from loadedPrompts and returns them as a text content response.async () => { const promptNames = loadedPrompts.map(p => p.name); return { content: [ { type: "text", text: `可用的prompts (${promptNames.length}):\n${promptNames.join('\n')}` } ] }; },
- src/index.js:157-157 (schema)Empty input schema object for the 'get_prompt_names' tool (no parameters required).{},
- src/index.js:22-65 (helper)loadPrompts function that loads prompt files from 'prompts' directory into the global loadedPrompts array, used by the get_prompt_names handler.async function loadPrompts() { try { // 确保prompts目录存在 await fs.ensureDir(PROMPTS_DIR); // 读取prompts目录中的所有文件 const files = await fs.readdir(PROMPTS_DIR); // 过滤出YAML和JSON文件 const promptFiles = files.filter(file => file.endsWith('.yaml') || file.endsWith('.yml') || file.endsWith('.json') ); // 加载每个prompt文件 const prompts = []; for (const file of promptFiles) { const filePath = path.join(PROMPTS_DIR, file); const content = await fs.readFile(filePath, 'utf8'); let prompt; if (file.endsWith('.json')) { prompt = JSON.parse(content); } else { // 假设其他文件是YAML格式 prompt = YAML.parse(content); } // 确保prompt有name字段 if (!prompt.name) { console.warn(`Warning: Prompt in ${file} is missing a name field. Skipping.`); continue; } prompts.push(prompt); } loadedPrompts = prompts; console.log(`Loaded ${prompts.length} prompts from ${PROMPTS_DIR}`); return prompts; } catch (error) { console.error('Error loading prompts:', error); return []; } }