import * as z from 'zod/mini'; import type * as App from '../App.js'; /** Zod schemas owned by the MCP endpoint's OpenAPI description. */ export declare namespace schema { /** JSON-RPC request identifier. */ const Id: z.ZodMiniUnion, z.ZodMiniNumber, z.ZodMiniNull]>; /** JSON-RPC error payload. */ const Error: z.ZodMiniObject<{ code: z.ZodMiniNumber; data: z.ZodMiniOptional; message: z.ZodMiniString; }, z.core.$strip>; /** MCP JSON-RPC response payload. */ const Response: z.ZodMiniObject<{ error: z.ZodMiniOptional; data: z.ZodMiniOptional; message: z.ZodMiniString; }, z.core.$strip>>; id: z.ZodMiniOptional, z.ZodMiniNumber, z.ZodMiniNull]>>; jsonrpc: z.ZodMiniLiteral<"2.0">; result: z.ZodMiniOptional; }, z.core.$strip>; } /** * The MCP route group: a stateless streamable-HTTP MCP server at `/mcp` whose * tools mirror the API's data domain and its optional inbound funding domain, * plus the remote Tempo docs tools. Mount alongside the other route groups: * * ```ts * const app = App.create(options) * const fetch = app.fetch.bind(app) * app.route('/', mcp({ fetch })) * ``` * * Capture `fetch` before adding request-level wrappers, so nested calls stay * within the outer request's instrumentation lifecycle. */ export declare function mcp(options: mcp.Options): import("hono/hono-base").HonoBase; export declare namespace mcp { /** Options for the MCP route group. */ type Options = { /** Remote docs MCP source mounted as the `docs` tool group, or `false` to omit it. @default 'https://mcp.tempo.xyz/mcp' */ docs?: Source | false | undefined; /** In-process fetch handler for the composed app (e.g. `(request) => app.fetch(request)`). */ fetch: (request: Request) => Response | Promise; /** MCP server name. @default 'tempo' */ name?: string | undefined; /** Human-readable MCP server title. @default 'Tempo MCP' */ title?: string | undefined; /** MCP server version. @default '0.0.0' */ version?: string | undefined; }; /** A remote streamable-HTTP MCP server endpoint. */ type Source = string | URL | { /** Fetch handler used for MCP requests. Defaults to `globalThis.fetch`. */ fetch?: ((request: Request) => Response | Promise) | undefined; /** Headers merged into every MCP request. */ headers?: Record | undefined; /** Streamable-HTTP MCP endpoint URL. */ url: string | URL; }; } //# sourceMappingURL=mcp.d.ts.map