/** * Tool registry — centralized registration with concurrency control, * analytics, and never-throw error handling. * * v2 exposes a single tool; the registry stays because it is the one * tested path between the MCP SDK and tool handlers. */ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js"; import { z } from "zod"; import { GameCodexTool, GameCodexToolDef, ToolDependencies } from "./tool-definition.js"; export declare class ToolRegistry { private tools; private deps; /** Register a tool definition (applies fail-closed defaults) */ register(def: GameCodexToolDef): void; /** Set shared dependencies (called once during server init) */ setDependencies(deps: ToolDependencies): void; /** Get all registered tools */ getAllTools(): GameCodexTool[]; /** * Wire all registered tools into an MCP server instance: * concurrency control → handler → analytics → error mapping. */ wireToServer(server: McpServer): void; /** Execute a tool with concurrency, analytics, and error handling applied */ private executeTool; } export declare function getToolRegistry(): ToolRegistry;