mcp-omnifocus

someposer/mcp-omnifocus

3.2

If you are the rightful owner of mcp-omnifocus and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

A Model Context Protocol (MCP) server for controlling OmniFocus from VS Code, the command line, or any MCP-compatible client.

Tools
  1. list_perspectives

    List all perspectives

  2. list_projects

    List all projects

  3. list_tags

    List all tags

  4. list_tasks

    List all tasks (with full hierarchy)

  5. list_inbox

    List all tasks in the Inbox

  6. create_task

    Create a new task

  7. update_task

    Update a task (name, project, tags, note, defer/due date, flagged)

  8. complete_task

    Mark a task as complete

  9. drop_task

    Drop a task

  10. activate_task

    Reactivate a dropped or completed task

  11. process_inbox

    A reusable prompt for processing your GTD inbox

mcp-omnifocus

A Model Context Protocol (MCP) server for controlling OmniFocus from VS Code, the command line, or any MCP-compatible client. This tool enables automation and management of your OmniFocus tasks, projects, and tags using natural language and programmable interfaces.

Features

  • List all tasks, projects, tags, and perspectives in OmniFocus
  • Create, update, complete, drop, and activate tasks
  • Assign tasks to projects and tags
  • Process and organize your GTD inbox
  • Integrate with VS Code and other MCP clients

Requirements

  • macOS with OmniFocus installed
  • Python 3.12+
  • uv for fast Python package management

Installation

Clone the repository and install dependencies using uv:

git clone https://github.com/YOUR_USERNAME/mcp-omnifocus.git
cd mcp-omnifocus
uv venv
uv pip install -e .

Usage

Add the following to your mcp configuration:

{
    "servers": {
        "mcp-omnifocus": {
            "type": "stdio",
            "command": "uvx",
            "args": [
                "--from",
                "git+https://github.com/somposer/mcp-omnifocus",
                "mcp-omnifocus",
            ]
        }
    }
}

Capabilities

The MCP OmniFocus server exposes the following tools, prompts, and resources:

  • list_perspectives: List all perspectives
  • list_projects: List all projects
  • list_tags: List all tags
  • list_tasks: List all tasks (with full hierarchy)
  • list_inbox: List all tasks in the Inbox
  • create_task: Create a new task
  • update_task: Update a task (name, project, tags, note, defer/due date, flagged)
  • complete_task: Mark a task as complete
  • drop_task: Drop a task
  • activate_task: Reactivate a dropped or completed task
  • process_inbox: A reusable prompt for processing your GTD inbox

Development

For development change your mcp.json to the following:

{
    "servers": {
        "mcp-omnifocus": {
            "type": "stdio",
            "command": "uv",
            "args": [
                "run",
                "--project",
                "${workspaceFolder}/",
                "python",
                "-m",
                "mcp_omnifocus",
            ],
            "dev": {
                "watch": "src/**/*.py",
                "debug": {
                    "type": "python"
                }
            }
        }
    }
}

License

MIT