Enables AI assistants to seamlessly view, create, edit, and manage tasks and projects in OmniFocus via natural language using the Model Context Protocol for efficient task automation and bulk operations.
Unlock the full potential of OmniFocus-MCP through LangDB's AI Gateway. Get enterprise-grade security, analytics, and seamless integration with zero configuration.
Free tier available • No credit card required
Discover shared experiences
A Model Context Protocol (MCP) server that integrates with OmniFocus to enable Claude (or other MCP-compatible AI assistants) to interact with your tasks and projects.
!OmniFocus MCP
This MCP server creates a bridge between AI assistants (like Claude) and your OmniFocus task management system. It gives AI models the ability to view, create, edit, and remove tasks and projects in your OmniFocus database through natural language conversations. Some ways you could use it:
~/Library/Application Support/Claude/claude_desktop_config.json
{ "mcpServers": { "omnifocus": { "command": "npx", "args": ["-y", "omnifocus-mcp"] } } }
Get a summary of your current tasks and manage them conversationally:
"Show me all my flagged tasks due this week that don't mention "fish".
Extract action items from meeting transcripts, academic research articles, or notes:
Manage multiple items efficiently:
The server currently provides these tools:
dump_database
Gets the current state of your OmniFocus database.
add_omnifocus_task
Add a new task to OmniFocus.
Parameters:
name
: The name of the taskprojectName
: (Optional) The name of the project to add the task tonote
: (Optional) Additional notes for the taskdueDate
: (Optional) The due date of the task in ISO formatdeferDate
: (Optional) The defer date of the task in ISO formatflagged
: (Optional) Whether the task is flagged or notestimatedMinutes
: (Optional) Estimated time to complete the tasktags
: (Optional) Tags to assign to the taskadd_project
Add a new project to OmniFocus.
Parameters:
name
: The name of the projectfolderName
: (Optional) The name of the folder to add the project tonote
: (Optional) Additional notes for the projectdueDate
: (Optional) The due date of the project in ISO formatdeferDate
: (Optional) The defer date of the project in ISO formatflagged
: (Optional) Whether the project is flagged or notestimatedMinutes
: (Optional) Estimated time to complete the projecttags
: (Optional) Tags to assign to the projectsequential
: (Optional) Whether tasks in the project should be sequentialremove_item
Remove a task or project from OmniFocus.
Parameters:
id
: (Optional) The ID of the task or project to removename
: (Optional) The name of the task or project to removeitemType
: The type of item to remove ('task' or 'project')edit_item
Edit a task or project in OmniFocus.
Parameters:
id
: (Optional) The ID of the task or project to editname
: (Optional) The name of the task or project to edititemType
: The type of item to edit ('task' or 'project')batch_add_items
Add multiple tasks or projects to OmniFocus in a single operation.
Parameters:
items
: Array of items to add, where each item can be:
type
: The type of item ('task' or 'project')name
: The name of the itemnote
: (Optional) Additional notesdueDate
: (Optional) Due date in ISO formatdeferDate
: (Optional) Defer date in ISO formatflagged
: (Optional) Whether the item is flaggedestimatedMinutes
: (Optional) Estimated completion timetags
: (Optional) Array of tagsprojectName
: (Optional) For tasks: the project to add tofolderName
: (Optional) For projects: the folder to add tosequential
: (Optional) For projects: whether tasks are sequentialbatch_remove_items
Remove multiple tasks or projects from OmniFocus in a single operation.
Parameters:
items
: Array of items to remove, where each item can be:
id
: (Optional) The ID of the item to removename
: (Optional) The name of the item to removeitemType
: The type of item ('task' or 'project')Documentation to follow.
This server uses AppleScript to communicate with OmniFocus, allowing it to interact with the application's native functionality. The server is built using the Model Context Protocol SDK, which provides a standardized way for AI models to interact with external tools and systems.
MIT
Contributions are welcome! Please feel free to submit a Pull Request.
Shared threads will appear here, showcasing real-world applications and insights from the community. Check back soon for updates!