Skip to main content

Security-hardened MCP server for TickTick task management

Project description

TickTick MCP Server

A security-hardened Model Context Protocol (MCP) server for TickTick that enables managing your tasks directly through Claude.

PyPI version

Requirements

  • Python 3.10+
  • uv (recommended) or pip
  • TickTick account
  • TickTick API credentials (get them here)

Quick Start

1. Get TickTick API Credentials

  1. Go to TickTick Developer Center
  2. Create a new app with redirect URI: http://localhost:8080/callback
  3. Copy your Client ID and Client Secret

2. Configure Claude Desktop

Add to your Claude Desktop config:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "ticktick": {
      "command": "uvx",
      "args": ["ticktick-mcp-server"]
    }
  }
}

3. Authenticate

Run once to connect your TickTick account:

uvx ticktick-mcp-server auth

4. Restart Claude Desktop

That's it! Ask Claude things like:

  • "Show me all my TickTick projects"
  • "What tasks are due today?"
  • "Create a task to buy groceries in my Shopping list"

Alternative Installation

Using pip

pip install ticktick-mcp-server
ticktick-mcp-server auth

Then use in Claude Desktop config:

{
  "mcpServers": {
    "ticktick": {
      "command": "ticktick-mcp-server"
    }
  }
}

From Source

git clone https://github.com/felores/ticktick-mcp-server.git
cd ticktick-mcp-server
uv pip install -e .

Dida365 (滴答清单) Support

For the China version of TickTick, add these to your .env file:

TICKTICK_BASE_URL='https://api.dida365.com/open/v1'
TICKTICK_AUTH_URL='https://dida365.com/oauth/authorize'
TICKTICK_TOKEN_URL='https://dida365.com/oauth/token'

Register your app at Dida365 Developer Center.


Available Tools

Projects

Tool Description
get_projects List all projects
get_project Get project details
create_project Create a new project
delete_project Delete a project

Tasks

Tool Description
get_task Get task details
create_task Create a new task
update_task Update a task
complete_task Mark task complete
delete_task Delete a task
get_all_tasks Get all tasks
search_tasks Search tasks

Date Filters

Tool Description
get_tasks_due_today Tasks due today
get_tasks_due_tomorrow Tasks due tomorrow
get_tasks_due_this_week Tasks due this week
get_overdue_tasks Overdue tasks

GTD Workflow

Tool Description
get_engaged_tasks High priority + overdue
get_next_tasks Medium priority + due tomorrow
batch_create_tasks Create multiple tasks

Example Prompts

"Show me all my TickTick projects"
"What tasks do I have due today?"
"Create a high priority task 'Finish report' in my Work project"
"Mark 'Buy groceries' as complete"
"Show me everything that's overdue"
"Break down 'Plan vacation' into 5 subtasks"

Why This Fork?

This is a security-hardened fork of jacepark12/ticktick-mcp with 9 vulnerabilities fixed:

Severity Issue Status
Critical CSRF in OAuth callback Fixed
High Insecure credential file permissions Fixed
High OAuth server binds to all interfaces Fixed
High No explicit TLS verification Fixed
Medium Sensitive data in error messages Fixed
Medium No rate limiting on OAuth Fixed
Medium Bare except catches signals Fixed
Medium Path traversal in IDs Fixed
Medium Race conditions in state Fixed

License

MIT License - see LICENSE file for details.

Credits

Fork of jacepark12/ticktick-mcp.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ticktick_mcp_server-0.2.1.tar.gz (17.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ticktick_mcp_server-0.2.1-py3-none-any.whl (20.6 kB view details)

Uploaded Python 3

File details

Details for the file ticktick_mcp_server-0.2.1.tar.gz.

File metadata

  • Download URL: ticktick_mcp_server-0.2.1.tar.gz
  • Upload date:
  • Size: 17.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.12

File hashes

Hashes for ticktick_mcp_server-0.2.1.tar.gz
Algorithm Hash digest
SHA256 3caf86bda1578526e578998ea9951a573dc1f2e9d138c06551f9fbd2657064f1
MD5 d1da1f9ca8dcea8f4a79f9fc9806a631
BLAKE2b-256 a1216f22f5f22aa8e460f3afa5c324071bb8cdf0584f00d38f87ffa753b48132

See more details on using hashes here.

File details

Details for the file ticktick_mcp_server-0.2.1-py3-none-any.whl.

File metadata

File hashes

Hashes for ticktick_mcp_server-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 889a3b028ae5f5323ffb29b6689b5bec9c298b66346eda72f3d47b0645c5077c
MD5 cb52c445a4768c762b61d9f4e37ff684
BLAKE2b-256 f65382dcf5a3e27afc8a7e658b842ce744be4dc1e5ea6b3c11b0c70a1130f4fa

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page