@turbot/guardrails-mcp
Version:
MCP server for interacting with Turbot Guardrails.
32 lines (31 loc) • 1.14 kB
JavaScript
import { ListPromptsRequestSchema } from "@modelcontextprotocol/sdk/types.js";
import { logger } from "../services/pinoLogger.js";
import { errorResponse } from "../utils/responseFormatter.mjs";
// Register all available prompts
const prompts = [];
// Export prompts for server capabilities
export const promptCapabilities = {
prompts: Object.fromEntries(prompts.map(p => [p.name, {
name: p.name,
description: p.description
}]))
};
export function registerPrompts(server) {
// Register prompts list handler
server.server.setRequestHandler(ListPromptsRequestSchema, async () => {
try {
return {
prompts: Object.values(promptCapabilities.prompts)
};
}
catch (error) {
logger.error('Error listing prompts:', error);
return errorResponse(error instanceof Error ? error.message : String(error));
}
});
// Register each prompt
prompts.forEach(prompt => {
logger.debug(`Registering prompt: ${prompt.name}`);
server.prompt(prompt.name, prompt.description, prompt.handler);
});
}