Class: RosettAi::Mcp::Tools::EnginesTool
- Inherits:
-
Object
- Object
- RosettAi::Mcp::Tools::EnginesTool
- Defined in:
- lib/rosett_ai/mcp/tools/engines_tool.rb
Overview
MCP tool: manage and query rai engines.
Lists, detects, and shows status of installed engines. Read-only operation.
Constant Summary collapse
- TOOL_NAME =
Returns MCP tool identifier string.
'rosett_ai_engines'- DESCRIPTION =
Returns Human-readable description of this tool.
'List, detect, or show status of rai engines'- ANNOTATIONS =
Returns MCP protocol annotations describing tool capabilities.
{ 'readOnlyHint' => true, 'destructiveHint' => false, 'idempotentHint' => true, 'openWorldHint' => false }.freeze
- VALID_ACTIONS =
Returns Set of permitted action values.
['list', 'detect', 'status'].freeze
- INPUT_SCHEMA =
Returns JSON Schema defining the tool input parameters.
{ type: 'object', properties: { action: { type: 'string', enum: ['list', 'detect', 'status'], description: 'Engine action (default: list)' } } }.freeze
Instance Method Summary collapse
-
#call(action: 'list') ⇒ Hash
Executes the engine query.
Instance Method Details
#call(action: 'list') ⇒ Hash
Executes the engine query.
49 50 51 52 53 54 55 56 57 58 59 |
# File 'lib/rosett_ai/mcp/tools/engines_tool.rb', line 49 def call(action: 'list') return ResponseHelper.error("Invalid action: #{action}") unless VALID_ACTIONS.include?(action) case action when 'list' then action_list when 'detect' then action_detect when 'status' then action_status end rescue StandardError => e ResponseHelper.error("Engine #{action} failed: #{e.}") end |