TimeTac MCP by usefulapi

io.usefulapiPublished by usefulapi.ioOfficial publisherv1.6.4Updated Nov 7, 2026

Read hours, absences and projects; start timers, add entries, approve leave in TimeTac.

The publisher's own server: Ably MCP by usefulapi

VerifiedStreamable HTTPWeb executableProductivity & WorkflowBusiness & Commerce

Overview

AI-generated overview

Hosted TimeTac connector that lets an assistant read employees, hours, absences and projects, and start timers, add entries or handle leave requests.

What you can do
  • List and look up employees, departments and teams
  • List time entries, filter them by user, task or approval, and see who is clocked in right now
  • List absences and absence types, projects and tasks
  • Start and stop timers and add finished time entries
  • Create absence requests and approve or reject open ones
  • Check monthly usage, request a feature, upgrade or cancel the subscription
When to use it
Useful when you want to ask an assistant about who is working on what, hours booked per person or project, or open leave requests, and to make small TimeTac changes such as starting a timer or approving leave without opening the TimeTac web app.
Requirements
Remote MCP endpoint, no local install. Sign-in is via OAuth; on first connect you supply your TimeTac account name plus the client id and client secret of a TimeTac API client (the API must be enabled on the account). Only the URL goes in the client config.
Before you install
Write tools change TimeTac data: starting/stopping timers, adding entries, creating absences, and approving or rejecting leave (which notifies the employee). Several create calls add a new record each time, so repeats duplicate data. The server stores your TimeTac API client id and secret per user. Usage is metered: 50 calls a month free, paid plans via Stripe checkout links, and cancellation gives no refund for the current period.

Installation

In SourceWeft

  1. Open TimeTac MCP by usefulapi in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.usefulapi%2Ftimetac/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "timetac-by-usefulapi": {
      "type": "http",
      "url": "https://timetac.usefulapi.io/mcp"
    }
  }
}

README

TimeTac MCP by usefulapi

Use your TimeTac account from Claude, Cursor, or any MCP client. Read employees, time entries, absences, projects and tasks, and start timers, add time entries or handle leave requests. Hosted, no local install: connect with your own credentials.

Live endpoint: https://timetac.usefulapi.io/mcp · Homepage: https://usefulapi.io

Connect

  • Claude (claude.ai, Desktop): open Customize → Connectors, click + Add → Add custom connector, and paste https://timetac.usefulapi.io/mcp.
  • Claude Code: claude mcp add --transport http timetac https://timetac.usefulapi.io/mcp, then run /mcp to log in.
  • VS Code: Add to VS Code.
  • Cursor and other clients: add the URL as a remote MCP server:
json
{  "mcpServers": {    "timetac": {      "url": "https://timetac.usefulapi.io/mcp"    }  }}

Add only the URL. Do not add an Authorization header or an API key to the client config: the server signs you in with OAuth, and the login page asks for your TimeTac credentials.

Step-by-step setup, where to find your credentials, and FAQ: https://usefulapi.io/timetac/

On first connect you provide your TimeTac account name, and the client id and client secret of an API client (TimeTac → Account settings → API Credentials; ask [email protected] to enable the API if it is missing). The server validates it and stores it per user. No keys go in config files.

Tools

ToolTypeWhat it does
timetac_list_usersreadList users
timetac_get_userreadGet user
timetac_list_time_trackingsreadList time trackings
timetac_current_time_trackingsreadRunning timers
timetac_list_absencesreadList absences
timetac_list_absence_typesreadList absence types
timetac_list_projectsreadList projects
timetac_list_tasksreadList tasks
timetac_list_departmentsreadList departments
timetac_list_teamsreadList teams
timetac_start_time_trackingwriteStart timer
timetac_stop_time_trackingwriteStop timer
timetac_create_time_trackingwriteAdd time entry
timetac_create_absencewriteRequest absence
timetac_approve_absencewriteApprove absence
timetac_reject_absencewriteReject absence
timetac_usage_statusmetaUsage status (free-tier meter)
timetac_request_featuremetaRequest a missing feature
timetac_upgrademetaUpgrade to Pro or Pro+
timetac_cancel_subscriptionmetaCancel the Pro subscription

read tools are read-only; write tools mutate data (clients should confirm them); meta tools report usage, manage your subscription or send a feature request.

Pricing

PlanPriceLimit
Free$050 tool calls / month
Pro (per user)$9/mo or $90/yr (2 months free)Unlimited*

*Pro has a fair use limit of 10,000 tool calls a month on this server. For more, write to [email protected].

