{"id":"deverman-focusrelaymcp","name":"FocusRelayMCP","homepage":null,"repo_url":"https://github.com/deverman/FocusRelayMCP","category":"automation","subcategories":[],"tags":["mcp","model-context-protocol","omnifocus","macos","automation","productivity","swift","task-management","ai-agents"],"what_it_does":"FocusRelayMCP is a local Model Context Protocol (MCP) server for OmniFocus on macOS that lets AI assistants query tasks, projects, and tags using natural-language-like queries, plus a CLI with equivalent commands.","use_cases":["Daily planning queries for what to do next based on time windows and due dates","Project health checks (e.g., stalled projects / no next actions)","Context/tag discovery and filtering (what can I do on this context/device)","Task discovery for deferred/avoided/flagged items","Status and completion reporting (what was completed today/this week/this month, counts without listing)"],"not_for":["Multi-user server deployments where a centralized API would be expected","Cloud/SaaS use cases requiring managed authentication, rate limiting, and hosted availability guarantees","Use cases that require fine-grained enterprise security controls beyond local macOS automation permissions"],"best_when":"You have OmniFocus on macOS and an MCP-capable client (e.g., Claude Desktop/opencode) where you can run a local server and approve the OmniFocus plugin automation permission.","avoid_when":"You cannot or will not approve OmniFocus automation/plugin permissions (the bridge will time out), or you need a hosted, network-accessible API with standard auth/rate-limit guarantees.","alternatives":["Other OmniFocus integrations/plugins (if available)","Custom scripts using OmniFocus AppleScript/URL schemes plus an LLM tool wrapper","Generic task-management MCP servers that connect to your task system (if you can switch task tools)"],"af_score":66.2,"security_score":35.5,"reliability_score":37.5,"package_type":"mcp_server","discovery_source":["github"],"priority":"high","status":"evaluated","version_evaluated":null,"last_evaluated":"2026-03-30T15:35:39.667041+00:00","interface":{"has_rest_api":false,"has_graphql":false,"has_grpc":false,"has_mcp_server":true,"mcp_server_url":null,"has_sdk":false,"sdk_languages":[],"openapi_spec_url":null,"webhooks":false},"auth":{"methods":["Local process execution (no network auth described)","OmniFocus plugin automation permission prompt (local user consent)"],"oauth":false,"scopes":false,"notes":"The README describes a macOS/OmniFocus security approval dialog (“Allow script to control OmniFocus?”) rather than API authentication. No API keys/OAuth scopes are documented."},"pricing":{"model":null,"free_tier_exists":false,"free_tier_limits":null,"paid_tiers":[],"requires_credit_card":false,"estimated_workload_costs":null,"notes":"No pricing information present; appears to be a local open-source tool (MIT license per README)."},"requirements":{"requires_signup":false,"requires_credit_card":false,"domain_verification":false,"data_residency":[],"compliance":[],"min_contract":null},"agent_readiness":{"af_score":66.2,"security_score":35.5,"reliability_score":37.5,"mcp_server_quality":85.0,"documentation_accuracy":75.0,"error_message_quality":0.0,"error_message_notes":"The README mentions common failure modes (e.g., “Bridge timed out”, “Plugin not responding”, and causes/solutions), but does not document structured error codes or exact response schemas for failures.","auth_complexity":90.0,"rate_limit_clarity":5.0,"tls_enforcement":0.0,"auth_strength":40.0,"scope_granularity":10.0,"dependency_hygiene":50.0,"secret_handling":80.0,"security_notes":"Runs locally and does not describe TLS/network transport. Security hinges on user consent for OmniFocus plugin automation (“Run Script” approval) and macOS sandbox/permission model rather than API authentication/scopes. No secrets management is discussed; dependency health is unknown. Main risk is granting automation control to the plugin via user approval.","uptime_documented":0.0,"version_stability":50.0,"breaking_changes_history":30.0,"error_recovery":70.0,"idempotency_support":"false","idempotency_notes":"Operations are primarily read-only queries (list/get/count). Idempotency for mutations is not applicable/unclear because no write tools are described.","pagination_style":"cursor","retry_guidance_documented":true,"known_agent_gotchas":["First-time OmniFocus automation approval is required; otherwise requests may time out.","After upgrading the plugin, OmniFocus must be restarted; otherwise the bridge may not respond.","Projects/tags are cached for 5 minutes; repeated queries may reflect stale cached metadata.","Timezone detection may require refresh after travel; incorrect time windows can occur if local settings change.","The MCP server relies on local IPC/plugin communication; failures may present as timeouts rather than explicit auth errors."]}}