# Toggl Track — MCP server on mcp.ai > Connect your Toggl Track account and use 21 tools for time tracking straight from your AI agent. Connect with your own API key. Toggl Track is a time tracking platform for recording work, managing projects and workspaces, producing reports, and configuring webhooks. By: mcp.ai · official Page: https://mcp.ai/toggl_track ## Connect (MCP protocol) Remote MCP endpoint (HTTP, streamable): https://api.mcp.ai/p_toggl_track?ms=1787293680000 Add it as a custom/remote MCP connector, then authenticate when prompted. ## REST API (no MCP client required) Every tool is also a REST endpoint, authed with a workspace API key. Discover: GET https://api.mcp.ai/api/toggl_track/_endpoints # public; lists every endpoint Call: POST https://api.mcp.ai/api/toggl_track/ Authorization: Bearer sk_live_… # create one at https://mcp.ai/settings/api-keys Content-Type: application/json Body: { …args } → { "ok": true, "tool": "", "result": { … } } ## Developer docs How to use (MCP or REST), markdown: https://mcp.ai/toggl_track/skill.md Postman collection (v2.1): https://mcp.ai/toggl_track/postman.json ## Tools - toggl_track_bulk_update_time_entries(billable?: boolean, description?: string, workspace_id: integer, time_entry_ids: integer[]) — Apply the same description and/or billable state to 1 to 100 Toggl Track time entries in one provider-native request. Updates are non-atomic: Toggl Track performs no transaction or rollback, so some I - toggl_track_create_client(name: string, notes?: string, workspace_id: integer, external_reference?: string) — Create a client in a workspace for grouping projects. - toggl_track_create_project(name: string, color?: string, active?: boolean, end_date?: string, client_id?: integer, is_private?: boolean, start_date?: string, workspace_id: integer) — Create a project in a workspace for organizing time entries and tasks. - toggl_track_create_task(name: string, user_id?: integer, project_id: integer, workspace_id: integer, estimated_seconds?: integer, external_reference?: string) — Create a task under an active project for more specific time-entry assignment. - toggl_track_create_time_entry(stop?: string, tags?: string[], start: string, tag_ids?: integer[], task_id?: integer, billable?: boolean, duration?: integer, project_id?: integer, description?: string, workspace_id: integer) — Create a running or completed time entry in a workspace; omit duration and stop to start a running timer. Supplying tag names may also create tags that do not yet exist. - toggl_track_delete_client(client_id: integer, workspace_id: integer) — Permanently delete one client from a Toggl Track workspace. - toggl_track_delete_project(project_id: integer, workspace_id: integer) — Delete one project while preserving its time entries by unassigning them from the project. - toggl_track_delete_task(task_id: integer, project_id: integer, workspace_id: integer) — Permanently delete one task from its parent project. - toggl_track_delete_time_entry(workspace_id: integer, time_entry_id: integer) — Permanently delete one time entry from a workspace. - toggl_track_get_current_time_entry() — Return the currently running time entry for the connected user, or indicate that no timer is running. - toggl_track_get_current_user() — Return the connected Toggl Track user's identity and defaults, including the default workspace ID, without exposing credentials. - toggl_track_get_time_entry(time_entry_id: integer, include_sharing?: boolean, include_metadata?: boolean) — Get one time entry by ID, with optional related-entity and sharing metadata. - toggl_track_list_time_entries(end_date: string, start_date: string, include_sharing?: boolean, include_metadata?: boolean) — List the connected user's time entries in an explicit date range, optionally including related project, task, user, and sharing metadata. - toggl_track_list_workspace_resources(search?: string, status?: string, page_size?: integer, project_id?: integer, next_cursor?: string, workspace_id: integer, resource_type: string) — Find projects, clients, tags, or tasks in a workspace and return their IDs for time-entry and resource-management tools. - toggl_track_list_workspaces() — List workspaces accessible to the connected user and return the IDs needed by workspace-scoped tools, without exposing private tokens or calendar URLs. - toggl_track_run_detailed_time_report(tag_ids?: integer[], end_date?: string, order_by?: string, task_ids?: integer[], user_ids?: integer[], page_size?: integer, client_ids?: integer[], start_date?: string, description?: string, next_cursor?: string, project_ids?: integer[], workspace_id?: integer, time_entry_ids?: integer[], order_direction?: string) — Return one page of detailed, grouped time-entry report rows for a workspace and date range, with an opaque cursor for the next page. - toggl_track_stop_time_entry(workspace_id: integer, time_entry_id: integer) — Stop a currently running time entry and return its finalized timing data. - toggl_track_update_client(name: string, notes?: string, client_id: integer, workspace_id: integer, external_reference?: string) — Update a client's name, notes, or external reference. Toggl Track requires the client's name on every update, even when it is unchanged. - toggl_track_update_project(name?: string, color?: string, active?: boolean, end_date?: string, client_id?: integer, is_private?: boolean, project_id: integer, start_date?: string, workspace_id: integer) — Update a project's name, client, active state, privacy, color, or date range. - toggl_track_update_task(name?: string, active?: boolean, task_id: integer, user_id?: integer, project_id: integer, workspace_id: integer, estimated_seconds?: integer, external_reference?: string) — Update a task's name, completion state, estimate, assignee, or external reference. - toggl_track_update_time_entry(stop?: string, tags?: string[], start?: string, tag_ids?: integer[], task_id?: integer, billable?: boolean, duration?: integer, project_id?: integer, tag_action?: string, description?: string, workspace_id: integer, time_entry_id: integer) — Update the timing, description, assignment, billable state, or tags of an existing time entry. Provide at least one change; changing tags requires tag_action together with tags or tag_ids. Tag effects ## Example prompts - "What can I do in Toggl Track?" - "Show me a summary of my Toggl Track account" ## Links Docs: https://mcp.ai/docs/mcps/toggl_track Website: https://mcp.ai/mcps/toggl_track