Skip to main content
Glama
someposer
by someposer

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

Related MCP server: OmniFocus MCP Server

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

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/someposer/mcp-omnifocus'

If you have feedback or need assistance with the MCP directory API, please join our Discord server