Pro covers this server only. Subscribe with timetac_upgrade (it returns a Stripe Checkout link). Cancel any time with timetac_cancel_subscription: Pro continues to the end of the paid period, with no refund for the current period, and running timetac_upgrade before then undoes the cancel. Or write to [email protected].

License

MIT — see LICENSE. Documentation only; the server is hosted.

Source: servers/timetac/README.md at commit 4046075

Tools

16

timetac_list_users

List users

List employees (users) of the TimeTac account: id, name, department, active flag, entry/exit dates. Only work-related fields are returned (no credentials, payroll, address or birth data). TimeTac API: GET users/read.

Parameterslimitsinceactiveoffsetdepartment_id

timetac_get_user

Get user

Get one employee by user id. Only work-related fields are returned (no credentials, payroll, address or birth data). TimeTac API: GET users/read?id=.

Parametersuser_idrequired

timetac_list_time_trackings

List time trackings

List time entries (start, end, duration, task, notes, approval), newest first. Filter by user, task or approval. start_date/end_date filter the returned page only; page with offset. TimeTac API: GET timeTrackings/read.

Parameterslimitsinceoffsettask_iduser_idend_datestart_dateapproved_by_admin

timetac_current_time_trackings

Running timers

List the timers that run right now (who is clocked in, on which task). TimeTac API: GET timeTrackings/current.

Parametersuser_id

timetac_list_absences

List absences

List absence and leave requests (holiday, sick leave and others) with dates, duration and approval status. from_date/to_date keep requests that overlap the range, on the returned page only. TimeTac API: GET absences/read.

Parameterslimitsinceoffsetstatusto_datetype_iduser_idfrom_datesubtype_id

timetac_list_absence_types

List absence types

List the absence types of the account (holiday, sick leave, special leave) with their ids. TimeTac API: GET absenceTypes/read.

Parameterslimitoffset

timetac_list_projects

List projects

List projects (task tree nodes that group tasks) with ids, deadlines and status. TimeTac API: GET projects/read.

Parameterslimitsinceoffsetis_done

timetac_list_tasks

List tasks

List tasks that time can be booked on, with their project (mother_id) and status. TimeTac API: GET tasks/read.

Parameterslimitsinceoffsetis_donemother_id

timetac_list_departments

List departments

List departments with ids and parent departments. TimeTac API: GET departments/read.

Parameterslimitoffset

timetac_list_teams

List teams

List teams with ids and names. TimeTac API: GET teams/read.

Parameterslimitoffset

timetac_start_time_tracking

Start timer

WRITE: start a timer for a user, now or at a given time. Each call can create a new running entry, so do not repeat it. TimeTac API: POST timeTrackings/start.

Parametersnotestask_iduser_idrequiredstart_timestart_time_timezone

timetac_stop_time_tracking

Stop timer

WRITE: stop the running timer of a user, now or at a given time. TimeTac API: PUT timeTrackings/stop.

Parametersnotesuser_idrequiredend_timeend_time_timezonerequired

timetac_create_time_tracking

Add time entry

WRITE: add a finished time entry for a user. Each call creates a new entry, so do not repeat it. TimeTac API: POST timeTrackings/create.

Parametersnotestask_idrequireduser_idrequiredend_timerequiredstart_timerequiredend_time_timezonerequiredstart_time_timezonerequired

timetac_create_absence

Request absence

WRITE: create an absence or leave request for a user. Each call creates a new request, so do not repeat it. type_id is the category (1 holiday, 2 overtime reduction, 3 other paid leave); subtype_id picks the leave type from timetac_list_absence_types. TimeTac API: POST absences/create.

Parametersto_daterequiredtype_idrequireduser_idrequireddurationfrom_daterequiredsubtype_idduration_unitrequest_comment

timetac_approve_absence

Approve absence

WRITE: approve an open absence request. The employee is notified by TimeTac. TimeTac API: PUT absences/approve.

Parameterscommentabsence_idrequired

timetac_reject_absence

Reject absence

WRITE: reject an open absence request. The employee is notified by TimeTac. TimeTac API: PUT absences/reject.

Parameterscommentabsence_idrequired

Version history

9
  1. v1.6.4LatestNov 7, 2026
  2. v1.5.3Nov 5, 2026
  3. v1.5.2Nov 5, 2026
  4. v1.5.1Nov 4, 2026
  5. v1.5.0Nov 3, 2026
  6. v1.4.1Nov 3, 2026
  7. v1.3.0Nov 1, 2026
  8. v1.1.0Oct 31, 2026
  9. v1.0.0Oct 31, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Usefulapi integrations