@ticktick-ecosystem/mcp-server
MCP server for integrating TickTick task management with AI applications, enabling task and project operations via natural language.
README
@ticktick-ecosystem/mcp-server
A Model Context Protocol (MCP) server for integrating TickTick task management with AI applications like Claude, ChatGPT, and other LLM-powered tools.
โจ Features
๐ ๏ธ Tools (AI Actions)
-
Task Management
create_task- Create new tasks with due dates, priorities, and projectsget_tasks- Retrieve tasks with filtering optionsupdate_task- Modify existing taskscomplete_task- Mark tasks as completeddelete_task- Remove taskssearch_tasks- Search tasks by title or contentget_today_tasks- Get today's scheduled tasksget_overdue_tasks- Get overdue tasks
-
Project Management
get_projects- List all projectscreate_project- Create new projectsupdate_project- Modify project detailsdelete_project- Remove projectsget_project_tasks- Get tasks within a specific project
๐ Resources (Data Access)
ticktick://tasks/today- Today's tasksticktick://tasks/overdue- Overdue tasksticktick://tasks/completed- Recently completed tasksticktick://projects/all- All projectsticktick://stats/summary- Productivity statistics
๐ก Prompts (AI Assistance)
daily_planning- AI-powered daily task planningtask_breakdown- Break complex tasks into subtaskspriority_analysis- Analyze and suggest task prioritiesweekly_review- Review productivity and plan aheadproject_planning- Comprehensive project planning
๐ Quick Start
Demo Mode (No Authentication Required)
Perfect for testing and evaluation:
# Clone and set up
git clone https://github.com/marketing-shibata50/ticktick-mcp.git
cd ticktick-mcp/ticktick-mcp-server
npm install
npm run build
# Run in demo mode
node dist/index.js --demo
Claude Code CLI Integration (Demo Mode)
# Auto-configure for Claude Code CLI
node install-mcp.js
# Select "Demo Mode" option
# Start Claude Code CLI in your project
cd /your/project/directory
claude
Claude Desktop Integration (Demo Mode)
Add to your Claude Desktop configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"ticktick-demo": {
"command": "node",
"args": ["/FULL/PATH/TO/ticktick-mcp-server/dist/index.js", "--demo"]
}
}
}
Restart Claude Desktop and start asking about your tasks!
๐ ๏ธ Step-by-Step Installation Guide
Choose your preferred installation method based on your use case:
๐ฏ Method A: Git Clone Installation (Recommended for Developers)
Perfect for customization, development, or local modifications:
Step 1: Clone Repository and Setup
# 1. Clone the repository
git clone https://github.com/marketing-shibata50/ticktick-mcp.git
# 2. Navigate to the directory
cd ticktick-mcp/ticktick-mcp-server
# 3. Install dependencies and build
npm install
npm run build
Step 2: Get TickTick API Credentials
- Visit TickTick Developer Portal
- Login with your TickTick account
- Click "Manage Apps" โ "+App Name"
- Enter app name (e.g., "My Personal MCP Server")
- Set redirect URI to:
http://localhost:3000/callback - Copy your Client ID and Client Secret
Step 3: Production Setup (Real TickTick Data)
# 4. Run production setup (NOT demo mode)
node dist/index.js --setup
Important: Do NOT use --demo flag for production!
The interactive setup will:
- Prompt for API credentials (Client ID & Secret from Step 2)
- Start OAuth server on
http://localhost:3000 - Open browser for TickTick authorization
- Exchange authorization code for access tokens
- Save configuration to
~/.ticktick-mcp/config.json
Expected Output:
๐ง TickTick MCP Server ใปใใใขใใใ้ๅงใใพใ...
๐ TickTick API่ช่จผๆ
ๅ ฑใฎๅๅพๆนๆณ๏ผ
Client ID ใๅ
ฅๅใใฆใใ ใใ: [your_client_id]
Client Secret ใๅ
ฅๅใใฆใใ ใใ: [your_client_secret]
๐ OAuth่ช่จผใ้ๅงใใพใ...
๐ ใใฉใฆใถใ้ใใพใ: http://localhost:3000
โ
่ช่จผๅฎไบ๏ผ่จญๅฎใไฟๅญใใใพใใ
Step 4: Test Production Installation
# 5. Test with real TickTick data
node dist/index.js
# or
npm start
Verification Commands:
# Check if configuration exists
ls ~/.ticktick-mcp/config.json
# View saved configuration
cat ~/.ticktick-mcp/config.json
# Test MCP server connection
npx @modelcontextprotocol/inspector node dist/index.js
Expected Behavior:
- โ No authentication errors
- โ Connects to your real TickTick account
- โ Shows actual tasks and projects
Step 5: Claude Code CLI Setup (Automatic)
# 7. Auto-configure Claude Code CLI
node install-mcp.js
This will:
- โ
Create
.mcp.jsonin your project root - โ Set up correct local paths automatically
- โ Offer production and demo mode options
- โ Handle all Claude Code CLI configuration
For Claude Desktop users, add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"ticktick": {
"command": "node",
"args": ["/FULL/PATH/TO/ticktick-mcp-server/dist/index.js"]
}
}
}
Step 6: Start Using with Claude Code CLI
# 8. Start Claude Code CLI in your project
cd /your/project/directory
claude
Test with natural language:
- "Show me my TickTick tasks for today"
- "Create a new task: Review quarterly budget"
- "What are my overdue tasks?"
- "Show me all projects"
๐ You're now managing real TickTick data with AI!
For Claude Desktop users:
- Restart Claude Desktop
- Use the same natural language commands
Mode Summary:
| Mode | Command | Data Source | Use Case |
|---|---|---|---|
| Production | node dist/index.js |
Your real TickTick | Daily use |
| Demo | node dist/index.js --demo |
Mock data | Testing only |
๐ Method B: Direct Download (Alternative)
Alternative method if you don't want to use git:
Step 1: Download Source
# 1. Download and extract
curl -L https://github.com/marketing-shibata50/ticktick-mcp/archive/main.zip -o ticktick-mcp.zip
unzip ticktick-mcp.zip
cd ticktick-mcp-main/ticktick-mcp-server
Step 2-6: Same as Method A
Follow Steps 2-6 from Method A (Git Clone Installation)
๐ญ Method C: Demo Mode (No Authentication)
Perfect for testing and evaluation:
Step 1: Quick Demo
# 1. Install and run demo instantly
npx @ticktick-ecosystem/mcp-server --demo
Step 2: Claude Desktop Demo Setup
{
"mcpServers": {
"ticktick-demo": {
"command": "npx",
"args": ["@ticktick-ecosystem/mcp-server", "--demo"],
"env": {
"TICKTICK_DEMO_MODE": "true"
}
}
}
}
Step 3: Test Features
- Restart Claude Desktop
- Try: "Show me demo tasks"
- Test all features with mock data
- ๐ฏ Evaluate before setting up real authentication
๐ง Post-Installation Verification
Verify Installation
# Check version (from ticktick-mcp-server directory)
node dist/index.js --version
# Test MCP connection
npx @modelcontextprotocol/inspector node dist/index.js --demo
Common Setup Commands
# Re-run production setup if needed
node dist/index.js --setup
# Test production mode (real data)
node dist/index.js
# Test demo mode (mock data)
node dist/index.js --demo
# View saved configuration
cat ~/.ticktick-mcp/config.json
# Check version
node dist/index.js --version
๐ Production vs Demo Quick Reference
Production Mode (Real TickTick Data)
# Setup once (from project directory)
node dist/index.js --setup
# Daily usage
node dist/index.js
# Claude Desktop config
{
"mcpServers": {
"ticktick": {
"command": "node",
"args": ["/FULL/PATH/TO/ticktick-mcp-server/dist/index.js"]
}
}
}
Demo Mode (Mock Data - Testing Only)
# No setup needed (from project directory)
node dist/index.js --demo
# Claude Desktop config
{
"mcpServers": {
"ticktick-demo": {
"command": "node",
"args": ["/FULL/PATH/TO/ticktick-mcp-server/dist/index.js", "--demo"]
}
}
}
โ ๏ธ Important:
- Production: Uses your real TickTick account data
- Demo: Uses fake test data for evaluation only
๐ฆ Installation
npm install @ticktick-ecosystem/mcp-server
Or install globally:
npm install -g @ticktick-ecosystem/mcp-server
๐ง Authentication Setup (For Real Data)
1. Get TickTick API Credentials
- Visit TickTick Developer Portal
- Create a new application
- Note your Client ID and Client Secret
- Set OAuth Redirect URL to:
http://localhost:3000/callback
2. Environment Configuration
Create a .env file or set environment variables:
# Required
TICKTICK_CLIENT_ID=your_client_id_here
TICKTICK_CLIENT_SECRET=your_client_secret_here
# Optional (will be obtained through OAuth if not provided)
TICKTICK_REDIRECT_URI=http://localhost:3000/callback
TICKTICK_ACCESS_TOKEN=your_access_token_here
TICKTICK_REFRESH_TOKEN=your_refresh_token_here
3. Interactive Setup (Recommended)
# Install the package
npm install -g @ticktick-ecosystem/mcp-server
# Run interactive setup
npx @ticktick-ecosystem/mcp-server --setup
This will guide you through:
- Getting TickTick API credentials
- OAuth authorization flow
- Automatic configuration saving to
~/.ticktick-mcp/config.json
๐ฏ Usage Examples
Creating Tasks with AI
User: "Create a task to review the quarterly budget report, due next Friday with high priority"
AI Response: "I'll create that task for you with high priority and set the due date for next Friday."
Result: New task created in TickTick with proper priority and due date
Daily Planning
User: "Help me plan my day"
AI Response: Based on your current tasks, I recommend:
1. Morning: Focus on the quarterly budget review (high priority)
2. Afternoon: Team meeting preparation
3. Evening: Code review for the new feature
Would you like me to adjust any task priorities or deadlines?
Project Management
User: "Show me all tasks in my 'Website Redesign' project that are overdue"
AI Response: [Lists overdue tasks with details and suggests next actions]
๐ง Configuration
Demo Mode Features
- โ No authentication required
- โ Uses realistic mock data
- โ All functions work with sample tasks and projects
- โ Perfect for testing and evaluation
- โ Safe for public demonstrations
Production Mode Features
- ๐ Real-time TickTick synchronization
- ๐ OAuth 2.0 secure authentication
- ๐ Access to your actual tasks and projects
- ๐ Automatic token refresh
- ๐ Real productivity statistics
Claude Desktop Configuration (Production)
{
"mcpServers": {
"ticktick": {
"command": "npx",
"args": ["@ticktick-ecosystem/mcp-server"],
"env": {
"TICKTICK_CLIENT_ID": "your_client_id",
"TICKTICK_CLIENT_SECRET": "your_client_secret",
"TICKTICK_ACCESS_TOKEN": "your_access_token",
"TICKTICK_REFRESH_TOKEN": "your_refresh_token"
}
}
}
}
Other MCP Clients
The server uses stdio transport and is compatible with any MCP-compliant client:
# For MCP Inspector
npx @modelcontextprotocol/inspector npx @ticktick-ecosystem/mcp-server --demo
# For custom integrations
npx @ticktick-ecosystem/mcp-server
๐ API Reference
Task Priority Levels
0- None1- Low3- Medium5- High
Date Formats
- Due dates: ISO format (
YYYY-MM-DDorYYYY-MM-DDTHH:mm:ss) - All dates are in UTC unless timezone is specified
Response Format
All tools return structured responses:
Success:
{
"success": true,
"data": { ... },
"message": "Operation completed successfully"
}
Error:
{
"success": false,
"error": "Error description"
}
๐งช Testing
# Quick demo test
npm run demo
# With MCP Inspector
npm install -g @modelcontextprotocol/inspector
npx @modelcontextprotocol/inspector npx @ticktick-ecosystem/mcp-server --demo
See TESTING.md for comprehensive testing instructions.
๐ Security & Privacy
- OAuth 2.0 secure authentication
- Tokens stored locally only
- No data collection or telemetry
- Open source and auditable
- Demo mode uses no real data
๐ ๏ธ Development
# Clone repository
git clone https://github.com/ticktick-ecosystem/mcp-server
cd mcp-server
# Install dependencies
npm install
# Build
npm run build
# Development mode
npm run dev
# Run tests
npm test
# Demo mode
npm run demo
๐ Documentation
- Authentication Guide - Detailed authentication setup
- Testing Guide - Comprehensive testing instructions
- MCP Protocol - Learn about Model Context Protocol
- TickTick API - Official TickTick API documentation
๐ค Contributing
We welcome contributions! Please see our contributing guidelines:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ Support
- ๐ Documentation
- ๐ Issue Tracker
- ๐ฌ Discussions
๐ Related Projects
- Model Context Protocol - The protocol this server implements
- TickTick - The task management platform
- Claude Desktop - AI assistant with MCP support
- MCP Inspector - Tool for testing MCP servers
๐ Acknowledgments
- Anthropic for developing the Model Context Protocol
- TickTick for providing the task management API
- The MCP community for feedback and contributions
Made with โค๏ธ for the TickTick and MCP communities
๐ Ready to supercharge your productivity with AI-powered task management!
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.