Skip to main content

TrackingTime MCP Server for AI Assistants

Connect ChatGPT, Claude, Codex, Cursor, Windsurf, and other MCP-compatible AI tools directly to your TrackingTime workspace.

Written by Eric Tulle


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 workspace data, and generate reports without leaving your AI tool.

MCP, or Model Context Protocol, is an open standard that enables AI applications to interact with external services.

TrackingTime provides a hosted MCP server, so most users do not need to install or run anything locally. Modern MCP clients can connect directly to the hosted server and authenticate securely using OAuth 2.0.

What You Can Do

Once connected, your AI assistant can perform actions such as:

Time tracking

  • Create time entries

  • Start tracking time for a task or project

  • Stop the currently running timer

  • Update existing time entries

  • Retrieve individual or company-wide time data

  • Filter time entries by date range or user

Projects and tasks

  • List active and archived projects

  • Create and update projects

  • List tasks by workspace or project

  • Create and update tasks

  • Retrieve the projects and tasks assigned to a specific user

Customers and Services

  • List customers and services

  • Create and update customers

  • Associate customers with projects

Users and workspaces

  • Retrieve your TrackingTime profile

  • List the workspaces available to your account

  • List active and archived workspace members

  • Retrieve information about individual users

  • View the projects and tasks available to a user

Custom fields

  • Retrieve custom field data

  • Create custom fields for supported objects

  • Add options to enum and dropdown custom fields

The actions available to the AI assistant also depend on the permissions of the authenticated TrackingTime user.

Requirements

Before connecting, make sure you have:

  1. A TrackingTime account.

  2. An MCP-compatible AI assistant or client.

  3. Access to your TrackingTime account in a browser so you can complete the authorization process.

An App Password is only required when using an MCP client that does not support remote OAuth authentication.

Authentication Methods

TrackingTime MCP supports two authentication methods:

OAuth 2.0 — Recommended

OAuth is the recommended authentication method for modern MCP clients.

When you connect, your MCP client will open a TrackingTime authorization page. Sign in to your TrackingTime account and approve access to complete the connection.

OAuth provides:

  • A direct connection to the hosted TrackingTime MCP server.

  • No local bridge or Node.js installation.

  • No need to manually copy or store an App Password.

  • Secure authorization through your TrackingTime account.

Use OAuth whenever your MCP client supports remote MCP servers and OAuth authentication.

App Password — Fallback

App Password authentication remains available for clients that:

  • Do not support OAuth for remote MCP servers.

  • Require a local stdio connection.

  • Use a local bridge such as mcp-remote.

  • Rely on an older MCP configuration.

Your regular TrackingTime login password cannot be used as an App Password.

Connect with ChatGPT

To connect TrackingTime with ChatGPT:

  1. Open ChatGPT Settings.

  2. Go to Connectors.

  3. Add a custom MCP server.

  4. Enter the following URL: https://mcp.trackingtime.co/mcp

  5. Complete the TrackingTime OAuth authorization flow when prompted.

  6. Sign in to the TrackingTime account you want to connect.

  7. Review and approve access.

Depending on your ChatGPT plan and workspace settings, you may need to enable Developer Mode or ask your workspace administrator for permission to add custom MCP connectors.

Once connected, TrackingTime will appear among your available ChatGPT tools and connectors.


Connect with Claude Desktop

To connect TrackingTime with Claude Desktop:

  1. Open Claude Desktop.

  2. Go to Settings → Connectors.

  3. Select the option to add a custom connector.

  4. Enter the following URL: https://mcp.trackingtime.co/mcp

  5. Complete the TrackingTime OAuth authorization flow when prompted.

  6. Sign in and approve access.

Once authorization is complete, TrackingTime should appear as a connected service in Claude.

Connect with Codex

Add the TrackingTime MCP server to your Codex configuration file.

Open:

~/.codex/config.toml


Add the following configuration:

[mcp_servers.trackingtime] url = "https://mcp.trackingtime.co/mcp"


Then run:

codex mcp login trackingtime


Codex will start the TrackingTime OAuth authorization process.

Sign in to TrackingTime and approve access. Once authorization is complete, the TrackingTime MCP server will be available in Codex.

Connect with Cursor

Open the MCP settings in Cursor and add a remote MCP server using:

https://mcp.trackingtime.co/mcp


When Cursor prompts you to authenticate, complete the TrackingTime OAuth flow.

