@themkn/clockify-mcp 0.1.0 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +64 -8
  2. package/package.json +15 -3
package/README.md CHANGED
@@ -1,8 +1,29 @@
1
- # clockify-mcp
1
+ # clockify-mcp — Clockify MCP Server for Claude Code
2
2
 
3
- An [MCP server](https://modelcontextprotocol.io) that lets Claude manage your
4
- [Clockify](https://clockify.me) account: time entries (full CRUD plus
5
- start/stop timer), projects, tasks, tags, and clients.
3
+ [![npm](https://img.shields.io/npm/v/@themkn/clockify-mcp)](https://www.npmjs.com/package/@themkn/clockify-mcp)
4
+
5
+ An [MCP server](https://modelcontextprotocol.io) for
6
+ [Clockify](https://clockify.me) time tracking. Start and stop timers, manage
7
+ time entries, projects, tasks, tags, and clients — directly from
8
+ [Claude Code](https://docs.anthropic.com/en/docs/claude-code) or any MCP-compatible client.
9
+
10
+ ## What is Clockify?
11
+
12
+ [Clockify](https://clockify.me) is a free time tracking tool used by
13
+ freelancers and teams to log work hours, generate reports, and manage projects.
14
+ It works across web, desktop, and mobile — and its generous free tier covers
15
+ unlimited users and tracking. This MCP server lets you control Clockify with
16
+ natural language through Claude, so you never have to leave your terminal.
17
+
18
+ ## Prerequisites
19
+
20
+ - **A Clockify account** — [sign up for free](https://app.clockify.me/signup)
21
+ (the free plan is all you need)
22
+ - **A personal API key** — once logged in, go to
23
+ *Profile settings → API → Generate*
24
+ - **Your workspace ID** — visible in the Clockify URL after selecting a
25
+ workspace (e.g. `app.clockify.me/workspaces/<id>/...`)
26
+ - **Node.js 24+**
6
27
 
7
28
  ## Install
8
29
 
@@ -31,10 +52,9 @@ EOF
31
52
  chmod 600 ~/.clockify-mcp/config.json
32
53
  ```
33
54
 
34
- - **Get an API key:** in Clockify, open *Profile settings → API → Generate*.
35
- - **Workspace id:** visible in the Clockify URL once you select a workspace.
36
-
37
- The server will refuse to start if the config file is group- or world-readable.
55
+ Paste the API key and workspace ID from the [prerequisites](#prerequisites)
56
+ above. The server will refuse to start if the config file is group- or
57
+ world-readable.
38
58
 
39
59
  ## Hook into Claude Code
40
60
 
@@ -51,6 +71,22 @@ or the per-project `.claude/mcp.json`):
51
71
  }
52
72
  ```
53
73
 
74
+ ### Auto-approve tools
75
+
76
+ By default Claude Code asks for permission on every Clockify tool call. To
77
+ allow all Clockify tools without prompting, add this to your
78
+ `~/.claude/settings.json`:
79
+
80
+ ```json
81
+ {
82
+ "permissions": {
83
+ "allow": [
84
+ "mcp__clockify__*"
85
+ ]
86
+ }
87
+ }
88
+ ```
89
+
54
90
  ## Tools
55
91
 
56
92
  Grouped by resource:
@@ -74,6 +110,26 @@ Notes:
74
110
  project has time entries, the server archives it instead. The response
75
111
  reports `{ "action": "deleted" }` or `{ "action": "archived" }`.
76
112
 
113
+ ## Example prompts
114
+
115
+ Once the server is running, try asking Claude things like:
116
+
117
+ | Prompt | What happens |
118
+ | ------ | ------------ |
119
+ | "Start a timer for the standup meeting" | Starts a running timer with that description |
120
+ | "Stop my timer" | Stops the currently running timer |
121
+ | "How many hours did I log this week?" | Lists recent time entries and totals them |
122
+ | "Log 2 hours yesterday for the Website Redesign project" | Creates a time entry on the right project |
123
+ | "Create a project called 'Brand Refresh' for client Acme" | Creates a new project linked to an existing client |
124
+ | "Show me all time entries from last Monday" | Fetches entries filtered by date |
125
+ | "Tag my last time entry with 'billable'" | Updates the most recent entry with a tag |
126
+ | "Delete the 'test-cleanup' tag" | Removes a tag by name |
127
+ | "What projects do we have?" | Lists all projects in the workspace |
128
+ | "Am I tracking time right now?" | Checks for a running timer |
129
+
130
+ Claude handles the translation from natural language to API calls — you just
131
+ describe what you want in plain English.
132
+
77
133
  ## Security
78
134
 
79
135
  - The API key in `~/.clockify-mcp/config.json` grants **full access** to your
package/package.json CHANGED
@@ -1,11 +1,23 @@
1
1
  {
2
2
  "name": "@themkn/clockify-mcp",
3
- "version": "0.1.0",
4
- "description": "MCP server for managing Clockify time entries, projects, tasks, tags, and clients.",
3
+ "version": "0.1.3",
4
+ "description": "MCP server for managing Clockify time tracking — start/stop timers, CRUD time entries, projects, tasks, tags, and clients via Claude Code or any MCP client.",
5
+ "keywords": [
6
+ "mcp",
7
+ "mcp-server",
8
+ "model-context-protocol",
9
+ "clockify",
10
+ "time-tracking",
11
+ "timetracking",
12
+ "claude",
13
+ "claude-code",
14
+ "timer",
15
+ "time-entries"
16
+ ],
5
17
  "license": "MIT",
6
18
  "type": "module",
7
19
  "bin": {
8
- "clockify-mcp": "./dist/index.js"
20
+ "clockify-mcp": "dist/index.js"
9
21
  },
10
22
  "main": "./dist/index.js",
11
23
  "files": [