module RubyLLM::MCP::Providers::OpenAI::ComplexParameterSupport

def param_schema(param)

def param_schema(param)
  properties = case param.type
               when :array
                 {
                   type: param.type,
                   items: { type: param.item_type }
                 }
               when :object
                 {
                   type: param.type,
                   properties: param.properties.transform_values { |value| param_schema(value) },
                   required: param.properties.select { |_, p| p.required }.keys
                 }
               else
                 {
                   type: param.type,
                   description: param.description
                 }
               end
  properties.compact
end