Servidor MCP de ActivityWatch
Un servidor de Protocolo de contexto de modelo (MCP) que se conecta a ActivityWatch , lo que permite que los LLM como Claude interactúen con sus datos de seguimiento de tiempo.
Características
- Lista de depósitos : ver todos los depósitos de ActivityWatch disponibles
- Ejecutar consultas : ejecute potentes consultas AQL (lenguaje de consulta de ActivityWatch)
- Obtener eventos sin procesar : recupera eventos directamente desde cualquier bucket
- Obtener configuración : acceder a la configuración de ActivityWatch
Instalación
Puede instalar el servidor MCP de ActivityWatch desde npm o compilándolo usted mismo.
Instalación desde npm (próximamente)
Construyendo desde la fuente
- Clonar este repositorio:
- Instalar dependencias:
- Construir el proyecto:
Prerrequisitos
- ActivityWatch instalado y funcionando
- Node.js (v14 o superior)
- Claude para escritorio (o cualquier otro cliente MCP)
Uso
Uso con Claude para escritorio
- Abra el archivo de configuración de Claude for Desktop:
- Ventanas:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Ventanas:
- Agregue la configuración del servidor MCP:
Si lo construiste desde la fuente, usa:
- Reiniciar Claude para escritorio
- Busque el ícono MCP en la interfaz de Claude para confirmar que funciona
Consultas de ejemplo
A continuación se muestran algunos ejemplos de consultas que puedes probar en Claude:
- Enumere todos sus depósitos : "¿Qué depósitos de ActivityWatch tengo?"
- Obtener un resumen de uso de la aplicación : "¿Puede mostrarme qué aplicaciones he usado más hoy?"
- Ver el historial de navegación : "¿En qué sitios web he pasado más tiempo hoy?"
- Comprobar la productividad : "¿Cuánto tiempo he pasado en aplicaciones de productividad hoy?"
- Ver configuración : "¿Cuáles son mis configuraciones de ActivityWatch?" o "¿Puedes consultar una configuración específica en ActivityWatch?"
Herramientas disponibles
lista de cubos
Enumera todos los depósitos de ActivityWatch disponibles con filtrado de tipo opcional.
Parámetros:
type
(opcional): Filtra los grupos por tipo (por ejemplo, "ventana", "web", "afk")includeData
(opcional): incluye datos del depósito en la respuesta
ejecutar consulta
Ejecute una consulta en el lenguaje de consulta de ActivityWatch (AQL).
Parámetros:
timeperiods
: Periodo(s) de consulta, formateados como una matriz de cadenas. Para rangos de fechas, utilice el formato:["2024-10-28/2024-10-29"]
query
: Matriz de declaraciones de consulta en el lenguaje de consulta de ActivityWatch, donde cada elemento es una consulta completa con declaraciones separadas por punto y comaname
(opcional): nombre para la consulta (usado para almacenamiento en caché)
IMPORTANTE : Cada cadena de consulta debe contener una consulta completa con múltiples declaraciones separadas por punto y coma.
Ejemplo de formato de solicitud:
Tenga en cuenta que:
timeperiods
deben tener rangos de fechas preformateados con barras- Cada elemento de la matriz
query
es una consulta completa con todas las declaraciones
obtener eventos
Obtenga eventos sin procesar de un depósito ActivityWatch.
Parámetros:
bucketId
: ID del depósito del que se obtendrán los eventosstart
(opcional): Fecha/hora de inicio en formato ISOend
(opcional): Fecha/hora de finalización en formato ISOlimit
(opcional): Número máximo de eventos a devolver
obtener configuraciones
Obtenga la configuración de ActivityWatch del servidor.
Parámetros:
key
(opcional): obtener una clave de configuración específica en lugar de todas las configuraciones
Ejemplos de lenguaje de consulta
ActivityWatch utiliza un lenguaje de consulta sencillo. A continuación, se muestran algunos patrones comunes:
Configuración
El servidor se conecta a la API de ActivityWatch en http://localhost:5600
de forma predeterminada. Si su instancia de ActivityWatch se ejecuta en un host o puerto diferente, puede modificarlo en el código fuente.
Solución de problemas
ActivityWatch no funciona
Si ActivityWatch no se está ejecutando, el servidor mostrará errores de conexión. Asegúrese de que ActivityWatch se esté ejecutando y sea accesible en http://localhost:5600 .
Errores de consulta
Si encuentra errores de consulta:
- Comprueba la sintaxis de tu consulta
- Asegúrese de que los identificadores de los depósitos sean correctos
- Verificar que los periodos de tiempo contengan datos
- Consulte los registros de ActivityWatch para obtener más detalles
Problemas de formato de consultas de Claude/MCP
Si Claude informa errores al ejecutar consultas a través de este servidor MCP, probablemente se deba a problemas de formato. Asegúrese de que su consulta siga exactamente este formato en sus indicaciones:
Problemas comunes:
- Los períodos de tiempo no están formateados correctamente (deberían ser "inicio/fin" en una sola cadena dentro de una matriz)
- Las declaraciones de consulta se dividen en elementos de matriz separados en lugar de combinarse en una cadena
El problema de formato más común
El error más frecuente es cuando Claude divide cada declaración de consulta en su propio elemento de matriz de esta manera:
Esto es INCORRECTO. En su lugar, todas las declaraciones deberían estar en una sola cadena dentro del array:
Al incitar a Claude
Al darle indicaciones a Claude, sea muy explícito sobre el formato y use ejemplos. Por ejemplo, diga:
Ejecute una consulta con los períodos ["2024-10-28/2024-10-29"]
y la consulta ["statement1; statement2; RETURN = result;"]
. Importante: Asegúrese de que TODAS las sentencias de consulta estén en una sola cadena dentro de la matriz, no divididas en elementos separados.
Contribuyendo
¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.
Licencia
You must be authenticated.
local-only server
The server can only run on the client's local machine because it depends on local resources.
Tools
Una interfaz que permite que modelos de lenguaje grandes como Claude interactúen con los datos de seguimiento de tiempo de ActivityWatch a través del Protocolo de contexto de modelo, lo que permite realizar consultas sobre el uso de la aplicación, el historial de navegación y los patrones de productividad.
- Características
- Instalación
- Prerrequisitos
- Uso
- Herramientas disponibles
- Ejemplos de lenguaje de consulta
- Configuración
- Solución de problemas
- Contribuyendo
- Licencia
Related Resources
Related MCP Servers
- -securityAlicense-qualityA Model Context Profile server that enables Claude to interact with Todoist, allowing users to create, retrieve, update, and manage tasks through natural language commands.Last updated -1PythonMIT License
- -securityAlicense-qualityA Model Context Protocol server that enables Large Language Models to interact with ClickUp workspace tasks and data, allowing creation and retrieval of tasks through natural language.Last updated -59TypeScriptMIT License
- AsecurityFlicenseAqualityA Model Context Protocol service for Claude that enables natural language interaction with Microsoft Todo tasks, including viewing task lists, creating tasks, and managing checklist items.Last updated -131113TypeScript
- -securityFlicense-qualityA Model Context Protocol server that enables Claude to interact with your Todoist account, allowing you to manage tasks, projects, and labels through natural language.Last updated -1Python