# Toggl Track

```json
{
  "name": "Toggl Track",
  "slug": "toggl_track",
  "url": "https://composio.dev/toolkits/toggl_track",
  "markdown_url": "https://composio.dev/toolkits/toggl_track.md",
  "logo_url": "https://logos.composio.dev/api/toggl_track",
  "categories": [
    "productivity & project management"
  ],
  "is_composio_managed": false,
  "updated_at": "2026-08-20T15:34:22.735Z"
}
```

![Toggl Track logo](https://logos.composio.dev/api/toggl_track)

## Description

Securely connect your AI agents and chatbots (Claude, ChatGPT, Cursor, etc) with Toggl Track MCP or direct API to create time entries, start timers, manage projects, and pull workspace reports through natural language.

## Summary

Toggl Track is a time tracking platform for recording work, organizing projects, and managing workspaces.
It helps teams understand where time goes with clear reports, billable hours, and lightweight workflows.

## Categories

- productivity & project management

## Toolkit Details

- Tools: 21

## Images

- Logo: https://logos.composio.dev/api/toggl_track

## Authentication

- **Api Key**
  - Type: `api_key`
  - Description: Api Key authentication for Toggl Track.
  - Setup:
    - Configure Api Key credentials for Toggl Track.
    - Use the credentials when creating an auth config in Composio.

## Suggested Prompts

- Start a timer for client work
- Create yesterday's project time report
- List active Toggl Track workspaces

## Supported Tools

| Tool slug | Name | Description |
|---|---|---|
| `TOGGL_TRACK_BULK_UPDATE_TIME_ENTRIES` | Bulk Update Time Entries | 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 IDs can succeed while others fail; always inspect the returned per-ID success and failure lists. |
| `TOGGL_TRACK_CREATE_CLIENT` | Create Client | Create a client in a workspace for grouping projects. |
| `TOGGL_TRACK_CREATE_PROJECT` | Create Project | Create a project in a workspace for organizing time entries and tasks. |
| `TOGGL_TRACK_CREATE_TASK` | Create Task | Create a task under an active project for more specific time-entry assignment. |
| `TOGGL_TRACK_CREATE_TIME_ENTRY` | Create Time Entry | 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` | Delete Client | Permanently delete one client from a Toggl Track workspace. |
| `TOGGL_TRACK_DELETE_PROJECT` | Delete Project | Delete one project while preserving its time entries by unassigning them from the project. |
| `TOGGL_TRACK_DELETE_TASK` | Delete Task | Permanently delete one task from its parent project. |
| `TOGGL_TRACK_DELETE_TIME_ENTRY` | Delete Time Entry | Permanently delete one time entry from a workspace. |
| `TOGGL_TRACK_GET_CURRENT_TIME_ENTRY` | 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` | 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` | Get Time Entry | Get one time entry by ID, with optional related-entity and sharing metadata. |
| `TOGGL_TRACK_LIST_TIME_ENTRIES` | List Time Entries | 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` | List Workspace Resources | 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 | 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` | Run Detailed Time Report | 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` | Stop Time Entry | Stop a currently running time entry and return its finalized timing data. |
| `TOGGL_TRACK_UPDATE_CLIENT` | Update Client | 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` | Update Project | Update a project's name, client, active state, privacy, color, or date range. |
| `TOGGL_TRACK_UPDATE_TASK` | Update Task | Update a task's name, completion state, estimate, assignee, or external reference. |
| `TOGGL_TRACK_UPDATE_TIME_ENTRY` | Update Time Entry | 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 are verified against the returned time entry so an ignored update is reported as a failure. |

## Supported Triggers

None listed.

## Installation and MCP Setup

### Path 1: SDK Installation

#### Path 1, Step 1: Install Composio

Install the Composio SDK
```python
pip install composio_openai
```

```typescript
npm install @composio/openai
```

#### Path 1, Step 2: Initialize Composio and Create Tool Router Session

Import and initialize Composio client, then create a Tool Router session
```python
from openai import OpenAI
from composio import Composio
from composio_openai import OpenAIResponsesProvider

composio = Composio(provider=OpenAIResponsesProvider())
openai = OpenAI()
session = composio.create(user_id='your-user-id')
```

```typescript
import OpenAI from 'openai';
import { Composio } from '@composio/core';
import { OpenAIResponsesProvider } from '@composio/openai';

const composio = new Composio({
  provider: new OpenAIResponsesProvider(),
});
const openai = new OpenAI({});
const session = await composio.create('your-user-id');
```

#### Path 1, Step 3: Execute Toggl Track Tools via Tool Router with Your Agent

Get tools from Tool Router session and execute Toggl Track actions with your Agent
```python
tools = session.tools
response = openai.responses.create(
  model='gpt-4.1',
  tools=tools,
  input=[{
    'role': 'user',
    'content': 'Create a Toggl Track time entry for 2 hours of backend API work in my Engineering project'
  }]
)
result = composio.provider.handle_tool_calls(
  response=response,
  user_id='your-user-id'
)
print(result)
```

```typescript
const tools = session.tools;
const response = await openai.responses.create({
  model: 'gpt-4.1',
  tools: tools,
  input: [{
    role: 'user',
    content: 'Create a Toggl Track time entry for 2 hours of backend API work in my Engineering project'
  }],
});
const result = await composio.provider.handleToolCalls(
  'your-user-id',
  response.output
);
console.log(result);
```

### Path 2: MCP Server Setup

#### Path 2, Step 1: Install Composio

Install the Composio SDK for Python or TypeScript
```python
pip install composio claude-agent-sdk
```

```typescript
npm install @composio/core ai @ai-sdk/openai @ai-sdk/mcp
```

#### Path 2, Step 2: Initialize Client and Create Tool Router Session

Import and initialize the Composio client, then create a Tool Router session for Toggl Track
```python
from composio import Composio
from claude_agent_sdk import ClaudeSDKClient, ClaudeAgentOptions

composio = Composio(api_key='your-composio-api-key')
session = composio.create(user_id='your-user-id')
url = session.mcp.url
```

```typescript
import { Composio } from '@composio/core';

const composio = new Composio({ apiKey: 'your-api-key' });
const session = await composio.create('your-user-id');
console.log(`Tool Router session created: ${session.mcp.url}`);
```

#### Path 2, Step 3: Connect to AI Agent

Use the MCP server with your AI agent (Anthropic Claude or Mastra)
```python
import asyncio

options = ClaudeAgentOptions(
    permission_mode='bypassPermissions',
    mcp_servers={
        'tool_router': {
            'type': 'http',
            'url': url,
            'headers': {
                'x-api-key': 'your-composio-api-key'
            }
        }
    },
    system_prompt='You are a helpful assistant with access to Toggl Track tools.',
    max_turns=10
)

async def main():
    async with ClaudeSDKClient(options=options) as client:
        await client.query('Create a Toggl Track time entry for 2 hours of backend API work in my Engineering project')
        async for message in client.receive_response():
            if hasattr(message, 'content'):
                for block in message.content:
                    if hasattr(block, 'text'):
                        print(block.text)

asyncio.run(main())
```

```typescript
import { openai } from '@ai-sdk/openai';
import { experimental_createMCPClient as createMCPClient } from '@ai-sdk/mcp';
import { generateText } from 'ai';

const client = await createMCPClient({
  transport: {
    type: 'http',
    url: session.mcp.url,
    headers: {
      'x-api-key': 'your-composio-api-key',
    },
  },
});

const tools = await client.tools();
const { text } = await generateText({
  model: openai('gpt-4o'),
  tools,
  messages: [{
    role: 'user',
    content: 'Create a Toggl Track time entry for 2 hours of backend API work in my Engineering project'
  }],
  maxSteps: 5,
});

console.log(`Agent: ${text}`);
```

## Why Use Composio?

### 1. AI Native Toggl Track Integration

- Supports both Toggl Track MCP and direct API based integrations
- Structured, LLM-friendly schemas for reliable time entry, project, workspace, report, and webhook actions
- Rich coverage for reading, writing, and querying your Toggl Track data without building custom API wrappers

### 2. Managed Auth

- Secure API key handling so you don't hard-code Toggl Track credentials in your agent code
- Central place to manage, scope, and revoke Toggl Track access per user
- Works cleanly across development, staging, and production environments

### 3. Agent Optimized Design

- Tools are tuned for AI agents, so your assistant can understand Toggl Track actions like creating time entries or fetching reports
- Comprehensive execution logs show what ran, when it ran, and on whose behalf
- Less glue code, fewer brittle prompts, and a smoother path from prototype to production

### 4. Enterprise Grade Security

- Fine-grained RBAC so you control which agents and users can access Toggl Track
- Scoped, least privilege access to Toggl Track resources such as workspaces, projects, and reports
- Full audit trail of agent actions to support review, billing checks, and compliance

## Use Toggl Track with any AI Agent Framework

Choose a framework you want to connect Toggl Track with:

None listed.

## Related Toolkits

- [Google Sheets](https://composio.dev/toolkits/googlesheets) - Google Sheets is a cloud-based spreadsheet tool for real-time collaboration and data analysis. It lets teams work together from anywhere, updating information instantly.
- [Notion](https://composio.dev/toolkits/notion) - Notion is a collaborative workspace for notes, docs, wikis, and tasks. It streamlines team knowledge, project tracking, and workflow customization in one place.
- [Airtable](https://composio.dev/toolkits/airtable) - Airtable combines the flexibility of spreadsheets with the power of a database for easy project and data management. Teams use Airtable to organize, track, and collaborate with custom views and automations.
- [Asana](https://composio.dev/toolkits/asana) - Asana is a collaborative work management platform for teams to organize and track projects. It streamlines teamwork, boosts productivity, and keeps everyone aligned on goals.
- [Google Tasks](https://composio.dev/toolkits/googletasks) - Google Tasks is a to-do list and task management tool integrated into Gmail and Google Calendar. It helps you organize, track, and complete tasks across your Google ecosystem.
- [Linear](https://composio.dev/toolkits/linear) - Linear is a modern issue tracking and project planning tool for fast-moving teams. It helps streamline workflows, organize projects, and boost productivity.
- [Jira](https://composio.dev/toolkits/jira) - Jira is Atlassian’s platform for bug tracking, issue tracking, and agile project management. It helps teams organize work, prioritize tasks, and deliver projects efficiently.
- [Clickup](https://composio.dev/toolkits/clickup) - ClickUp is an all-in-one productivity platform for managing tasks, docs, goals, and team collaboration. It streamlines project workflows so teams can work smarter and stay organized in one place.
- [Monday](https://composio.dev/toolkits/monday) - Monday.com is a customizable work management platform for project planning and collaboration. It helps teams organize tasks, automate workflows, and track progress in real time.
- [Addressfinder](https://composio.dev/toolkits/addressfinder) - Addressfinder is a data quality platform for verifying addresses, emails, and phone numbers. It helps you ensure accurate customer and contact data every time.
- [Agiled](https://composio.dev/toolkits/agiled) - Agiled is an all-in-one business management platform for CRM, projects, and finance. It helps you streamline workflows, consolidate client data, and manage business processes in one place.
- [ApptiveGrid](https://composio.dev/toolkits/apptivegrid) - ApptiveGrid is a collaborative no-code database and app platform for spaces, grids, forms, and structured records. It helps teams organize operational data, collect inputs, and build lightweight business apps without custom backend work.
- [Ascora](https://composio.dev/toolkits/ascora) - Ascora is a cloud-based field service management platform for service businesses. It streamlines scheduling, invoicing, and customer operations in one place.
- [Basecamp](https://composio.dev/toolkits/basecamp) - Basecamp is a project management and team collaboration tool by 37signals. It helps teams organize tasks, share files, and communicate efficiently in one place.
- [Beeminder](https://composio.dev/toolkits/beeminder) - Beeminder is an online goal-tracking platform that uses monetary pledges to keep you motivated. Stay accountable and hit your targets with real financial incentives.
- [Boxhero](https://composio.dev/toolkits/boxhero) - Boxhero is a cloud-based inventory management platform for SMBs, offering real-time updates, barcode scanning, and team collaboration. It helps businesses streamline stock tracking and analytics for smarter inventory decisions.
- [Breathe HR](https://composio.dev/toolkits/breathehr) - Breathe HR is cloud-based HR software for SMEs to manage employee data, absences, and performance. It simplifies HR admin, making it easy to keep employee records accurate and up to date.
- [Breeze](https://composio.dev/toolkits/breeze) - Breeze is a project management platform designed to help teams plan, track, and collaborate on projects. It streamlines workflows and keeps everyone on the same page.
- [Bugherd](https://composio.dev/toolkits/bugherd) - Bugherd is a visual feedback and bug tracking tool for websites. It helps teams and clients report website issues directly on live sites for faster fixes.
- [Canny](https://composio.dev/toolkits/canny) - Canny is a platform for managing customer feedback and feature requests. It helps teams prioritize product decisions based on real user insights.

## Frequently Asked Questions

### Do I need my own developer credentials to use Toggl Track with Composio?

Yes, Toggl Track requires you to configure your own API key. Once set up, Composio handles secure credential storage and API request handling for you. In code, use auth_configs.create() for the API key auth config, connected_accounts.link() to connect a user, and mcp.create() when you want to create a dedicated MCP server.

### Can I use multiple toolkits together?

Yes! Composio's Tool Router enables agents to use multiple toolkits. [Learn more](https://docs.composio.dev/tool-router/overview).

### Is Composio secure?

Composio is SOC 2 and ISO 27001 compliant with all data encrypted in transit and at rest. [Learn more](https://trust.composio.dev).

### What if the API changes?

Composio maintains and updates all toolkit integrations automatically, so your agents always work with the latest API versions.

---
[See all toolkits](https://composio.dev/toolkits) · [Composio docs](https://docs.composio.dev/llms.txt)
