DeskTime MCP by usefulapi

Read tracked time and projects; create projects and start or stop timers in DeskTime.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
100%
Integridad del esquema
87%
Calidad de los nombres
80%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~2,076Tokens (definiciones de herramientas)
~1.2 KBTamaño de respuesta típico
Impacto moderado en la atención (1.62% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "desktime": {
      "url": "https://desktime.usefulapi.io/mcp"
    }
  }
}

Puntos de conexión remotos

https://desktime.usefulapi.io/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (10)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢desktime_get_company

The DeskTime company account this API key belongs to: company name, work schedule (start, end, duration, working days), tracking window and account timezone. GET /company.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢desktime_list_employees(date, period, page, page_size)

All employees of the company with their tracked time for a day, week or month: arrived/left, online, desk, at-work, productive time, productivity and efficiency, group. Starts at `date` (default today); `period` is day (default), week or month. Returned a page at a time (employee-days, sorted by date then id). Needs an admin's key. GET /employees. This is employee monitoring (personal) data: ask for one day at a time and only what the user needs.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "date": {
      "description": "The day to read, yyyy-mm-dd, in the DeskTime account's timezone. Default: today.",
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$"
    },
    "period": {
      "description": "Window starting at `date`: day (default), week or month.",
      "type": "string",
      "enum": [
        "day",
        "week",
        "month"
      ]
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "page_size": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢desktime_get_employee(id, date)

One employee's summary for one day: name, email, group, arrived/left, late, online/offline/desk/at-work/productive time (seconds), productivity and efficiency. Without projects or apps; see desktime_get_employee_projects / _apps / _full for those. GET /employee/basic. This is employee monitoring (personal) data: ask for one day at a time and only what the user needs.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "description": "DeskTime employee id (from desktime_list_employees). Omit for the user the API key belongs to. Other employees need an admin key.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "date": {
      "description": "The day to read, yyyy-mm-dd, in the DeskTime account's timezone. Default: today.",
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢desktime_get_employee_projects(id, date)

One employee's day summary plus the projects and tasks they tracked time on that day. GET /employee/projects. This is employee monitoring (personal) data: ask for one day at a time and only what the user needs.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "description": "DeskTime employee id (from desktime_list_employees). Omit for the user the API key belongs to. Other employees need an admin key.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "date": {
      "description": "The day to read, yyyy-mm-dd, in the DeskTime account's timezone. Default: today.",
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢desktime_get_employee_apps(id, date)

One employee's day summary plus the apps, websites and titles they used that day, with durations and productivity class. Lists longer than 200 entries are cut. GET /employee/apps. This is employee monitoring (personal) data: ask for one day at a time and only what the user needs.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "description": "DeskTime employee id (from desktime_list_employees). Omit for the user the API key belongs to. Other employees need an admin key.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "date": {
      "description": "The day to read, yyyy-mm-dd, in the DeskTime account's timezone. Default: today.",
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢desktime_get_employee_full(id, date)

One employee's day summary plus both the tracked projects/tasks and the apps/websites used that day. The largest reply: prefer the narrower tools. Lists longer than 200 entries are cut. GET /employee. This is employee monitoring (personal) data: ask for one day at a time and only what the user needs.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "description": "DeskTime employee id (from desktime_list_employees). Omit for the user the API key belongs to. Other employees need an admin key.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "date": {
      "description": "The day to read, yyyy-mm-dd, in the DeskTime account's timezone. Default: today.",
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢desktime_list_projects(page, page_size)

Active (not archived) projects of the company with their tasks: id, name, creation time and tasks. Returned a page at a time. GET /projects.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "page_size": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡desktime_create_project(project, task)

WRITE: create a new project (and optionally one task in it) in the company's DeskTime account. Not idempotent: a second call with the same name makes another project. Returns the new project's id, url and tasks. POST /create-project.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "project": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Name of the new project."
    },
    "task": {
      "description": "Optional name of a first task to create in the project.",
      "type": "string",
      "maxLength": 200
    }
  },
  "required": [
    "project"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴desktime_start_project(project, task)

WRITE: start tracking time on a project (and optionally a task) for the user the API key belongs to, by project name. This changes that user's tracked time and may switch away from the project currently running. Returns {started: true|false}. GET /start-project.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "project": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Exact name of the project to start (see desktime_list_projects)."
    },
    "task": {
      "description": "Optional exact name of the task inside the project.",
      "type": "string",
      "maxLength": 200
    }
  },
  "required": [
    "project"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴desktime_stop_project(project, task)

WRITE: stop tracking time on a project (and optionally a task) for the user the API key belongs to, by project name. Returns {stopped: true|false}. GET /stop-project.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "project": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Exact name of the running project to stop."
    },
    "task": {
      "description": "Optional exact name of the task inside the project.",
      "type": "string",
      "maxLength": 200
    }
  },
  "required": [
    "project"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada10 herramientas