SkillAgentSearch skills...

omnifocus-operator

An MCP server that exposes OmniFocus to AI agents via the Model Context Protocol (MCP).

Install / Use

claude mcp add HelloThisIsFlo -- npx -y github:HelloThisIsFlo/omnifocus-operator

If the server publishes to npm under a different name, use that package instead — check the repo README.

About this skill
🔌

MCP Server

Model Context Protocol server

Quality Score

75/100

Category

Automation

Supported Platforms

Claude Code
Claude Desktop

Our assessment of omnifocus-operator

omnifocus-operator scores 75/100 on our quality scale, 2592nd of 2,876 Automation skills we index.

Its MCP Server is 7.5 KB long, well organised into 15 sections with 5 code examples: a thorough specification that gives an agent plenty to work with.

It has 10 GitHub stars, so there is little community track record yet; judge it on its content.

Substance
29/30
Structure
20/20
Description
12/15
Adoption
4/20
Freshness
11/15

Maintenance, license and trust

  • The repository was last updated about 4 months ago. That is recent enough to be usable, but agent tooling moves fast, so check the instructions against your agent's current version.
  • No license is declared. By default that means all rights are reserved: you can read it, but reusing or redistributing it is not clearly permitted. Ask the author before building on it commercially.
  • Its trust signals score 78/100, with 2 cautions from licensing, adoption, age or documentation. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.

omnifocus-operator compared with similar skills

All 4 of these similar skills score higher than omnifocus-operator; compare them before choosing.

SkillScoreStarsUpdatedFormat
omnifocus-operator (this skill)by HelloThisIsFlo75104mo agoMCP Server
Agent-Reachby Panniantong10096.7k5d agoCLAUDE.md
headroomby headroomlabs-ai10075.2ktodayCLAUDE.md
CowAgentby zhayujie10047.4ktodayCLAUDE.md
Scraplingby D4Vinci10087.1ktodayMCP Server

Frequently asked questions

How do I install omnifocus-operator?
Run claude mcp add HelloThisIsFlo -- npx -y github:HelloThisIsFlo/omnifocus-operator. The install tabs above show the steps for each supported agent.
Which AI agents does omnifocus-operator work with?
It is written for Claude Code and Claude Desktop, as a MCP Server file. Other agents that read the same format can often use it too.
Is omnifocus-operator safe to use?
It declares no license and scores 78/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
Is omnifocus-operator still maintained?
The repository was last updated about 4 months ago. That is recent enough to be usable, but agent tooling moves fast, so check the instructions against your agent's current version.

🎯 OmniFocus Operator

The last OmniFocus MCP Server you'll ever need.

Python 3.12+ PyPI Tests 2561 Coverage 97% macOS only

Production-grade MCP server exposing OmniFocus as structured task infrastructure for AI agents. Agent-first design, SQLite-cached performance, 2,561 tests.

→ See the full landing page — features, architecture, benchmarks, and comparison


🚀 Quick Start

Prerequisites: macOS, OmniFocus 4, Python 3.12+

🪄 Not sure where this config goes? The setup wizard on the landing page walks you through it step-by-step — including auto-merging with your existing config.

For Claude Desktop

Paste this into ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "omnifocus-operator": {
      "command": "uvx",
      "args": ["omnifocus-operator"]
    }
  }
}

uvx downloads, isolates, and runs the server automatically. No install step.

First run: OmniFocus shows a one-time permission dialog. Tick the box, click Run Script. You won't see it again.

<picture> <source media="(prefers-color-scheme: dark)" srcset="docs/images/first-run-dark.png"> <img src="docs/images/first-run-light.png" alt="OmniFocus first-run permission dialog showing OmniFocus Operator's welcome banner with two steps: tick the 'Automatically run' checkbox, then click Run Script" width="600"> </picture>

For Claude Code, OpenCode, Cursor…

Ask your agent — copy this prompt:

Add this MCP server to my client config. Just edit the config file — don't install anything, don't run any scripts.

"omnifocus-operator": {
  "command": "uvx",
  "args": ["omnifocus-operator"]
}

⚠️ This doesn't work with Claude Desktop — Desktop has no config-editing tools. Use the manual paste above.

<details> <summary><strong>Development install (contributors)</strong></summary>
git clone https://github.com/HelloThisIsFlo/omnifocus-operator.git
cd omnifocus-operator
uv sync

See CONTRIBUTING.md for dev workflow details.

</details>

