From e60c7b750d955a036a841577e747b7ae29946ace Mon Sep 17 00:00:00 2001 From: Naomi Carrigan Date: Thu, 7 Aug 2025 12:42:28 -0700 Subject: [PATCH] feat: error logging --- bot/src/modules/ai.ts | 5 ++++- server/src/index.ts | 21 ++++++++++++++++++++- 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/bot/src/modules/ai.ts b/bot/src/modules/ai.ts index 895e723..2ad0fb9 100644 --- a/bot/src/modules/ai.ts +++ b/bot/src/modules/ai.ts @@ -50,7 +50,10 @@ export const ai = async( name: "nhcarrigan-mcp", type: "url", url: "https://hikari.nhcarrigan.com/api/mcp", - authorization_token: "hikari" + tool_configuration: { + allowed_tools: ["docs"], + enabled: true + } }, ], messages: messages.map((message) => { diff --git a/server/src/index.ts b/server/src/index.ts index 9942615..bec3626 100644 --- a/server/src/index.ts +++ b/server/src/index.ts @@ -8,7 +8,7 @@ import cors from "@fastify/cors"; import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js"; import fastify from "fastify"; // eslint-disable-next-line @typescript-eslint/naming-convention -- 'Tis a class. -import FastifyMcpServer from "fastify-mcp-server"; +import FastifyMcpServer, { getMcpDecorator } from "fastify-mcp-server"; import { documentationData } from "./data/docs.js"; import { corsHook } from "./hooks/cors.js"; import { ipHook } from "./hooks/ips.js"; @@ -54,6 +54,25 @@ mcp.tool("docs", () => { }; }); +const mcpServer = getMcpDecorator(server); + +const sessionManager = mcpServer.getSessionManager(); + +// Session created +sessionManager.on("sessionCreated", (sessionId: string) => { + void logger.log("debug", `New MCP session: ${sessionId}`); +}); + +// Session destroyed +sessionManager.on("sessionDestroyed", (sessionId: string) => { + void logger.log("debug", `MCP session ended: ${sessionId}`); +}); + +// Transport errors +sessionManager.on("transportError", (sessionId: string, error: Error) => { + void logger.error(`Error in session ${sessionId}:`, error); +}); + await server.register(FastifyMcpServer, { endpoint: "/mcp", server: mcp.server,