ticktick-mcp
TickTick MCP-Server -- Die vollständige TickTick-Integration für Claude
28 Tools. Vollständiges CRUD. Intelligente Abfragen. Filter mit mehreren Bedingungen. Stapelverarbeitung. GTD-Unterstützung. Dida365-kompatibel.
Verbinde Claude mit deinem TickTick-Konto und verwalte dein gesamtes Aufgabensystem durch natürliche Konversation – erstelle Aufgaben, durchsuche Projekte, prüfe überfällige Aufgaben, erstelle Elemente in Stapeln und bleibe organisiert, ohne jemals die App öffnen zu müssen.
„Was ist überfällig?“ --> Zeigt sofort alle verpassten Fristen über alle Projekte hinweg an.
Warum dieses Tool?
Funktion | Dieser Server | TickTick Offizielles MCP | jacepark12 |
Tools | 28 | 22 | ~20 |
Filter mit mehreren Bedingungen | Ja (Priorität + Tag + Datum + Projekt) | Ja | Nein |
Aufgaben zwischen Projekten verschieben | Ja | Ja | Nein |
Stapelweise erledigen | Ja (bis zu 20) | Ja (bis zu 20) | Nein |
Stapelweise aktualisieren | Ja | Ja | Nein |
Ansicht erledigter Aufgaben | Ja | Ja | Nein |
Projektübergreifende Suche | Volltextsuche | Ja | Ja |
Unteraufgaben | Ja | Nein | Nein |
GTD-Fokusansicht | Ja (hohe Priorität + fällig + überfällig) | Nein | Teilweise |
Dida365-Unterstützung | Ja (konfigurierbare Basis-URL) | Nein | Ja |
Async (httpx) | Ja | N/A | Nein (synchrone Anfragen) |
Pydantic-Validierung | Ja (typisierte Eingaben) | N/A | Nein |
MCP-Anmerkungen | Ja (readOnly, destruktive Hinweise) | N/A | Nein |
Selbst gehostet / Open Source | Ja | Nein (gehosteter Dienst) | Ja |
Datenschutz | 100 % lokal, nur deine Tokens | Läuft über TickTick-Server | 100 % lokal |
Related MCP server: mcp-server-asana
Schnellstart
Voraussetzungen
TickTick Konto
Python 3.10+
Claude Code oder Claude Desktop
Schritt 1 -- Klonen und installieren
git clone https://github.com/Salen-Project/ticktick-mcp
cd ticktick-mcp
python3 -m venv .venv
.venv/bin/pip install -r requirements.txtSchritt 2 -- Registriere eine TickTick-Entwickler-App
Gehe zu developer.ticktick.com
Klicke auf New App und gib einen beliebigen Namen ein
Setze die OAuth Redirect URL auf:
http://localhost:8080/callbackKopiere deine Client ID und dein Client Secret
Schritt 3 -- Authentifizierung
TICKTICK_CLIENT_ID=your_id TICKTICK_CLIENT_SECRET=your_secret .venv/bin/python3 setup_auth.pyDies öffnet deinen Browser, um die App zu autorisieren. Klicke auf Allow – die Tokens werden unter ~/.ticktick_mcp/tokens.json gespeichert und automatisch aktualisiert.
Schritt 4 -- Registrierung bei Claude Code
claude mcp add ticktick \
-e TICKTICK_CLIENT_ID=your_id \
-e TICKTICK_CLIENT_SECRET=your_secret \
-- /path/to/ticktick-mcp/.venv/bin/python3 /path/to/ticktick-mcp/server.pyFür Claude Desktop
Füge dies zu deiner claude_desktop_config.json hinzu:
{
"mcpServers": {
"ticktick": {
"type": "stdio",
"command": "/path/to/ticktick-mcp/.venv/bin/python3",
"args": ["/path/to/ticktick-mcp/server.py"],
"env": {
"TICKTICK_CLIENT_ID": "your_id",
"TICKTICK_CLIENT_SECRET": "your_secret"
}
}
}
}Schritt 5 -- Produktivitäts-Skill hinzufügen (optional)
mkdir -p ~/.claude/skills/ticktick
cp skills/ticktick/SKILL.md ~/.claude/skills/ticktick/Dida365-Unterstützung
Für Dida365 (die chinesische Version von TickTick) setze diese Umgebungsvariablen:
TICKTICK_BASE_URL=https://api.dida365.com/open/v1
TICKTICK_TOKEN_URL=https://dida365.com/oauth/tokenNutzungsbeispiele
Du sagst | Was passiert |
„Erinnere mich daran, am Freitag den Zahnarzt anzurufen“ | Aufgabe mit Fälligkeitsdatum erstellt |
„Füge 'Q1-Bericht prüfen' zu Arbeit hinzu, hohe Priorität“ | Aufgabe im Projekt Arbeit, Priorität 5 |
„Was ist überfällig?“ | Zeigt alle überfälligen Aufgaben über alle Projekte hinweg an |
„Worauf sollte ich mich konzentrieren?“ | GTD-Ansicht: hohe Priorität + heute fällig + überfällig |
„Suche nach allem zum Thema 'Budget'“ | Volltextsuche über alle Projekte hinweg |
„Zeige mir alle Aufgaben mit hoher Priorität“ | Filtert nach Priorität=5 über alle Projekte hinweg |
„Was ist diese Woche fällig?“ | Aufgaben, die in den nächsten 7 Tagen fällig sind |
„Erstelle Aufgaben: Milch kaufen, John anrufen, Bericht einreichen“ | Erstellt stapelweise 3 Aufgaben |
„Erstelle ein Projekt namens 'Urlaubsplanung'“ | Neues Projekt erstellt |
„Füge Unteraufgabe 'Sonnencreme kaufen' zur Urlaubsaufgabe hinzu“ | Unteraufgabe erstellt |
„Ich habe die Zahnarzt-Aufgabe erledigt“ | Aufgabe als erledigt markiert |
„Lösche das alte Sprint-Projekt“ | Projekt und alle Aufgaben gelöscht |
MCP-Tools-Referenz
Projekte (5 Tools)
Tool | Beschreibung |
| Liste alle Projekte mit IDs, Namen und Farben auf |
| Details eines bestimmten Projekts abrufen |
| Projektdetails + alle unerledigten Aufgaben in einem Aufruf abrufen |
| Neues Projekt erstellen (Name, Farbe, Ansichtsmodus) |
| Name, Farbe oder Ansichtsmodus eines Projekts aktualisieren |
| Projekt dauerhaft löschen |
Aufgaben -- Grundlegendes CRUD (7 Tools)
Tool | Beschreibung |
| Alle Aufgaben in einem bestimmten Projekt auflisten |
| Aufgabe erstellen (Titel, Fälligkeitsdatum, Priorität, Projekt, Tags) |
| Vollständige Details einer bestimmten Aufgabe abrufen |
| Titel, Inhalt, Daten oder Priorität aktualisieren |
| Aufgabe als erledigt markieren |
| Aufgabe dauerhaft löschen |
| Unteraufgabe unter einer übergeordneten Aufgabe erstellen |
Aufgaben -- Intelligente Abfragen (7 Tools)
Tool | Beschreibung |
| Alle Aufgaben über alle aktiven Projekte hinweg abrufen |
| Volltextsuche über Titel, Inhalt, Unteraufgaben |
| Nach Priorität filtern (Keine/Niedrig/Mittel/Hoch) |
| Heute fällige Aufgaben über alle Projekte hinweg |
| Alle überfälligen Aufgaben über alle Projekte hinweg |
| Aufgaben, die in den nächsten 7 Tagen fällig sind |
| Aufgaben, die in genau N Tagen fällig sind |
Aufgaben -- Stapelverarbeitung & Produktivität (5 Tools)
Tool | Beschreibung |
| Mehrere Aufgaben gleichzeitig erstellen |
| Mehrere Aufgaben gleichzeitig aktualisieren |
| Bis zu 20 Aufgaben gleichzeitig als erledigt markieren |
| Aufgabe von einem Projekt in ein anderes verschieben |
| GTD-Fokusansicht: hohe Priorität + heute fällig + überfällig |
Aufgaben -- Erweiterte Filter (2 Tools)
Tool | Beschreibung |
| Filter mit mehreren Bedingungen: Priorität + Tag + Datumsbereich + Projekt + Status |
| Erledigte Aufgaben in einem Projekt anzeigen |
Benutzer (1 Tool)
Tool | Beschreibung |
| Benutzereinstellungen abrufen (Zeitzone, Wochenbeginn, etc.) |
Architektur
server.py # 20 MCP tools, async httpx, Pydantic validation
setup_auth.py # One-time OAuth 2.0 setup (browser-based)
~/.ticktick_mcp/ # Token storage (auto-refreshed)
skills/ticktick/ # Claude skill for natural task languageDesign-Entscheidungen:
Überall Async --
httpx.AsyncClientfür nicht blockierende API-AufrufePydantic-Eingabemodelle -- Typsichere, validierte Eingaben mit klaren Fehlermeldungen
MCP-Anmerkungen --
readOnlyHint,destructiveHintfür sicherere Tool-NutzungAutomatische Token-Aktualisierung -- Tokens werden transparent mit einem 60-Sekunden-Puffer aktualisiert
Fehlerbehebung
„Given client ID does not match“ -- Überprüfe deine Client ID auf developer.ticktick.com.
Port 8080 bereits in Verwendung -- lsof -ti:8080 | xargs kill -9 und dann erneut versuchen.
Tokens abgelaufen -- Führe setup_auth.py erneut aus, um neue Tokens zu erhalten.
Claude sieht die Tools nicht -- Führe claude mcp list aus, um die Registrierung zu überprüfen.
Mitwirken
Beiträge sind willkommen! Bitte eröffne zuerst ein Issue, um zu besprechen, was du ändern möchtest.
git clone https://github.com/Salen-Project/ticktick-mcp
cd ticktick-mcp
python3 -m venv .venv
.venv/bin/pip install -r requirements.txt
# Make your changes to server.py
# Test: python3 -c "from server import mcp; print(len(mcp._tool_manager._tools), 'tools')"Links
Lizenz
MIT (c) Salen-Project
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/abdulhamid-n/ticktick-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server