Skip to main content

TrackingTime MCP Server for AI Assistants

Learn how to connect AI assistants like Claude, ChatGPT, Cursor, and more to your TrackingTime workspace using the Model Context Protocol (MCP).

Written by Eric Tulle
Updated over a week ago

Overview

Roles: all roles | Free Feature

The TrackingTime MCP Server allows you to connect AI assistants and coding agents directly to your TrackingTime workspace. Once connected, you can use natural language to track time, query projects and tasks, manage data, and generate reports — all without leaving your AI tool.

MCP (Model Context Protocol) is an open standard that enables AI applications to interact with external services. TrackingTime provides a hosted MCP server, so there is no installation required. Simply connect your client and start working.

What You Can Do

Once connected, the following tools are available to your AI assistant:

Tool

Description

Get Profile

Retrieve your user profile, account ID, and workspace info.

List Workspaces

List available workspaces. Useful when your account belongs to multiple workspaces.

List Company Time Entries

Retrieve company-wide time data for reports without iterating user by user.

Create Time Entry

Log a new time entry with start/end times, timezone, notes, and optional task or project assignment.

Update Time Entry

Modify an existing time entry (change notes, start or end times).

List Time Entries

Query time entries by date range. Filter by user or across the entire team (company-wide). Supports pagination.

Get Time Entry

Retrieve details of a single time entry by its ID.

List Users

View all workspace members. Filter by active, archived, or all. Includes optional billing and custom field data.

Get User

Retrieve details for a specific user.

List Projects

View all projects in your workspace. Filter by active, archived, or all.

List Tasks

View tasks in your workspace, optionally filtered by project.

List Customers

View all customers/clients in your workspace.

List Services

View all services defined in your workspace.

List User Projects

List projects assigned to a user.

List User Tasks

List tasks assigned to a user.

List User Trackables

List projects and tasks a user can track time against.

Create Project

Create a new project with optional customer and custom field data.

Update Project

Update project details including fields, billing, customer, and notes.

Get Task

Retrieve task details, including assigned and available custom fields.

Create Task

Create a new task with assignees, project relation, and custom fields.

Update Task

Modify an existing task (description, due date, project, users, custom fields, etc.).

Track Task

Start tracking time for a task or project.

Stop Task

Stop the currently running task timer.

Create Customer

Create a new customer with optional custom fields.

Update Customer

Update customer details and custom field values.

Create Custom Field

Create a new custom field for supported objects.

Create Enum Option

Add an option to an existing enum custom field.

Requirements