The exact location of the MCP settings may vary depending on your Cursor version.

If your Cursor version does not support remote OAuth MCP servers, use the App Password fallback configuration described later in this article.

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


Connect with Windsurf

Open the MCP settings in Windsurf and add a remote MCP server using:

https://mcp.trackingtime.co/mcp


Save the configuration and complete the TrackingTime OAuth flow when prompted.

If your Windsurf version does not support remote OAuth authentication, use the App Password fallback method described below.

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

Connect with Any Other MCP Client

For any client that supports remote MCP servers and OAuth, use the following endpoint:

https://mcp.trackingtime.co/mcp


Select HTTP, Remote MCP, or the equivalent remote server option in your client.

Your client should then open the TrackingTime OAuth authorization flow. Sign in and approve access to complete the connection.

No local installation, authentication header, App Password, or mcp-remote bridge is required when OAuth is supported.

Use an App Password When OAuth Is Not Available

Only use this method when your MCP client does not support remote OAuth authentication.

App Password authentication can be used with stdio-based clients and a local bridge such as mcp-remote.


Generate an App Password

To create an App Password:

  1. Log in to TrackingTime.

  2. Go to Settings → Apps & Integrations → App Passwords.

  3. Create a new App Password.

  4. Copy the generated password.

Keep your App Password secure. Do not share it publicly or include it in documentation, screenshots, or public repositories.

You can revoke an App Password at any time from your TrackingTime settings.

The required authentication header is:

X-API-Key: YOUR_APP_PASSWORD


Replace YOUR_APP_PASSWORD with the App Password generated in TrackingTime.

Requirements for the local bridge

To use mcp-remote, you will need:

  • Node.js 18 or later.

  • An App Password generated in TrackingTime.

  • An MCP client that supports local stdio servers.

Claude Desktop fallback configuration

Use this setup only when your Claude Desktop version does not support remote OAuth connectors.

Open the Claude Desktop configuration file and add the following inside the mcpServers object:

{   "mcpServers": {     "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": "YOUR_APP_PASSWORD"       }     }   } }

Replace YOUR_APP_PASSWORD with the App Password generated in TrackingTime.

Save the configuration file and restart Claude Desktop.

After restarting, go to the MCP or Developer settings and confirm that:

  • The TrackingTime server appears in the list.

  • Its status is active.

  • No authentication or connection errors are displayed.

Generic stdio fallback

For clients that support stdio but not remote OAuth, you can use:

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


Make sure the client is configured to send the following header:

X-API-Key: YOUR_APP_PASSWORD


The exact configuration format depends on the MCP client.

Transport Support

The TrackingTime MCP server supports:

  • HTTP for direct remote MCP connections.

  • stdio through a local bridge such as mcp-remote.

SSE is not supported.

For most users, HTTP with OAuth is the recommended option.

Usage Examples

Once connected, you can interact with TrackingTime using natural language.

Tracking time

  • “Start tracking time on the Website Redesign project.”

  • “Stop my current timer.”

  • “Log two hours today on the Website Redesign project from 9:00 AM to 11:00 AM.”

  • “Create a time entry for yesterday on the Bug Fixes task with the note ‘Fixed login issue.’”

  • “Update my last time entry and change the description.”

Querying time data

  • “Show me all my time entries from last week.”

  • “How much time did the team track this month?”

  • “Show me the hours tracked by each employee this week.”

  • “How much time was tracked on the Website Redesign project?”

  • “Create a summary of company time entries for last month.”

Managing projects and tasks

  • “List all active projects in my workspace.”

  • “Show me the archived projects.”

  • “Create a new project called Website Redesign.”

  • “List all tasks in the Mobile App project.”

  • “Create a task called Homepage Review and assign it to Alex.”

  • “Update the due date of the Homepage Review task.”

Managing customers and workspace data

  • “What customers do we have in TrackingTime?”

  • “Create a new customer called Acme Inc.”

  • “Show me all active members of the workspace.”

  • “Which projects are assigned to me?”

  • “List the workspaces available to my account.”

When requesting team-wide data, the AI assistant can use company-wide time-entry tools rather than retrieving each user’s time separately.

Multiple Workspaces

If your TrackingTime account belongs to more than one workspace, the AI assistant may need to identify which workspace you want to use.

You can ask:

  • “List my TrackingTime workspaces.”

  • “Use the Acme workspace.”

  • “Show me the projects from the Marketing workspace.”

