OmniFocus MCP Server

by mdoel

Not rated
GitHub

About

Integrate OmniFocus with Claude Desktop for AI-powered task management and weekly reviews.

Details

Author
mdoel
Categories
Productivity, Project Management, Other

Setup

Install OmniFocus MCP Server in your MCP client (Claude Desktop, Cursor, Windsurf, and others).

Repository: https://github.com/mdoel/omnifocus-mcp

Follow the installation instructions in the repository README, then restart your MCP client.

A Model Context Protocol (MCP) server for integrating OmniFocus with Claude Desktop. This server provides Claude with access to your OmniFocus tasks and projects, enabling AI-powered task management and weekly reviews.

- 🎯OmniFocus Integration- Access tasks and projects from OmniFocus
- πŸ”§Active Task Filtering- Get only uncompleted tasks, excluding templates and system items
- πŸš€TypeScript + MCP SDK- Type-safe and maintainable
- πŸ”’Secure Automation- Uses official Omni Automation JavaScript API
- πŸ“±Claude Desktop Ready- Works seamlessly with Claude Desktop

Retrieve all tasks from OmniFocus with filtering options:

- includeCompleted(boolean) - Include completed tasks (default: false)
- limit(number) - Maximum number of tasks to return (default: 100)

Retrieve only active (uncompleted) tasks, automatically filtering out:

- Tasks from "Templates" folders
- Tasks containing template placeholders (Β«,Β»)
- Tasks with synced preferences markers (βš™οΈ)

Retrieve all active projects from OmniFocus.

- macOSwith OmniFocus installed
- Node.js 23.10.0or higher
- Claude Desktopapplication
- Automation permissionsfor OmniFocus

git clone https://github.com/mdoel/omnifocus-mcp cd omnifocus-mcp

Add this to your Claude Desktop MCP configuration:

{ "mcpServers": { "omnifocus": { "command": "/path/to/omnifocus/run-server.sh", "args": [] } } }

Important:Replace/path/to/omnifocus/with the actual path to your project directory.

The first time you run the server, macOS will prompt you to grant automation permissions for OmniFocus. Click "Allow" when prompted.

Note:If you encounter permission issues, you may need to temporarily uncomment theosascriptlines inrun-server.shto trigger the permission dialog. After granting permissions, comment those lines out again to avoid the dialog on every startup.

Restart Claude Desktopto load the new MCP server.

- "Get all my active tasks from OmniFocus"
- "Show me my projects"
- "What tasks do I have for today?"
- "Help me with my weekly review"

- OmniFocusClient- Handles communication with OmniFocus via Omni Automation
- OmniFocusJXA- Utility for building and executing JXA scripts
- OmniFocusMCPServer- Main MCP server implementation

src/ β”œβ”€β”€ index.ts # Main entry point β”œβ”€β”€ server.ts # MCP server implementation β”œβ”€β”€ omnifocus/ β”‚ β”œβ”€β”€ client.ts # OmniFocus automation client β”‚ └── omnifocus-jxa.ts # JXA script utilities └── types/ └── omnifocus.ts # TypeScript definitions
# Build the project npm run build # Watch mode for development npm run dev
# Test with command line arguments node dist/index.js all # Get all tasks node dist/index.js active # Get active tasks only node dist/index.js projects # Get projects only
# Test basic connection osascript -l JavaScript -e "Application('OmniFocus').running()" # Test task retrieval osascript -l JavaScript -e " const app = Application('OmniFocus'); const doc = app.defaultDocument; const tasks = doc.flattenedTasks(); console.log('Found ' + tasks.length + ' tasks'); "

If Claude Desktop can't connect to the server:
- Check the script pathin your Claude Desktop configuration
- Verify permissions- ensure therun-server.shscript is executable:

chmod +x run-server.sh

If you get automation permission errors:
- OpenSystem Preferences > Security & Privacy > Privacy
- SelectAutomationfrom the left sidebar
- Find your terminal/shell and checkOmniFocus
- Restart your terminal and try again

- Ensure OmniFocus is installed and running
- Verify the app name is "OmniFocus" (not "OmniFocus 3" or something similar)
- Check that OmniFocus is not in the trash or disabled

- The server may take time to process large OmniFocus databases
- Consider using thelimitparameter to reduce the number of tasks returned
- Ensure OmniFocus is not performing other operations

This project is designed to be extensible. To add new functionality:
- Add new toolsin thesrc/omnifocus/directory
- Update the serverto register new tools
- Test thoroughlywith your OmniFocus data
- Submit a pull requestwith clear documentation

MIT License - seeLICENSEfile for details.

- Check the troubleshooting section above
- Review the Claude Desktop MCP documentation
- Open an issue in this repository

MCP server to interact with Routine: calendars, tasks, notes, etc.

From the creators of Wunderlist β€” the all-in-one task management app for to-do lists, notes, and projects. AI-powered productivity that replaces 5 apps.

Multi-device file sync, dev-doc CRUD, task management, and session handoffs for AI agents - MCP + OpenAPI dual surface.

Portable, cloud-hosted AI memory you own - structured memories, tasks, goals, and notes that work across Claude, ChatGPT, Gemini, and any MCP client.

A powerful, locally-hosted task management application with Obsidian integration and SQLite database support.

A server that enables access to Joplin notes and to-dos through the Model Context Protocol (MCP).

Connect your AI assistant to your personal knowledge base. Search, save links, create notes and to-dos. AI processes everything automatically.

AI project manager for Claude. Plain markdown, local-first workspace. 11 tools for projects, tasks, sessions, and notes. Install with: npx recap-mcp init

19-tool MCP server for a full-featured iOS task manager. Standalone local mode (13 tools) or pair with iOS app for task sync, inbox, AI prompt config, and provider management across Claude Code, Cursor, Windsurf, OpenClaw and other MCP clients.

Voice-first planning app. Dictate voice notes on iOS/Apple Watch, AI creates structured tasks and events. 21 MCP tools (read + write). Connect from Claude Code, Cursor, Windsurf. Free trial with promo code MCPBETA26.

No reviews yet β€” be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.