Lazy Toggl MCP
Simple unofficial MCP server to track time via Toggl API
Lazy Toggl MCP Server
A Model Context Protocol (MCP) server that provides tools for interacting with Toggl time tracking.
Features
- Start/stop time tracking
- Get current entry
- List workspaces
API
Tools
-
start_tracking
- Start tracking time for a new task
- Inputs:
title(string): Title/description of the task to trackworkspace_id(integer): Workspace ID (optional, uses default if not provided)project_id(integer): Project ID (optional)tags(string[]): List of tags (optional)
-
stop_tracking
- Stop the currently running time entry
- No input required
- Returns confirmation of stopped time entry
-
list_workspaces
- List all available workspaces
- No input required
- Returns list of workspaces with their IDs and names
-
show_current_time_entry
- Show the currently running time entry, if any
- No input required
- Returns:
- If tracking: Task description, entry ID, workspace, start time, running duration, tags, and project (if any)
- If not tracking: A message indicating no time entry is currently running
Integration with Toggl Track API
This server uses the Toggl Track API v9. The following endpoints are utilized:
GET /me- Get user informationGET /workspaces- List workspacesGET /me/time_entries/current- Get current running time entryPOST /workspaces/{workspace_id}/time_entries- Start time trackingPATCH /workspaces/{workspace_id}/time_entries/{time_entry_id}/stop- Stop time tracking
Installation
- Clone/create this project
- Install dependencies with
uv:cd lazy-toggl-mcp uv sync
Configuration
Get Your Toggl API Token
- Go to Toggl Track
- Sign in to your account
- Click on your profile picture/avatar in the top right corner
- Go to "Profile" or "Settings"
- Find your "API Token" - copy this long string of characters
Configure MCP Server
Add the following configuration to your MCP settings file:
{
"mcpServers": {
"lazy-toggl-mcp": {
"autoApprove": [],
"disabled": false,
"timeout": 60,
"type": "stdio",
"transportType": "stdio",
"command": "uv",
"args": [
"run",
"--directory",
"/path/to/lazy-toggl-mcp",
"python",
"server.py"
],
"env": {
"TOGGL_API_TOKEN": "your-actual-api-token-here"
}
}
}
}
Important: Replace /path/to/lazy-toggl-mcp with the actual path to this project and your-actual-api-token-here with your real Toggl API token.
Project Structure
lazy-toggl-mcp/
├── src/
│ └── toggl_server/
│ ├── __init__.py # Package initialization
│ ├── main.py # MCP server implementation (new structure)
│ ├── models.py # Data models and type definitions
│ ├── toggl_api.py # Toggl API client
│ └── utils.py # Utility functions
├── main.py # CLI interface for testing
├── server.py # Main MCP server entry point
├── pyproject.toml # Project configuration and dependencies
├── README.md # This file
├── uv.lock # Dependency lock file
├── .gitignore # Git ignore patterns
└── .python-version # Python version specification
License
MIT License - feel free to modify and use as needed.
관련 서버
Linear
Interact with the Linear API to manage issues, projects, and teams.
ClickUp
Integrate ClickUp with AI applications to manage tasks, spaces, lists, and folders.
Featurebase
Manage posts and comments on Featurebase, a user feedback platform, using its API.
MCP CSV Analysis with Gemini AI
Perform advanced CSV analysis and generate insights using Google's Gemini AI. Requires Gemini and Plotly API keys.
TempMail
Create temporary emails and read messages directly from your AI agent.
Backlog MCP Server
An MCP server for interacting with the Backlog API, a project management and collaboration tool.
Mindmap MCP Server
Convert Markdown content into interactive mindmaps.
Linear
Query and search for issues in Linear, a project management tool.
Kiwi Travel MCP
Search Flights Without Leaving Your AI Chat
Backcast MCP Server
The Outcome Backcasting MCP is a strategic planning tool that helps you work backwards from a desired future outcome to identify the specific steps, resources, and dependencies needed to achieve your goals. Unlike traditional forward planning, backcasting starts with your end goal and creates a reverse roadmap to get there.