lib/ruby_llm/mcp/providers/open_ai/complex_parameter_support.rb
# frozen_string_literal: true module RubyLLM module MCP module Providers module OpenAI module ComplexParameterSupport def param_schema(param) format = { type: param.type, description: param.description }.compact if param.type == "array" format[:items] = param.items elsif param.type == "object" format[:properties] = param.properties.transform_values { |value| param_schema(value) } end format end end end end end end RubyLLM::Providers::OpenAI.extend(RubyLLM::MCP::Providers::OpenAI::ComplexParameterSupport)