✨ Features

  • ⚡ 46ms reads — SQLite caching gives 30–60x faster reads than bridge-only servers
  • 🛠️ 11 MCP tools — lookups, filtered lists, task creation & editing
  • 🤖 Agent-first design — warnings that teach, errors that educate, guidance in every response
  • 🧪 2,561 tests, 97% coverage — strict mypy, no corners cut
  • 🛡️ Graceful degradation — server stays alive no matter what, always recoverable
  • 🔄 Automatic fallback — SQLite → OmniJS bridge when needed

See the full documentation for architecture details, examples, and deep dives.


🛠️ Available Tools

Lookups

| Tool | Description | |------|-------------| | get_all | Full OmniFocus database as structured data (last-resort debugging) | | get_task | Single task by ID — urgency, availability, dates, tags, parent, project | | get_project | Single project by ID — status, review interval, next task | | get_tag | Single tag by ID — availability, parent hierarchy |

List & Filter

| Tool | Description | |------|-------------| | list_tasks | Filter by date, availability, flags, tags, project, parent subtree, search — with pagination, field selection, and presence-flag derivation | | list_projects | Filter by status, folder, review schedule, flags | | list_tags | List tags with parent hierarchy | | list_folders | List folders with parent hierarchy | | list_perspectives | List custom perspectives |

Write

| Tool | Description | |------|-------------| | add_tasks | Create tasks with full field control — parent, tags, dates, flags, notes, repetition rules, parallel/sequential, completes-with-children | | edit_tasks | Patch semantics — update fields, move tasks, complete/drop, manage tags, repetition rules, and hierarchy properties |

All read tools are idempotent. Write tools reference projects and tags by name or ID.


🔍 Tool Examples

Filter tasks (list_tasks):

{
  "query": {
    "flagged": true,
    "due": "soon",
    "availability": "remaining",
    "include": ["notes"],
    "limit": 10
  }
}

Create a task (add_tasks):

{
  "items": [{
    "name": "Review Q3 roadmap",
    "parent": "Work Projects",
    "tags": ["Planning"],
    "dueDate": "2026-03-15T17:00:00",
    "flagged": true,
    "estimatedMinutes": 30,
    "note": "Focus on v1.3-v1.5 milestones"
  }]
}

Edit with patch semantics (edit_tasks):

{
  "items": [{
    "id": "oRx3bL_UYq7",
    "dueDate": null,
    "actions": {
      "tags": {"add": ["Urgent"]},
      "move": {"ending": "Work Projects"}
    }
  }]
}

Patch semantics cheat sheet:

| Input | Meaning | |-------|---------| | Field omitted | No change | | Field set to null | Clear the value | | Field set to a value | Update |


🗺️ Roadmap

| Version | Focus | |---------|-------| | v1.0 | Foundation — read tools, three-layer arch, test suite ✅ | | v1.1 | Performance — SQLite caching, 30–60x speedup ✅ | | v1.2 | Writes & Lookups — add/edit tasks, get-by-ID ✅ | | v1.2.1 | Architectural Cleanup — contracts, service refactor, golden master tests ✅ | | v1.2.2 | FastMCP v3 Migration ✅ | | v1.2.3 | Repetition Rule Write Support ✅ | | v1.3 | Read Tools — SQL filtering, list/count, 5 new tools ✅ | | v1.3.1 | First-Class References — name resolution, $inbox, rich refs ✅ | | v1.3.2 | Date Filtering — 7 dimensions, shortcuts, calendar math ✅ | | v1.3.3 | Task Ordering — dotted notation, outline order ✅ | | v1.4 | Response Shaping & Batch Processing ✅ | | v1.4.1 | Task Properties & Subtree — presence flags, auto-complete, parallel/sequential, parent filter ✅ | | v1.4.2 | UNTIL Format Hotfix — parser accepts RFC 5545 DATE form; builder aligns with OmniFocus UI ✅ | | v1.4.3 | First-Run UX — welcome banners in bridge.js that frame OmniFocus's permission dialog with two-click instructions; startup log line ✅ | | v1.4.4 | Batch Limit Increase — add_tasks / edit_tasks accept up to 150 items per call ✅ | | v1.5 | Project Writes — add/edit projects, review marking | | v1.6 | UI & Perspectives — perspective switching, deep links | | v1.7 | Smart Perspective Content — perspective-aware response shapes | | v1.8 | Production Hardening — retry, crash recovery, serial execution |


🔗 Links


📄 License

Proprietary — all rights reserved. Free to use, not to redistribute. License under review.

🤝 Contributing

See CONTRIBUTING.md for guidelines. In short: fork, branch, test, PR.

Related Skills

View on GitHub
GitHub Stars10
CategoryAutomation
Updated3mo ago
Forks3

Languages

Python

Trust signals

78/100

From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.

1 medium1 low2 info