Module: OmnifocusMcp
- Defined in:
- lib/omnifocus_mcp/json_rpc_compat.rb,
lib/omnifocus_mcp/mcp.rb,
lib/omnifocus_mcp/config.rb,
lib/omnifocus_mcp/logger.rb,
lib/omnifocus_mcp/result.rb,
lib/omnifocus_mcp/parsers.rb,
lib/omnifocus_mcp/version.rb,
lib/omnifocus_mcp/utils/blank.rb,
lib/omnifocus_mcp/tools/params.rb,
lib/omnifocus_mcp/infrastructure.rb,
lib/omnifocus_mcp/resources/base.rb,
lib/omnifocus_mcp/tools/messages.rb,
lib/omnifocus_mcp/utils/iso_date.rb,
lib/omnifocus_mcp/tools/generators.rb,
lib/omnifocus_mcp/tools/operations.rb,
lib/omnifocus_mcp/tools/presenters.rb,
lib/omnifocus_mcp/utils/date_filter.rb,
lib/omnifocus_mcp/tools/batch_report.rb,
lib/omnifocus_mcp/utils/apple_script.rb,
lib/omnifocus_mcp/tools/database_stats.rb,
lib/omnifocus_mcp/tools/query_statuses.rb,
lib/omnifocus_mcp/utils/date_formatting.rb,
lib/omnifocus_mcp/utils/script_execution.rb,
lib/omnifocus_mcp/infrastructure/js_embed.rb,
lib/omnifocus_mcp/resources/inbox_resource.rb,
lib/omnifocus_mcp/resources/stats_resource.rb,
lib/omnifocus_mcp/resources/today_resource.rb,
lib/omnifocus_mcp/tools/messages/edit_item.rb,
lib/omnifocus_mcp/tools/messages/list_tools.rb,
lib/omnifocus_mcp/tools/params/mcp_boundary.rb,
lib/omnifocus_mcp/resources/flagged_resource.rb,
lib/omnifocus_mcp/resources/project_resource.rb,
lib/omnifocus_mcp/tools/generators/edit_item.rb,
lib/omnifocus_mcp/tools/generators/list_tags.rb,
lib/omnifocus_mcp/tools/messages/add_project.rb,
lib/omnifocus_mcp/tools/messages/remove_item.rb,
lib/omnifocus_mcp/tools/operations/edit_item.rb,
lib/omnifocus_mcp/tools/operations/list_tags.rb,
lib/omnifocus_mcp/tools/presenters/list_tags.rb,
lib/omnifocus_mcp/utils/apple_script_helpers.rb,
lib/omnifocus_mcp/infrastructure/apple_script.rb,
lib/omnifocus_mcp/utils/apple_script_envelope.rb,
lib/omnifocus_mcp/infrastructure/script_runner.rb,
lib/omnifocus_mcp/tools/generators/add_project.rb,
lib/omnifocus_mcp/tools/generators/remove_item.rb,
lib/omnifocus_mcp/tools/operations/add_project.rb,
lib/omnifocus_mcp/tools/operations/remove_item.rb,
lib/omnifocus_mcp/tools/presenters/query_reply.rb,
lib/omnifocus_mcp/parsers/apple_script_envelope.rb,
lib/omnifocus_mcp/tools/presenters/batch_report.rb,
lib/omnifocus_mcp/resources/perspective_resource.rb,
lib/omnifocus_mcp/tools/definitions/mcp_envelope.rb,
lib/omnifocus_mcp/tools/presenters/query_results.rb,
lib/omnifocus_mcp/tools/generators/database_stats.rb,
lib/omnifocus_mcp/tools/operations/database_stats.rb,
lib/omnifocus_mcp/tools/query_omnifocus_formatter.rb,
lib/omnifocus_mcp/tools/definitions/date_formatter.rb,
lib/omnifocus_mcp/tools/definitions/edit_item_tool.rb,
lib/omnifocus_mcp/tools/definitions/key_normalizer.rb,
lib/omnifocus_mcp/tools/definitions/list_tags_tool.rb,
lib/omnifocus_mcp/tools/generators/query_omnifocus.rb,
lib/omnifocus_mcp/tools/operations/batch_add_items.rb,
lib/omnifocus_mcp/tools/operations/query_omnifocus.rb,
lib/omnifocus_mcp/tools/generators/perspective_view.rb,
lib/omnifocus_mcp/tools/messages/add_omnifocus_task.rb,
lib/omnifocus_mcp/tools/messages/batch_remove_items.rb,
lib/omnifocus_mcp/tools/presenters/perspective_view.rb,
lib/omnifocus_mcp/tools/definitions/add_project_tool.rb,
lib/omnifocus_mcp/tools/definitions/remove_item_tool.rb,
lib/omnifocus_mcp/tools/generators/list_perspectives.rb,
lib/omnifocus_mcp/tools/operations/list_perspectives.rb,
lib/omnifocus_mcp/tools/presenters/list_perspectives.rb,
lib/omnifocus_mcp/tools/definitions/operation_factory.rb,
lib/omnifocus_mcp/tools/generators/add_omnifocus_task.rb,
lib/omnifocus_mcp/tools/operations/add_omnifocus_task.rb,
lib/omnifocus_mcp/tools/operations/batch_remove_items.rb,
lib/omnifocus_mcp/tools/operations/get_perspective_view.rb,
lib/omnifocus_mcp/tools/definitions/batch_add_items_tool.rb,
lib/omnifocus_mcp/tools/definitions/query_omnifocus_tool.rb,
lib/omnifocus_mcp/tools/generators/query_omnifocus_debug.rb,
lib/omnifocus_mcp/tools/operations/query_omnifocus_debug.rb,
lib/omnifocus_mcp/infrastructure/apple_script_date_builder.rb,
lib/omnifocus_mcp/tools/definitions/list_perspectives_tool.rb,
lib/omnifocus_mcp/tools/operations/batch_add_items/planner.rb,
lib/omnifocus_mcp/tools/definitions/add_omnifocus_task_tool.rb,
lib/omnifocus_mcp/tools/definitions/batch_remove_items_tool.rb,
lib/omnifocus_mcp/tools/definitions/get_perspective_view_tool.rb,
lib/omnifocus_mcp/tools/operations/batch_add_items/batch_item.rb,
lib/omnifocus_mcp/tools/operations/batch_add_items/bulk_executor.rb,
lib/omnifocus_mcp/tools/operations/batch_add_items/param_builder.rb,
lib/omnifocus_mcp/tools/operations/batch_add_items/cycle_detector.rb
Overview
Cursor’s MCP client rejects JSON-RPC error responses with ‘“id”: null` (fast-mcp 1.6 emits null when the request id is unknown). Coerce those to 0 and ignore blank stdin lines so empty writes do not produce invalid responses.
Defined Under Namespace
Modules: Config, Infrastructure, JsonRpcCompat, Mcp, Parsers, Resources, Tools, Utils Classes: Result
Constant Summary collapse
- VERSION =
"1.0.0"
Class Method Summary collapse
- .build_logger ⇒ Object
-
.logger ⇒ Object
Application-wide logger writing to the current ‘$stderr`.
- .reset_logger! ⇒ Object
- .reset_logger_if_stderr_changed ⇒ Object
Class Method Details
.build_logger ⇒ Object
22 23 24 |
# File 'lib/omnifocus_mcp/logger.rb', line 22 def build_logger Logger.new($stderr, progname: "omnifocus_mcp").tap { |log| log.level = Logger::WARN } end |
.logger ⇒ Object
Application-wide logger writing to the current ‘$stderr`.
Rebuilds when ‘$stderr` changes so test helpers that redirect stderr (RSpec’s ‘output.to_stderr`, silencing helpers) still capture log lines.
12 13 14 15 |
# File 'lib/omnifocus_mcp/logger.rb', line 12 def logger reset_logger_if_stderr_changed @logger ||= build_logger end |
.reset_logger! ⇒ Object
17 18 19 20 |
# File 'lib/omnifocus_mcp/logger.rb', line 17 def reset_logger! @logger = nil @logger_stderr = nil end |
.reset_logger_if_stderr_changed ⇒ Object
27 28 29 30 31 32 |
# File 'lib/omnifocus_mcp/logger.rb', line 27 def reset_logger_if_stderr_changed return if @logger_stderr.equal?($stderr) @logger = nil @logger_stderr = $stderr end |