The assistant can use the workspace or account_id selected for subsequent requests.

Permissions and Data Access

The MCP server acts on behalf of the authenticated TrackingTime user.

The information and actions available through the MCP server depend on that user’s role, project access, and workspace permissions.

For example, a user who cannot access a private project in TrackingTime should not be able to access it through the MCP server.

OAuth does not give the AI assistant more permissions than the connected TrackingTime user already has.

Security Recommendations

When using OAuth:

  • Sign in only through the official TrackingTime authorization page.

  • Review the access request before approving it.

  • Disconnect the MCP connector from your AI client when it is no longer needed.

When using an App Password:

  • Never use your regular TrackingTime password.

  • Do not share the App Password.

  • Do not commit it to a public code repository.

  • Prefer environment variables instead of adding it directly to configuration files.

  • Revoke the App Password immediately if you believe it has been exposed.

All connections to the hosted TrackingTime MCP server use HTTPS.

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


Common Questions

Is an App Password required?

No. App Passwords are only required for clients that do not support OAuth authentication.

For modern clients, connect directly to the TrackingTime MCP server and complete the OAuth flow.

Can I use my regular TrackingTime password?

No. Your regular login password should not be entered into an MCP configuration.

Use OAuth whenever possible. For fallback configurations, generate an App Password from your TrackingTime settings.

Do I need to install anything?

Not when your client supports remote MCP servers and OAuth.

A local Node.js installation is only required when using the mcp-remote bridge for a stdio-based client.

Do I need to enter my workspace ID?

Usually not.

The MCP server can retrieve the workspaces associated with the authenticated user. If your account belongs to multiple workspaces, you or the AI assistant may need to select the appropriate workspace.

Is the MCP server read-only?

No. The MCP server supports both read and write operations for supported resources.

Depending on the available tools and your user permissions, the AI assistant can retrieve data and perform actions such as creating time entries, projects, tasks, customers, and custom fields.

Can the AI assistant access all company data?

Only when the authenticated user has permission to access that data.

The MCP server follows the access permissions of the connected TrackingTime user.

Is pagination supported?

Yes. List endpoints support pagination for larger datasets. Your AI assistant can request additional pages when necessary.

Troubleshooting

The OAuth window does not open

Check that:

  • The server URL is exactly:

https://mcp.trackingtime.co/mcp
  • Your browser allows pop-ups and redirects.

  • Your MCP client supports OAuth for remote MCP servers.

  • Custom MCP connectors are allowed in your AI workspace.

  • You are using an updated version of your MCP client.

You can also remove the TrackingTime connector and add it again to restart the authorization process.


OAuth authorization was interrupted

Remove the TrackingTime MCP connection from your client and reconnect it.

Complete the full authorization process without closing the browser window or MCP client.

The wrong TrackingTime account was connected

Disconnect TrackingTime from your MCP client and reconnect it.

During authorization, make sure you sign in using the intended TrackingTime account.

The client does not support OAuth

Use an App Password with a local bridge such as mcp-remote.

Follow the App Password fallback instructions in this article.

401 authentication error

For OAuth connections, remove and reconnect the TrackingTime connector to renew the authorization.

For App Password connections, check that:

  • The App Password is correct.

  • The App Password has not been revoked.

  • You are not using your regular login password.

  • The X-API-Key header is included.

  • The endpoint is correct.

  • There are no extra spaces in the App Password.

TrackingTime does not appear in the client

Check that:

  • The MCP server configuration was saved.

  • The client was restarted when required.

  • The server URL is correct.

  • The OAuth authorization process was completed.

  • The MCP server is enabled in your client settings.

For local mcp-remote configurations, also confirm that Node.js 18 or later is installed.

Multiple workspace error

If your account belongs to multiple workspaces:

  1. Ask the AI assistant to list your workspaces.

  2. Select the workspace you want to use.

  3. Retry the request using the selected workspace or account_id.

The AI assistant cannot access a project or action

Confirm that the authenticated TrackingTime user has the necessary permissions.

The MCP server cannot provide access to data or actions that are restricted for that user inside TrackingTime.

Need Help?

If you have questions or experience problems connecting to the TrackingTime MCP server, contact us at:

Please include:

  • The MCP client you are using.

  • The client version.

  • Whether you are using OAuth or an App Password.

  • The error message you received.

  • A screenshot of the error, when possible.

Do not include your App Password or any other authentication credentials in your support request.

Did this answer your question?