@ivanherula/clockify-mcp-server
v0.1.3
Published
MCP server for Clockify time tracking
Readme
@ivanherula/clockify-mcp-server
An MCP (Model Context Protocol) server for Clockify time tracking. Exposes Clockify functionality as tools that Claude and other MCP-compatible LLM clients can invoke.
Installation
npx @ivanherula/clockify-mcp-serverOr install globally:
npm install -g @ivanherula/clockify-mcp-server
clockify-mcp-serverEnvironment Variables
| Variable | Required | Description |
|----------|----------|-------------|
| CLOCKIFY_API_KEY | Yes | Your Clockify API key (found in Profile Settings → API) |
| CLOCKIFY_WORKSPACE_ID | No | Override workspace ID. If omitted, the first workspace is used automatically. |
Configuration
Claude Desktop (claude_desktop_config.json)
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"clockify": {
"command": "npx",
"args": ["-y", "@ivanherula/clockify-mcp-server@latest"],
"env": {
"CLOCKIFY_API_KEY": "your_api_key_here"
}
}
}
}Claude Code (claude.json)
{
"mcpServers": {
"clockify": {
"type": "stdio",
"command": "npx",
"args": [
"@ivanherula/clockify-mcp-server@latest"
],
"env": {
"CLOCKIFY_API_KEY": "your_api_key_here"
}
}
}
}Local development / testing
{
"mcpServers": {
"clockify": {
"command": "node",
"args": ["/path/to/clockify-mcp-server/build/index.js"],
"env": {
"CLOCKIFY_API_KEY": "your_api_key_here"
}
}
}
}Available Tools
| Tool | Description |
|------|-------------|
| get_workspaces | List all workspaces |
| get_current_user | Get authenticated user info |
| get_projects | List projects (filter by name, archived; paginated) |
| get_clients | List clients (filter by name, archived; paginated) |
| get_tags | List tags (filter by name, archived; paginated) |
| get_time_entries | List time entries with optional date range filter |
| get_current_timer | Get the currently running timer (null if none) |
| create_time_entry | Create a time entry; omit end to start a live timer |
| stop_timer | Stop the running timer with an end time |
| update_time_entry | Full replace of a time entry (requires start) |
| delete_time_entry | Delete a time entry by ID |
Testing with MCP Inspector
CLOCKIFY_API_KEY=your_key npx @modelcontextprotocol/inspector node build/index.jsOpens at http://localhost:5173 where you can interactively test all tools.
License
MIT
