home / mcp / addtaskmanager mcp server

addTaskManager MCP Server

An MCP server for the addTaskManager iOS app

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "dragosroua-addtaskmanager-mcp-server": {
      "command": "node",
      "args": [
        "/path/to/addtaskmanager-mcp-server/dist/index.js"
      ],
      "env": {
        "NODE_ENV": "production",
        "ENCRYPTION_KEY": "your_32_byte_encryption_key_here",
        "CLOUDKIT_API_TOKEN": "your_api_token_here",
        "CLOUDKIT_ENVIRONMENT": "production",
        "CLOUDKIT_CONTAINER_ID": "iCloud.com.yourapp.zentasktic"
      }
    }
  }
}

You have an MCP server that provides AI-assisted support for your addTaskManager workflow while enforcing the ADD framework’s realm-based rules. It helps you create and manage tasks, projects, and ideas in Assess, set contexts and due dates in Decide, and mark items complete in Do, all while keeping user data isolated and secure.

How to use

Install and run the server locally, then connect an MCP client to perform realm-aware actions. You will authenticate, then issue operations in the appropriate realm. The server enforces that Assess can edit content, Decide can assign contexts and due dates, and Do can mark items as complete. You can query items by realm, move items between realms, and use CloudKit-backed authentication for user data.

Practical usage patterns include: creating and editing tasks, projects, and ideas in Assess; assigning contexts and due dates in Decide; moving items to Do when you are ready to mark them complete; querying items by realm or context; and using alerts or intervals for projects as needed. Always respect the ADD Realm rules to ensure operations occur in the correct realm with the appropriate permissions.

How to install

Prerequisites: Ensure you have Node.js and npm installed on your system. You will also need access to CloudKit credentials for authentication and a secure encryption key for production security.

1) Clone the project repository to your development machine.

2) Install dependencies.

3) Build the project to generate the distributable files.

4) Start the MCP server using the runtime command shown in the configuration section.

# Clone the repository
git clone https://github.com/dragosroua/addtaskmanager-mcp-server.git
cd addtaskmanager-mcp-server

# Install dependencies
npm install

# Build for production
npm run build

# Start the server (stdio config)
node dist/index.js

Configuration and security

Configure the server via environment variables to enable authentication, CloudKit access, and security controls. Copy the example configuration and tailor it to your environment. Ensure you use production settings in production environments and development settings for local testing.

Essential environment variables (examples shown):

NODE_ENV=production
CLOUDKIT_CONTAINER_ID=iCloud.com.yourapp.zentasktic
CLOUDKIT_API_TOKEN=your_api_token_here
CLOUDKIT_ENVIRONMENT=production
ENCRYPTION_KEY=your_32_byte_encryption_key_here

Usage with Claude Desktop

If you use Claude Desktop as your MCP client, configure it to run the local MCP server. Provide the path to the built server and the necessary environment variables so Claude can connect and authenticate with CloudKit.

{
  "mcpServers": {
    "addtaskmcp": {
      "command": "node",
      "args": ["/path/to/addtaskmanager-mcp-server/dist/index.js"],
      "env": {
        "NODE_ENV": "production",
        "CLOUDKIT_CONTAINER_ID": "iCloud.com.yourapp.zentasktic",
        "CLOUDKIT_API_TOKEN": "your_api_token_here",
        "CLOUDKIT_ENVIRONMENT": "production",
        "ENCRYPTION_KEY": "your_32_byte_encryption_key_here"
      }
    }
  }
}

Available tools

authenticate_user

Authenticate a user using a token obtained from Apple Sign-In and CloudKit to establish a session.

get_tasks_by_realm

Query tasks filtered by their assigned realm (assess, decide, or do).

get_projects_by_realm

Query projects filtered by their assigned realm.

get_ideas

Retrieve all captured ideas.

get_collections

Retrieve all collections.

get_tasks_by_context

Filter tasks based on their assigned context.

assess_create_task

Create a new task with editable content in Assess.

assess_edit_task

Edit an existing task's content in Assess.

assess_create_project

Create a new project in Assess.

assess_edit_project

Edit a project's title in Assess.

assess_create_idea

Capture a new idea in Assess.

assess_create_collection

Create a new collection in Assess.

assess_create_context

Create a new context in Assess.

assess_edit_idea

Edit an idea title in Assess.

assess_add_task_to_project

Add an existing task to a project in Assess.

assess_add_task_to_idea

Add an existing task to an idea in Assess.

assess_remove_task_from_project

Remove a task from a project in Assess.

assess_remove_task_from_idea

Remove a task from an idea in Assess.

assess_archive_task_to_collection

Archive a task to an existing collection in Assess.

assess_archive_project_to_collection

Archive a project to an existing collection in Assess.

decide_assign_context

Assign contexts to tasks or projects in Decide.

decide_set_project_interval

Set a project's start and end dates in Decide.

decide_set_task_due_date

Set a due date on a task in Decide.

decide_set_task_alert

Set alerts for a task in Decide.

decide_move_task_to_do

Move a task from Decide to Do.

decide_move_task_to_assess_from_decide

Move a task from Decide to Assess.

decide_move_project_to_do

Move a project from Decide to Do.

decide_move_project_to_assess_from_decide

Move a project from Decide to Assess.

do_mark_task_as_done

Mark a task as complete in Do.

do_mark_project_as_done

Mark a project as complete in Do.

moveToRealm

Move an item to any realm (assess/decide/do).

get_tasks_today_in_do

Query tasks completed today in Do.

get_tasks_tomorrow_in_do

Query tasks completed tomorrow in Do.

get_tasks_soon_in_do

Query tasks completed soon in Do.

get_tasks_overdue_in_do

Query tasks overdue in Do.

get_stalled_items_in_decide

Find stalled items in Decide (tasks and projects).

get_undecided_items_in_decide

Find undecided items in Decide.

get_ready_items_in_decide

Find items ready to do in Decide.