Class: PromptObjects::Connectors::MCP::Tools::InspectPO

Inherits:
MCP::Tool
  • Object
show all
Defined in:
lib/prompt_objects/connectors/mcp.rb

Overview

Inspect a prompt object's details

Class Method Summary collapse

Class Method Details

.call(po_name:, server_context:) ⇒ Object



470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
# File 'lib/prompt_objects/connectors/mcp.rb', line 470

def self.call(po_name:, server_context:)
  env = server_context[:env]

  po = env.registry.get(po_name)
  unless po.is_a?(PromptObjects::PromptObject)
    return ::MCP::Tool::Response.new([{
      type: "text",
      text: JSON.generate({ error: "Prompt object '#{po_name}' not found" })
    }])
  end

  info = po.to_inspect_hash(registry: env.registry)

  ::MCP::Tool::Response.new([{
    type: "text",
    text: JSON.generate(info)
  }])
end