/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod/v3"; import { remap as remap$ } from "../../lib/primitives.js"; import { safeParse } from "../../lib/schemas.js"; import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; import { McpPrompt, McpPrompt$inboundSchema } from "./mcpprompt.js"; import { McpResource, McpResource$inboundSchema } from "./mcpresource.js"; import { McpTool, McpTool$inboundSchema } from "./mcptool.js"; export type Mcp = { prompts?: Array | null | undefined; protocolVersion?: string | undefined; resources?: Array | null | undefined; serverName?: string | undefined; serverVersion?: string | undefined; tools?: Array | null | undefined; }; /** @internal */ export const Mcp$inboundSchema: z.ZodType = z .object({ prompts: z.nullable(z.array(McpPrompt$inboundSchema)).optional(), protocol_version: z.string().optional(), resources: z.nullable(z.array(McpResource$inboundSchema)).optional(), server_name: z.string().optional(), server_version: z.string().optional(), tools: z.nullable(z.array(McpTool$inboundSchema)).optional(), }).transform((v) => { return remap$(v, { "protocol_version": "protocolVersion", "server_name": "serverName", "server_version": "serverVersion", }); }); export function mcpFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => Mcp$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'Mcp' from JSON`, ); }