懒惰的Toggl MCP服务器
一种模型上下文协议(MCP)服务器,提供与Toggl时间跟踪交互的工具。
特性
- 开始/停止时间跟踪
- 获取当前条目
- 列出工作区
API
工具
- start_tracking
- 开始跟踪新任务的时间 - 输入: - title (string):要跟踪的任务的标题/描述 - workspace_id (整数):工作区ID(可选,如果未提供,则使用默认值) - project_id (整数):项目ID(可选) - tags (string\[\]):标签列表(可选)
- 停止跟踪
- 停止当前运行的时间条目 - 无需输入 - 返回停止时间输入的确认
- list_workspaces
- 列出所有可用工作区 - 无需输入 - 返回包含其ID和名称的工作区列表
- show_current_time_entry
- 显示当前运行时间条目(如果有) - 无需输入 - 退货: - 如果跟踪:任务描述、条目ID、工作区、开始时间、运行持续时间、标签和项目(如果有的话) - 如果不跟踪:表示当前没有运行时间条目的消息
与Toggl Track API集成
此服务器使用Toggl Track API v9。使用以下端点:
GET /me-获取用户信息GET /workspaces-列出工作区GET /me/time_entries/current-获取当前运行时间条目POST /workspaces/{workspace_id}/time_entries-开始时间跟踪PATCH /workspaces/{workspace_id}/time_entries/{time_entry_id}/stop-停止时间跟踪
安装
- 克隆/创建此项目
- 安装依赖项
uv:
cd lazy-toggl-mcp
uv sync配置
获取您的Toggl API代币
- 首选 Toggl赛道
- 登录您的帐户
- 点击右上角的个人资料图片/头像
- 转到“个人资料”或“设置”
- 找到您的“API代币”-复制此长字符串
配置MCP服务器
将以下配置添加到MCP设置文件中:
{
"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"
}
}
}
}重要:替换 /path/to/lazy-toggl-mcp 以及该项目的实际路径 your-actual-api-token-here 使用您的真实Toggl API令牌。
项目结构
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许可证
MIT许可证-可根据需要自由修改和使用。
