Class: ExplainTool

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

Constant Summary

Constants inherited from ExplainBaseTool

ExplainBaseTool::DENYLIST

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.nameObject



104
105
106
# File 'lib/rails-pg-extras-mcp.rb', line 104

def self.name
  "explain"
end

Instance Method Details

#call(query:) ⇒ Object



108
109
110
111
112
113
114
# File 'lib/rails-pg-extras-mcp.rb', line 108

def call(query:)
  if query.downcase.include?("analyze")
    raise "This query is not allowed. It contains a denied ANALYZE keyword."
  end

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