Class: MCP::Tool::InputSchema

Inherits:
Schema
  • Object
show all
Defined in:
lib/mcp/tool/input_schema.rb

Defined Under Namespace

Classes: ValidationError

Instance Attribute Summary

Attributes inherited from Schema

#schema

Instance Method Summary collapse

Methods inherited from Schema

#==, #initialize, #to_h

Constructor Details

This class inherits a constructor from MCP::Tool::Schema

Instance Method Details

#missing_required_arguments(arguments) ⇒ Object



14
15
16
17
18
# File 'lib/mcp/tool/input_schema.rb', line 14

def missing_required_arguments(arguments)
  return [] unless schema[:required].is_a?(Array)

  (schema[:required] - arguments.keys.map(&:to_s))
end

#missing_required_arguments?(arguments) ⇒ Boolean

Returns:

  • (Boolean)


10
11
12
# File 'lib/mcp/tool/input_schema.rb', line 10

def missing_required_arguments?(arguments)
  missing_required_arguments(arguments).any?
end

#validate_arguments(arguments) ⇒ Object



20
21
22
23
24
25
# File 'lib/mcp/tool/input_schema.rb', line 20

def validate_arguments(arguments)
  errors = fully_validate(arguments)
  if errors.any?
    raise ValidationError, "Invalid arguments: #{errors.join(", ")}"
  end
end