Public declaration syntax from forge-swift/Sources/ForgeMCP/MCPTypes.swift Original source SHA-256: 854b270b2dd8a747c78d7b8c669f64bb69cc2a35f485a50213c3bb07502aa569 Function bodies and constant values are omitted. This is not the complete implementation. Source line 13 public let mcpProtocolVersion; Source line 16 public struct MCPRequest: Codable, Sendable Source line 17 public let jsonrpc: String public let id: Int public let method: String public let params: JSONValue? public init(id: Int, method: String, params: JSONValue?; Source line 18 public let id: Int public let method: String public let params: JSONValue? public init(id: Int, method: String, params: JSONValue?; Source line 19 public let method: String public let params: JSONValue? public init(id: Int, method: String, params: JSONValue?; Source line 20 public let params: JSONValue? public init(id: Int, method: String, params: JSONValue?; Source line 22 public init(id: Int, method: String, params: JSONValue?; Source line 31 public struct MCPResponse: Codable, Sendable Source line 32 public let jsonrpc: String public let id: Int public let result: JSONValue? public let error: MCPError? public init(id: Int, result: JSONValue?; Source line 33 public let id: Int public let result: JSONValue? public let error: MCPError? public init(id: Int, result: JSONValue?; Source line 34 public let result: JSONValue? public let error: MCPError? public init(id: Int, result: JSONValue?; Source line 35 public let error: MCPError? public init(id: Int, result: JSONValue?; Source line 37 public init(id: Int, result: JSONValue?; Source line 46 public struct MCPError: Codable, Sendable Source line 48 public let code: Int /// The error message. public let message: String /// Optional additional data. public let data: JSONValue? public init(code: Int, message: String, data: JSONValue?; Source line 50 public let message: String /// Optional additional data. public let data: JSONValue? public init(code: Int, message: String, data: JSONValue?; Source line 52 public let data: JSONValue? public init(code: Int, message: String, data: JSONValue?; Source line 54 public init(code: Int, message: String, data: JSONValue?; Source line 61 public static let parseError; Source line 62 public static let invalidRequest; Source line 63 public static let methodNotFound; Source line 64 public static let invalidParams; Source line 65 public static let internalError; Source line 69 public struct MCPNotification: Codable, Sendable Source line 70 public let jsonrpc: String public let method: String public let params: JSONValue? public init(method: String, params: JSONValue?; Source line 71 public let method: String public let params: JSONValue? public init(method: String, params: JSONValue?; Source line 72 public let params: JSONValue? public init(method: String, params: JSONValue?; Source line 74 public init(method: String, params: JSONValue?; Source line 82 public struct MCPToolDefinition: Codable, Sendable Source line 84 public let name: String /// The tool description. public let description: String? /// The input schema. public let inputSchema: JSONValue? public init(name: String, description: String?; Source line 86 public let description: String? /// The input schema. public let inputSchema: JSONValue? public init(name: String, description: String?; Source line 88 public let inputSchema: JSONValue? public init(name: String, description: String?; Source line 90 public init(name: String, description: String?; Source line 98 public struct MCPResource: Codable, Sendable Source line 100 public let uri: String /// The resource name. public let name: String /// The resource description. public let description: String? /// The MIME type. public let mimeType: String? public init(uri: String, name: String, description: String?; Source line 102 public let name: String /// The resource description. public let description: String? /// The MIME type. public let mimeType: String? public init(uri: String, name: String, description: String?; Source line 104 public let description: String? /// The MIME type. public let mimeType: String? public init(uri: String, name: String, description: String?; Source line 106 public let mimeType: String? public init(uri: String, name: String, description: String?; Source line 108 public init(uri: String, name: String, description: String?; Source line 117 public struct MCPPrompt: Codable, Sendable Source line 119 public let name: String /// The prompt description. public let description: String? /// The prompt arguments. public let arguments: [MCPPromptArgument]? public init(name: String, description: String?; Source line 121 public let description: String? /// The prompt arguments. public let arguments: [MCPPromptArgument]? public init(name: String, description: String?; Source line 123 public let arguments: [MCPPromptArgument]? public init(name: String, description: String?; Source line 125 public init(name: String, description: String?; Source line 133 public struct MCPPromptArgument: Codable, Sendable Source line 135 public let name: String /// The argument description. public let description: String? /// Whether the argument is required. public let required: Bool? public init(name: String, description: String?; Source line 137 public let description: String? /// Whether the argument is required. public let required: Bool? public init(name: String, description: String?; Source line 139 public let required: Bool? public init(name: String, description: String?; Source line 141 public init(name: String, description: String?;