UNPKG

@tanstack/ai-mcp

Version:

Host-side Model Context Protocol client for TanStack AI: discover and run MCP server tools, resources, and prompts in any adapter's chat() loop, with generated end-to-end types.

27 lines (26 loc) 1.14 kB
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js"; import { SSEClientTransport } from "@modelcontextprotocol/sdk/client/sse.js"; //#region src/transport.ts function isTransportInstance(input) { return typeof input.start === "function"; } async function resolveTransport(input) { if (isTransportInstance(input)) return input; switch (input.type) { case "http": return new StreamableHTTPClientTransport(new URL(input.url), { requestInit: { headers: input.headers }, fetch: input.fetch, authProvider: input.authProvider }); case "sse": return new SSEClientTransport(new URL(input.url), { requestInit: { headers: input.headers }, fetch: input.fetch, authProvider: input.authProvider }); case "stdio": throw new Error("stdio transport must be created via '@tanstack/ai-mcp/stdio': import { stdioTransport } from '@tanstack/ai-mcp/stdio' and pass the result as `transport`."); default: throw new Error(`Unknown MCP transport config: ${JSON.stringify(input)}`); } } //#endregion export { isTransportInstance, resolveTransport }; //# sourceMappingURL=transport.js.map