
duquesnay/omnifocus-mcp
Developer tools이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기
Disclaimer: pardon the stiffness of the documentation and commits language, the project is fully coded via Claude Code, ao many messages are either as fun as an accounting report (with random...
개요
Disclaimer: pardon the stiffness of the documentation and commits language, the project is fully coded via Claude Code, ao many messages are either as fun as an accounting report (with random emphasis of a car salesman here and there). A professional Model Context Protocol (MCP) server for OmniFocus that provides advanced task management capabilities with smart caching and analytics. Built with TypeScript and full respect for OmniFocus's official OmniAutomation API. - : TTL-based caching system for optimal performance - : Full TypeScript support with comprehensive types - : Uses only OmniAutomation scripts (no database hacking) - : Handles 1000+ tasks efficiently with intelligent caching - list_tasks - Advanced task filtering with smart caching - Filter by: completion status, flags, project, tags, dates, search terms - Supports inbox filtering and availability checks - Supports up to 1000 tasks with proper pagination metadata - Results cached for 30 seconds for lightning-fast...
README
원문 README의 일부입니다. 원문 보기.
Model Context Protocol for OmniFocus (incl. advanced features)
Disclaimer: pardon the stiffness of the documentation and commits language, the project is fully coded via Claude Code, ao many messages are either as fun as an accounting report (with random emphasis of a car salesman here and there).
A professional Model Context Protocol (MCP) server for OmniFocus that provides advanced task management capabilities with smart caching and analytics. Built with TypeScript and full respect for OmniFocus’s official OmniAutomation API.
Features
Core Capabilities
- Smart Caching: TTL-based caching system for optimal performance
- Type Safety: Full TypeScript support with comprehensive types
- Official API Only: Uses only OmniAutomation scripts (no database hacking)
- High Performance: Handles 1000+ tasks efficiently with intelligent caching
Available Tools
Task Operations (Read)
list_tasks- Advanced task filtering with smart caching- Filter by: completion status, flags, project, tags, dates, search terms
- Supports inbox filtering and availability checks
- Supports up to 1000 tasks with proper pagination metadata
- Results cached for 30 seconds for lightning-fast repeated queries
get_task_count- Get count of tasks matching filters without data- Same filtering options as list_tasks
- Returns count only for performance
Task Operations (Write)
create_task- Create new tasks in inbox- Set name, note, flagged status, due/defer dates
- Tag assignment limited to existing tags
- Returns temporary ID (JXA limitation)
update_task- Update existing tasks- Modify name, note, flagged status, dates
- Limited tag management due to JXA
complete_task- Mark tasks as completeddelete_task- Remove tasks
Project Operations
list_projects- List and filter projects with caching- Filter by: status (active, on hold, dropped, completed), flags, folder
- Results cached for 5 minutes
create_project- Create new projects with folder support- Automatically creates folders if they don’t exist
- Set name, note, dates, flags, and parent folder
update_project- Update project properties- Change name, note, status, dates, flags
- Folder movement supported with limitations (JXA constraint)
complete_project- Mark projects as donedelete_project- Remove projects from OmniFocus
Coming Soon
- Analytics tools (productivity stats, velocity tracking, overdue analysis)
- Tag management
- Bulk operations
- Smart search with natural language
- Recurring task analysis
Installation & Permissions
Prerequisites
- OmniFocus 3 or later installed on macOS
- Node.js 18+ installed
- Permission to access OmniFocus via automation (see Permissions Guide)
Installation Steps
# Clone the repository
git clone https://github.com/yourusername/omnifocus-cache-by-windsurf.git
cd omnifocus-cache-by-windsurf
설치
npx @modelcontextprotocol/inspector dist/index.js설정
{
"mcpServers": {
"omnifocus": {
"command": "node",
"args": ["/path/to/omnifocus-cache-by-windsurf/dist/index.js"],
"env": {
"LOG_LEVEL": "info"
}
}
}
}