Skip to main content
Glama
JM-404

ActivityWatch MCP Server

by JM-404

Un servidor MCP que proporciona a los asistentes de IA conciencia en tiempo real de tu actividad informática a través de ActivityWatch. Sin consultas crudas. Sin sintaxis AQL. Solo pregúntale a tu IA "¿qué hice hoy?" y obtén una respuesta legible para humanos.

¿Por qué este?

Existen otros MCP de ActivityWatch por ahí. Así es como este es diferente:

Este proyecto

Otros

Interfaz de consulta

Herramientas de alto nivel pre-agregadas

Consultas AQL crudas

¿El usuario necesita saber AQL?

No

Categorías integradas

✅ programación, navegación, comunicación, etc.

Herramientas listas para usar

get_day_summary, get_current_activity, etc.

run_query(aql_string)

Diseñado para

Asistentes de IA e interfaces de chat

Depuración de desarrolladores

TL;DR: Otros MCP le dan a tu IA una consola de base de datos. Este le da a tu IA ojos.

¿Qué puede hacer tu IA con esto?

Una vez conectado, tu asistente de IA puede responder preguntas como:

  • 🕐 "¿En qué estoy trabajando ahora mismo?"

  • 📊 "¿Cómo pasé mi tiempo hoy?"

  • 💻 "¿Cuántas horas programé esta semana?"

  • 🌙 "¿A qué hora dejé de trabajar anoche?"

  • 🔍 "Muéstrame todo lo que hice ayer entre las 2pm y las 5pm."

  • 🌐 "¿En qué sitios web pasé más tiempo?"

  • 📁 "¿En qué proyectos trabajé esta semana?"

  • 🏷️ "Añade Cursor a mi categoría de programación."

Tu IA sabe lo que haces, no solo lo que dices. Puede notar patrones que tú pasas por alto, como cuando has estado programando durante 5 horas seguidas sin un descanso.

Inicio rápido

1. Requisitos previos

2. Instalación

git clone https://github.com/JM-404/activitywatch-mcp.git
cd activitywatch-mcp
npm install && npm run build

3. Configuración

Añádelo a tu configuración MCP de Claude Desktop / Claude Code:

{
  "mcpServers": {
    "activitywatch": {
      "command": "node",
      "args": ["/absolute/path/to/activitywatch-mcp/dist/index.js"]
    }
  }
}

4. Pruébalo

Abre Claude y pregunta: "¿Qué he estado haciendo en mi computadora hoy?"

Eso es todo. Sin AQL. Sin IDs de bucket. Solo conversación.

Herramientas

get_current_activity

"¿Qué estoy haciendo ahora mismo?"

Devuelve la aplicación activa actualmente, el título de la ventana, la duración y el estado AFK.

get_day_summary

"¿Cómo pasé mi tiempo hoy?"

Principales aplicaciones por tiempo de uso, horas totales activas/AFK, primera y última marca de tiempo activa.

Parámetros: date (opcional, por defecto es hoy)

get_category_time

"¿Cuántas horas programé esta semana?"

Tiempo agregado para una categoría o aplicación específica en un rango de fechas, con desglose diario.

Parámetros: category (requerido), start_date, end_date (opcional)

Categorías integradas:

Categoría

Aplicaciones

coding

VS Code, PyCharm, Terminal, iTerm2, Cursor, Warp, Xcode

browsing

Chrome, Safari, Firefox, Arc, Edge

communication

WeChat, Slack, Discord, Telegram, Messages, Zoom, Teams

entertainment

Bilibili, YouTube, Spotify, Netflix

writing

Obsidian, Notion, Typora, Word, Pages

design

Figma, Sketch, Canva, Photoshop

Personaliza las categorías con la variable de entorno AW_CATEGORIES_FILE apuntando a tu propio JSON.

get_timeline

"Guíame a través de mi tarde."

Lista cronológica de cambios de aplicación con títulos de ventana y duraciones.

Parámetros: date, start_time, end_time, min_duration_seconds

get_browser_history

"¿Qué sitios web visité hoy?"

Dominios principales por tiempo dedicado. Requiere la extensión de navegador de ActivityWatch.

Parámetros: date, domain (filtro opcional)

manage_categories

"Añade Cursor a mi categoría de programación."

Visualiza y modifica las asignaciones de categorías de actividad en tiempo de ejecución. Los cambios persisten en ~/.activitywatch-mcp/categories.json.

Parámetros: action (list | add | remove | update), category, apps

get_project_time

"¿En qué proyectos trabajé esta semana?"

Tiempo de programación desglosado por proyecto/repositorio. Extrae nombres de proyectos de los títulos de las ventanas del IDE (VS Code, Cursor, PyCharm, Xcode, Terminal).

Parámetros: start_date, end_date (opcional)

Fechas en lenguaje natural

Todos los parámetros de fecha aceptan lenguaje natural además de YYYY-MM-DD:

today, yesterday, this_week, last_week, this_month, last_month, last_7_days, last_30_days

Variables de entorno

Variable

Por defecto

Descripción

AW_HOST

http://localhost:5600

Dirección de la API de ActivityWatch

AW_TITLE_MAX_LENGTH

80

Truncar títulos de ventana por privacidad

AW_CATEGORIES_FILE

integrado

Ruta al JSON de asignación de categorías personalizado

Privacidad

🔒 Tus datos nunca salen de tu máquina.

  • ActivityWatch almacena todo localmente

  • Este servidor MCP se ejecuta localmente

  • Flujo de datos: ActivityWatch (local) → Servidor MCP (local) → Tu conversación con la IA

  • Los títulos de las ventanas se truncan para evitar la exposición accidental de contenido sensible

  • Sin telemetría, sin llamadas a API externas, sin almacenamiento en la nube

Hoja de ruta

  • [ ] Integración con Tiempo de Uso de macOS (datos de iPhone + Mac desde knowledgeC.db)

  • [ ] Informes diarios/semanales generados automáticamente

  • [ ] Alertas proactivas (ej. "Has estado programando durante 4 horas, toma un descanso")

  • [ ] Puntuación de productividad y análisis de tendencias

  • [ ] Transporte SSE para acceso remoto

Contribución

Las PRs y los problemas son bienvenidos. Si tienes ideas para nuevas herramientas o categorías, abre un problema.

Licencia

MIT


-
security - not tested
F
license - not found
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

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/JM-404/activitywatch-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server