Before connecting, make sure you have the following:

  1. A TrackingTime account (sign up here if you don't have one).

  2. Your TrackingTime username (the email you use to log in).

  3. An App Password generated from your TrackingTime workspace settings.

  4. An AI tool that supports MCP, such as Claude Desktop, Claude Code, Cursor, Windsurf, VS Code, ChatGPT, or any MCP-compatible client.

Generate an App Password

The MCP server uses Basic Authentication with your username and an app password. To generate one:

  1. Log into TrackingTime.

  2. Go to SettingsApps & Integrations App Passwords

  3. Create a new App Password.

  4. Copy the generated password — you'll need it for the configuration step.

⚠️ Keep your app password secure. Do not share it publicly. You can revoke it at any time from your settings.

⚠️ Mandatory Header X-API-Key: YOUR_APP_PASSWORD

Transport → TrackingTime MCP server supports:
- HTTP (remote MCP) - stdio (via mcp-remote)

SSE is no longer supported.

Connect with Claude Cowork

To connect TrackingTime with Claude Developer:

  1. Open Claude

  2. Go to Settings

  3. Navigate to Developer

  4. Click on Edit Configuration. This will open your local configuration file (claude_desktop_config.json) in your code editor.

  5. Inside the mcpServers object, add the following configuration:

    "trackingtime": {
    "command": "npx",
    "args": [
    "-y",
    "mcp-remote",
    "https://mcp.trackingtime.co/mcp",
    "--header",
    "X-API-Key:${TRACKINGTIME_APP_PASSWORD}",
    "--transport",
    "http-first"
    ],
    "env": {
    "TRACKINGTIME_APP_PASSWORD": "APP_PASSWORD"
    }
    }

  6. Replace "APP_PASSWORD" with the App Password you generated in TrackingTime. This password is used as your API key to authenticate requests from Claude to your TrackingTime account.

  7. Save the configuration file

  8. Restart Claude.

Once restarted, Claude will automatically detect the new MCP server.

Verify the Connection

Go back to Settings → Developer and confirm that:

  • The TrackingTime server appears in the list

  • Its status is active (no errors)

You can also check logs if needed using the View logs option.

Connect with Cursor

To connect TrackingTime with Cursor:

  1. Open Cursor SettingsMCP.

  2. Click Add new global MCP server.

  3. Paste the configuration below.

  4. Save and restart Cursor.

{
"mcpServers": {
"trackingtime": {
"command": "npx",
"args": [
"mcp-remote",
"https://mcp.trackingtime.co/mcp"
]
}
}
}


Connect with Windsurf

To connect TrackingTime with Windsurf:

  1. Open the MCP section in the right panel.

  2. Edit your mcp_config.json file and add the code below.

  3. Click Refresh in the MCP panel.

  4. TrackingTime should appear under "available MCP servers".

{
"mcpServers": {
"trackingtime": {
"command": "npx",
"args": [
"mcp-remote",
"https://mcp.trackingtime.co/mcp"
]
}
}
}

Connect with Claude Code (CLI)

If you use Claude Code from the terminal:

claude mcp add trackingtime -- npx mcp-remote https://mcp.trackingtime.co/mcp

That's it! The server will be available in your next Claude Code session.

Connect with ChatGPT

To use TrackingTime as a connector in ChatGPT:

  1. Go to ChatGPT SettingsConnectors.

  2. Add a new custom MCP server.

  3. Follow the authentication steps.

📝 ChatGPT MCP support requires Developer Mode (available for Pro/Plus users under Settings → Connectors → Advanced → Developer mode).

Connect with Any Other MCP Client

Use one of the supported connection methods below:

### Remote MCP (Recommended)
Use the hosted MCP server via your client

Endpoint: https://mcp.trackingtime.co/mcp

Transport: HTTP (MCP Remote)

### Stdio (via mcp-remote bridge)
For local clients, use:
npx mcp-remote https://mcp.trackingtime.co/mcp

Usage Examples

Once connected, you can interact with TrackingTime using natural language. Here are some examples:

Tracking time:

  • "Log 2 hours today on the Website Redesign project from 9am to 11am."

  • "Create a time entry for yesterday on the 'Bug Fixes' task with the note 'Fixed login issue'."

Querying your data:

  • "Show me all my time entries from last week."

  • "How much time did the team track this month?" (uses company-wide filter)

  • "List all active projects in my workspace."

Managing your workspace:

  • "Show me all team members in my workspace."

  • "List all tasks in the Mobile App project."

  • "What customers do we have in TrackingTime?"

💡 Tip: When asking for team-wide data (e.g. "who worked the most this week?"), the AI will automatically use the company-wide filter to get all data in a single request.


Authentication

Every request requires your username and app password. Depending on the MCP client, you may be prompted for these credentials:

  • On the first interaction with any TrackingTime tool.

  • Stored for the duration of your session (not persisted between restarts in most clients).

The MCP server uses Basic Authentication over HTTPS. Your workspace (account_id) is auto-detected from your credentials — you don't need to provide it manually.



Common Limitations and FAQs

  • The MCP server is read/write for time entries — you can create and update events. Projects, tasks, customers, services, and users are read-only (list/query).

  • App passwords are required — your regular login password won't work. You must generate an App Password from your TrackingTime settings.

  • Node.js is required for stdio clients — if using the npx mcp-remote bridge, you need Node.js 18+ installed on your machine.

  • The MCP server is fully hosted by TrackingTime and can be accessed remotely.

  • Pagination — list endpoints support page and page_size parameters. Your AI assistant will handle pagination automatically when querying large datasets.

Supported Clients

Client

Transport

Status

Claude Desktop

stdio (via mcp-remote)

✅ Supported

Claude Code

stdio (via mcp-remote)

✅ Supported

Cursor

stdio (via mcp-remote)

✅ Supported

Windsurf

stdio (via mcp-remote)

✅ Supported

VS Code (Copilot)

stdio (via mcp-remote)

✅ Supported

Cline (VS Code)

stdio (via mcp-remote)

✅ Supported

Any MCP Client

HTTP / stdio

✅ Supported


Troubleshooting

401 errors

Usually caused by:

  • Invalid App Password

  • Wrong endpoint

  • Missing headers

  • Postman using cookies while MCP does not

Multiple workspace error

Fix:

  1. Call list_workspaces

  2. Select a workspace

  3. Retry with account_id

Need Help?

If you have questions or run into issues with the MCP server, feel free to reach out:

Did this answer your question?