Class: ExplainTool

Inherits:
ExplainBaseTool show all
Defined in:
lib/rails-pg-extras-mcp.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.nameObject



92
93
94
# File 'lib/rails-pg-extras-mcp.rb', line 92

def self.name
  "explain"
end

Instance Method Details

#call(sql_query:) ⇒ Object



96
97
98
99
100
101
102
103
104
105
106
107
108
# File 'lib/rails-pg-extras-mcp.rb', line 96

def call(sql_query:)
  if sql_query.to_s.empty?
    return "sql_query param is required"
  end  

  begin
    ValidateQuery.new(sql_query).call
  rescue ValidateQuery::InvalidQueryError => e
    return e.message
  end

  super(sql_query: "EXPLAIN #{sql_query}")
end