reload_prompts
Reloads prompt templates from the MCP Prompt Server to update available prompts for tasks like code review and API documentation generation.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/index.js:138-148 (handler)Inline handler function for the reload_prompts tool: reloads prompts using loadPrompts() and returns a text response with the number of loaded prompts.async () => { await loadPrompts(); return { content: [ { type: "text", text: `成功重新加载了 ${loadedPrompts.length} 个prompts。` } ] }; },
- src/index.js:135-152 (registration)Registration of the reload_prompts tool using server.tool(), including empty schema {}, inline handler, and description.server.tool( "reload_prompts", {}, async () => { await loadPrompts(); return { content: [ { type: "text", text: `成功重新加载了 ${loadedPrompts.length} 个prompts。` } ] }; }, { description: "重新加载所有预设的prompts" } );
- src/index.js:137-137 (schema)Input schema for reload_prompts: empty object {}, no parameters required.{},
- src/index.js:22-65 (helper)loadPrompts() helper function: loads, parses, and stores prompts from the prompts/ directory into the global loadedPrompts array.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 []; } }