Class: OmnifocusMcp::Tools::Definitions::AddOmniFocusTaskTool

Inherits:
FastMcp::Tool
  • Object
show all
Extended by:
OperationFactory
Defined in:
lib/omnifocus_mcp/tools/definitions/add_omnifocus_task_tool.rb

Overview

‘FastMcp::Tool` for `add_omnifocus_task`.

Instance Method Summary collapse

Methods included from OperationFactory

default_operation_factory, extended, operation_factory, operation_factory=

Instance Method Details

#call(**args) ⇒ Object



50
51
52
53
54
55
56
57
# File 'lib/omnifocus_mcp/tools/definitions/add_omnifocus_task_tool.rb', line 50

def call(**args)
  McpEnvelope.safely("creating task") do
    operation.call(Params::AddTaskParams.from_mcp(args)).fold(
      on_ok: ->(created) { McpEnvelope::ToolReply.success(Messages::AddOmniFocusTask.success(args, created)) },
      on_error: ->(err) { McpEnvelope::ToolReply.failure(Messages::AddOmniFocusTask.failure(err)) }
    )
  end
end