ActivityWatch MCP Server
Ein MCP-Server, der KI-Assistenten durch ActivityWatch Echtzeit-Bewusstsein über deine Computeraktivitäten verleiht. Keine Rohabfragen. Keine AQL-Syntax. Frag deine KI einfach: "Was habe ich heute gemacht?" und erhalte eine menschenlesbare Antwort.
Warum dieses Projekt?
Es gibt andere ActivityWatch-MCPs. Hier ist der Unterschied:
Dieses Projekt | Andere | |
Abfrage-Schnittstelle | Voraggregierte High-Level-Tools | Roh-AQL-Abfragen |
Muss der Nutzer AQL kennen? | Nein | Ja |
Integrierte Kategorien | ✅ Programmieren, Surfen, Kommunikation etc. | ❌ |
Gebrauchsfertige Tools |
|
|
Entwickelt für | KI-Begleiter & Chat-Schnittstellen | Entwickler-Debugging |
Kurz gesagt: Andere MCPs geben deiner KI eine Datenbankkonsole. Dieses hier gibt deiner KI Augen.
Related MCP server: ActivityWatch MCP Server
Was kann deine KI damit tun?
Sobald die Verbindung steht, kann dein KI-Begleiter Fragen beantworten wie:
🕐 "Woran arbeite ich gerade?"
📊 "Wie habe ich heute meine Zeit verbracht?"
💻 "Wie viele Stunden habe ich diese Woche programmiert?"
🌙 "Wann habe ich gestern Abend aufgehört zu arbeiten?"
🔍 "Zeig mir alles, was ich gestern zwischen 14 und 17 Uhr gemacht habe."
🌐 "Auf welchen Websites habe ich die meiste Zeit verbracht?"
📁 "An welchen Projekten habe ich diese Woche gearbeitet?"
🏷️ "Füge Cursor zu meiner Kategorie 'Programmieren' hinzu."
Deine KI weiß, was du tust, nicht nur, was du sagst. Sie kann Muster erkennen, die dir entgehen – zum Beispiel, wenn du 5 Stunden am Stück ohne Pause programmiert hast.
Schnellstart
1. Voraussetzungen
ActivityWatch installiert und aktiv
Node.js >= 20
2. Installation
git clone https://github.com/JM-404/activitywatch-mcp.git
cd activitywatch-mcp
npm install && npm run build3. Konfiguration
Füge dies zu deiner Claude Desktop / Claude Code MCP-Konfiguration hinzu:
{
"mcpServers": {
"activitywatch": {
"command": "node",
"args": ["/absolute/path/to/activitywatch-mcp/dist/index.js"]
}
}
}4. Ausprobieren
Öffne Claude und frage: "Was habe ich heute an meinem Computer gemacht?"
Das war's. Kein AQL. Keine Bucket-IDs. Einfach nur Konversation.
Tools
get_current_activity
"Was mache ich gerade?"
Gibt die aktuell aktive App, den Fenstertitel, die Dauer und den AFK-Status zurück.
get_day_summary
"Wie habe ich heute meine Zeit verbracht?"
Top-Apps nach Nutzungszeit, gesamte aktive/AFK-Stunden, erste und letzte aktive Zeitstempel.
Parameter: date (optional, Standard ist heute)
get_category_time
"Wie viele Stunden habe ich diese Woche programmiert?"
Aggregierte Zeit für eine Kategorie oder eine bestimmte App über einen Datumsbereich, mit täglicher Aufschlüsselung.
Parameter: category (erforderlich), start_date, end_date (optional)
Integrierte Kategorien:
Kategorie | Apps |
| VS Code, PyCharm, Terminal, iTerm2, Cursor, Warp, Xcode |
| Chrome, Safari, Firefox, Arc, Edge |
| WeChat, Slack, Discord, Telegram, Messages, Zoom, Teams |
| Bilibili, YouTube, Spotify, Netflix |
| Obsidian, Notion, Typora, Word, Pages |
| Figma, Sketch, Canva, Photoshop |
Du kannst Kategorien mit der Umgebungsvariable AW_CATEGORIES_FILE anpassen, die auf dein eigenes JSON verweist.
get_timeline
"Geh meinen Nachmittag mit mir durch."
Chronologische Liste der App-Wechsel mit Fenstertiteln und Dauer.
Parameter: date, start_time, end_time, min_duration_seconds
get_browser_history
"Welche Websites habe ich heute besucht?"
Top-Domains nach verbrachter Zeit. Erfordert die ActivityWatch-Browsererweiterung.
Parameter: date, domain (optionaler Filter)
manage_categories
"Füge Cursor zu meiner Kategorie 'Programmieren' hinzu."
Kategorie-Mappings zur Laufzeit anzeigen und ändern. Änderungen werden in ~/.activitywatch-mcp/categories.json gespeichert.
Parameter: action (list | add | remove | update), category, apps
get_project_time
"An welchen Projekten habe ich diese Woche gearbeitet?"
Programmierzeit aufgeschlüsselt nach Projekt/Repository. Extrahiert Projektnamen aus IDE-Fenstertiteln (VS Code, Cursor, PyCharm, Xcode, Terminal).
Parameter: start_date, end_date (optional)
Natürlichsprachliche Datumsangaben
Alle Datumsparameter akzeptieren neben YYYY-MM-DD auch natürliche Sprache:
today, yesterday, this_week, last_week, this_month, last_month, last_7_days, last_30_days
Umgebungsvariablen
Variable | Standard | Beschreibung |
|
| ActivityWatch API-Adresse |
|
| Kürzt Fenstertitel aus Datenschutzgründen |
| integriert | Pfad zum benutzerdefinierten Kategorie-Mapping-JSON |
Datenschutz
🔒 Deine Daten verlassen niemals deinen Rechner.
ActivityWatch speichert alles lokal
Dieser MCP-Server läuft lokal
Datenfluss:
ActivityWatch (lokal) → MCP-Server (lokal) → Deine KI-KonversationFenstertitel werden gekürzt, um eine versehentliche Offenlegung sensibler Inhalte zu verhindern
Keine Telemetrie, keine externen API-Aufrufe, kein Cloud-Speicher
Roadmap
[ ] macOS Bildschirmzeit-Integration (iPhone + Mac Daten aus
knowledgeC.db)[ ] Automatisch generierte tägliche/wöchentliche Berichte
[ ] Proaktive Warnungen (z. B. "Du programmierst seit 4 Stunden – mach eine Pause")
[ ] Produktivitäts-Scoring und Trendanalyse
[ ] SSE-Transport für Fernzugriff
Mitwirken
Pull Requests und Issues sind willkommen. Wenn du Ideen für neue Tools oder Kategorien hast, öffne ein Issue.
Lizenz
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
- DoneThatOAuthai.donethat
Privacy-first work tracking with summaries, reports, coaching, and AI-ready long-term memory.
Track billable time from your AI chat: timers, entries, reports, CSV export. All data stays local.
Track billable time from your AI chat: timers, entries, reports, CSV export. All data stays local.
Track billable time from your AI chat: timers, entries, reports, CSV export. All data stays local.
Related MCP Servers
- AlicenseAqualityDmaintenanceAn interface that allows large language models like Claude to interact with ActivityWatch time tracking data through the Model Context Protocol, enabling queries about application usage, browsing history, and productivity patterns.573MIT
- AlicenseNot gradedqualityCmaintenanceEnables LLM agents to query and analyze ActivityWatch time tracking data, including window activity, web browsing, and category management with natural language time periods and automatic data aggregation.12GPL 3.0
- AlicenseNot gradedqualityBmaintenanceConnects AI assistants to the Tyme macOS app to manage time tracking, projects, and tasks via natural language. It uses native AppleScript and JXA to control timers and generate reports without requiring cloud dependencies or API keys.14 npm4MIT

TrackingTime MCPofficial
FlicenseNot gradedqualityDmaintenanceConnects AI assistants to TrackingTime for querying time entries, projects, tasks, customers, and team data using natural language.2 npm-