class RubyLLM::MCP::Parameter
def as_json(*_args)
def as_json(*_args) to_h end
def initialize(name, type: "string", desc: nil, required: true, default: nil, union_type: nil) # rubocop:disable Metrics/ParameterLists
def initialize(name, type: "string", desc: nil, required: true, default: nil, union_type: nil) # rubocop:disable Metrics/ParameterLists super(name, type: type.to_sym, desc: desc, required: required) @properties = {} @union_type = union_type @default = default end
def item_type
def item_type @items&.dig("type")&.to_sym end
def to_h
def to_h { name: @name, type: @type, description: @desc, required: @required, default: @default, union_type: @union_type, items: @items&.to_h, properties: @properties&.values, enum: @enum } end