UpTier
Desktop task manager with clean To Do-style UI and 25+ MCP tools for prioritization, goal tracking, and multi-profile workflows.
UpTier
MCP-powered task management with intelligent prioritization via Claude Desktop
UpTier is a desktop to-do application that combines a clean Microsoft To Do-style interface with the power of Claude AI for intelligent task prioritization. Through the Model Context Protocol (MCP), Claude can analyze your tasks and help you focus on what matters most.
Demo
https://github.com/user-attachments/assets/71264f79-3f54-4b45-9d7e-dcef26f54f94
Download
Pre-built installer available. No build required.
Features
Task Management
- Lists & Tasks - Create custom lists, tasks with subtasks, and organize your work
- Smart Lists - Built-in views for My Day, Important, Planned, Calendar, Dashboard, and Completed
- Custom Filters - Create your own smart lists with visual filter rules (due date, priority, tags, energy, and more)
- Tags - Categorize tasks with colored tags for easy filtering
- Due Dates - Set due dates with notifications and overdue tracking
- Recurring Tasks - Daily, weekday, weekly, biweekly, and monthly recurrence with optional end dates
- Calendar Views - Day, Business Week, Full Week, and Month views with task scheduling
- Day Planner - Time-blocking hourly grid with drag-and-drop scheduling and 15-minute snap intervals
- Daily Planning - Guided 4-step planning ritual: review yesterday, build your list, schedule tasks, confirm your plan
- Task Duration - Set estimated duration for tasks to size time blocks on the calendar
- Drag & Drop - Reorder tasks within lists and schedule tasks onto the calendar
AI-Powered Features
- Intelligent Prioritization - Let Claude analyze and prioritize your tasks via MCP
- Multiple Strategies - Eisenhower matrix, quick wins, high impact, and more
- Due Date Suggestions - In-app AI suggests due dates based on similar tasks and priority
- Task Breakdown - AI-generated subtask suggestions for common task types (no Claude required)
- At-Risk Alerts - Amber and red warnings on tasks that may miss their deadlines
Organization
- Goal Tracking - Link tasks to goals and track progress with hierarchy support
- Priority Tiers - Three-tier system (Do Now, Do Soon, Backlog)
- Priority Scoring - Rate tasks by effort, impact, urgency, and importance
- Data Export - Export your data as JSON (full backup) or CSV (tasks)
Productivity & Analytics
- Dashboard - Productivity analytics with completion stats, weekly trends, and priority distribution
- Streaks & Celebrations - Track daily completion streaks with confetti celebrations on milestones
- Focus Time Tracking - Set a daily focus goal and track progress on the dashboard
- Feature Tiers - Onboarding wizard for new users with Basic, Intermediate, and Advanced presets
Multi-Database Support
- Multiple Profiles - Create separate databases for work, personal, projects
- Easy Switching - Switch between database profiles from the sidebar
- Isolated Data - Each profile maintains its own lists, tasks, and settings
Focus Timer
- Distraction-Free Mode - Full-screen timer overlay to help you stay focused
- Flexible Durations - Preset options (30, 45, 60, 90 min) or custom duration
- Task Context - See task title and notes while working
- Keyboard Controls - Space to pause/resume, Esc to end session
User Experience
- Themes - Dark, Light, Earth Dark, Earth Light, Cyberpunk, and System themes
- Command Palette - Global search and navigation with Ctrl+K
- Keyboard Shortcuts - Quick actions with Ctrl+F (search), Ctrl+N (new task), ? (help)
- System Tray - Minimize to tray for quick access
- Concurrent Access - SQLite with WAL mode lets both the app and Claude work simultaneously
Architecture
uptier/
├── apps/
│ ├── electron/ # Desktop application (React + Electron)
│ └── mcp-server/ # MCP server for Claude Desktop
├── packages/
│ └── shared/ # Shared types and database schema
└── pnpm-workspace.yaml
| Component | Description |
|---|---|
| MCP Server | Node.js server providing 25+ task management tools via MCP |
| Electron App | Desktop application with React UI |
| SQLite Database | Shared database with WAL mode for concurrent access |
Getting Started
Prerequisites
- Node.js 20+ (LTS recommended)
- pnpm 8+
- Claude Desktop (for AI features)
Installation
# Clone the repository
git clone https://github.com/foxintheloop/uptier.git
cd uptier
# Install pnpm (if not already installed)
npm install -g pnpm
# Install dependencies
pnpm install
# Approve build scripts for native modules (canvas, sharp, electron)
pnpm approve-builds
# Rebuild native modules
pnpm rebuild
# Rebuild better-sqlite3 for Electron's bundled Node.js
npx electron-rebuild -f -w better-sqlite3
# Build packages
pnpm --filter @uptier/shared build
pnpm --filter @uptier/mcp-server build
Note: The Electron app bundles its own Node.js runtime (v20.x), which differs from your system Node.js. The
electron-rebuildstep compilesbetter-sqlite3for Electron's version. The MCP server deployment (below) compiles it separately for your system Node.js used by Claude Desktop.
Running the App
# Development mode
pnpm dev:electron
# Production build
pnpm --filter @uptier/electron build
Claude Desktop Integration
Deploy the MCP server for Claude Desktop:
# Deploy MCP server to standalone directory
pnpm --filter @uptier/mcp-server deploy
This deploys the MCP server to ~/.uptier/mcp-server/ with its own node_modules, automatically compiled for your current Node.js version. The Claude Desktop config is updated automatically.
Why standalone? The Electron app uses Node.js 22 (bundled), while Claude Desktop may use a different Node.js version. The standalone deployment compiles native modules (like
better-sqlite3) for the correct version, preventing conflicts.
After deployment:
- Restart Claude Desktop
- The UpTier tools will be available in Claude
Manual Configuration (Alternative)
If the automatic deployment doesn't work, add UpTier manually to your Claude Desktop config:
Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"uptier": {
"command": "node",
"args": ["/path/to/.uptier/mcp-server/index.js"]
}
}
}
MCP Tools
UpTier exposes powerful tools to Claude for managing your tasks:
Lists
| Tool | Description |
|---|---|
create_list | Create a new task list |
get_lists | Get all lists with task counts |
update_list | Update list name, color, or icon |
delete_list | Delete a list |
reorder_lists | Change list positions |
Tasks
| Tool | Description |
|---|---|
create_task | Create a new task with optional attributes |
get_tasks | Get tasks with filtering options |
update_task | Update task properties |
complete_task | Mark task as completed |
delete_task | Delete a task |
bulk_create_tasks | Create multiple tasks at once |
move_task | Move task to a different list |
Prioritization
| Tool | Description |
|---|---|
prioritize_list | Analyze tasks and get prioritization guidance |
bulk_set_priorities | Set priority tiers for multiple tasks |
get_prioritization_summary | Get overview of task priorities |
suggest_next_task | Get AI recommendation for what to work on next |
Goals
| Tool | Description |
|---|---|
create_goal | Create a goal |
get_goals | Get all goals with progress |
update_goal | Update goal properties |
link_tasks_to_goal | Associate tasks with goals |
get_goal_progress | Get completion stats for a goal |
Day Planner
| Tool | Description |
|---|---|
get_day_schedule | Get scheduled tasks, unscheduled tasks, and free time blocks for a date |
schedule_tasks | Schedule tasks onto the day planner time grid |
unschedule_task | Remove a task from the time grid to unscheduled sidebar |
Subtasks & Tags
| Tool | Description |
|---|---|
add_subtask | Add subtask to a task |
update_subtask | Update subtask properties |
create_tag | Create a new tag |
get_tags | Get all tags |
add_tag_to_task | Tag a task |
Prioritization Strategies
When asking Claude to prioritize your tasks, you can request different strategies:
| Strategy | Best For |
|---|---|
| Balanced | General use - weighs all factors equally |
| Urgent First | Deadline-driven work |
| Quick Wins | Building momentum with low-effort wins |
| High Impact | Maximum results regardless of effort |
| Eisenhower | Classic urgent/important decision matrix |
Priority Tiers
Tasks are organized into three tiers:
- Tier 1 (Do Now) - High impact, urgent, or blocking other work
- Tier 2 (Do Soon) - Important but not time-sensitive
- Tier 3 (Backlog) - Lower priority, someday/maybe items
Data Storage
Your data is stored locally:
- Windows:
%APPDATA%\.uptier\tasks.db - macOS/Linux:
~/.uptier/tasks.db
Additional database profiles are stored in the same directory with custom names.
The database uses SQLite with WAL mode, allowing the Electron app and MCP server to access it simultaneously without conflicts.
Logs
Application logs are stored at:
- Windows:
%APPDATA%\UpTier\logs\ - macOS:
~/Library/Application Support/UpTier/logs/ - Linux:
~/.config/UpTier/logs/
Keyboard Shortcuts
| Shortcut | Action |
|---|---|
Ctrl+K | Open command palette |
Ctrl+N | Create new task |
Ctrl+F | Focus search |
↑ / ↓ | Navigate tasks |
Space | Toggle task completion |
Delete | Delete selected task |
Escape | Close detail panel |
? | Show keyboard shortcuts |
Focus Timer Shortcuts
| Shortcut | Action |
|---|---|
Space | Pause/Resume timer |
Escape | End focus session |
Roadmap
- Smart lists (My Day, Important, Planned, Completed)
- Themes (Dark, Light, Earth, Cyberpunk, System)
- Keyboard shortcuts
- Tags
- Due date notifications
- Multiple database profiles
- Data export & import
- List rename/delete
- Focus timer
- Resizable panels
- Recurring tasks
- Custom smart list filters
- Calendar views (Day, Business Week, Full Week, Month)
- Daily planning ritual
- Productivity dashboard & analytics
- Streaks & celebrations
- At-risk deadline alerts
- Feature tiers & onboarding wizard
- Goal tracking with hierarchy
- Task templates
- Mobile companion app
Troubleshooting
"Electron uninstall" error
If you see Error: Electron uninstall when running pnpm dev:electron, the Electron binary wasn't downloaded. Run:
node node_modules/electron/install.js
Native module errors with MCP server
If Claude Desktop shows errors about better-sqlite3 or NODE_MODULE_VERSION mismatches, use the standalone deployment:
pnpm --filter @uptier/mcp-server deploy
This creates a separate MCP server installation at ~/.uptier/mcp-server/ with native modules compiled for your current Node.js version, avoiding conflicts with the Electron app.
If you still have issues, ensure you're running the deploy command with the same Node.js version that Claude Desktop uses (typically Node.js 23).
Build script warnings
If you see warnings about "Ignored build scripts" during pnpm install, run:
pnpm approve-builds
Then select the packages that need to run build scripts (canvas, sharp, electron).
"NODE_MODULE_VERSION mismatch" in Electron app
If the Electron app crashes with NODE_MODULE_VERSION mismatch (e.g., "was compiled against a different Node.js version"), rebuild better-sqlite3 for Electron:
npx electron-rebuild -f -w better-sqlite3
This typically happens after upgrading Node.js or running pnpm install, which recompiles native modules for your system Node.js rather than Electron's bundled version.
"Schema not found" error in Claude Desktop
If the MCP server reports that schema.sql cannot be found, the deployed files are stale. Rebuild and redeploy:
pnpm --filter @uptier/shared build
pnpm --filter @uptier/mcp-server build
pnpm --filter @uptier/mcp-server deploy
After upgrading Node.js
When you upgrade your system Node.js version, native modules need to be recompiled:
- Electron app:
npx electron-rebuild -f -w better-sqlite3 - MCP server: Rebuild and redeploy:
pnpm --filter @uptier/shared build pnpm --filter @uptier/mcp-server build pnpm --filter @uptier/mcp-server deploy
Contributing
Contributions are welcome! Here's how to get started:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes
- Run the app to test (
pnpm dev:electron) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Help Wanted: macOS & Linux Testing
UpTier is currently only tested on Windows. If you're on macOS or Linux, we'd love your help testing and reporting any platform-specific issues!
License
MIT License - see LICENSE for details.
Related Servers
Notion
Integrate with Notion workspaces to manage databases, pages, and content.
Unified MCP Suite
A collection of MCP servers for media tools, information retrieval, PDF creation, and presentation generation.
Saber
Find buying signals for companies and contacts
n8n Manager for AI Agents
Manage n8n workflow automation instances through natural language using the n8n public API.
Dub.co
Interact with the Dub.co API to shorten links, manage custom domains, and track analytics.
MCP Orchestro
Trello for Claude Code: AI-powered task management with 60 MCP tools, visual Kanban board, and intelligent orchestration for product teams and developers
MCP Useful Assistant
A powerful MCP-based assistant with tools for file operations, web intelligence, system monitoring, data processing, and code analysis.
MCP Invoice Parser
Parses invoice data, uploads it to Google Sheets, and answers queries by fetching information from the sheet.
Windows-MCP
A lightweight MCP server for interacting with the Windows Operating System.
Google Services MCP
(MCP) server for Google Workspace. Drive, Gmail, Calendar, Sheets, Docs, Tasks and People via AI agents.