You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
CLI:
timebook entries edit <id> [-d desc] [-t 1h30m] [--start iso] [--end iso] [-p project] [-r rate]
timebook entries delete <id>
MCP tools: update_entry (id + any combination of fields), delete_entry (id only). delete_entry annotated destructiveHint=true; update_entry destructiveHint=false (overwrite of mutable fields, not data loss).
Both surfaces hit the existing PUT /api/time-entries/:id and DELETE /:id, which already enforce the per-token authorship rule (token must have created the entry, or be admin, or be a JWT session). 403s and 404s get friendly messages instead of stack traces.
Partial-update flows through naturally: the API wrapper sends only the fields you pass; the backend's conditional spread leaves unset fields untouched.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
'Edit one or more fields on an existing time entry. Any combination is valid; unset fields are left as-is. Server-enforced authorship rule: this token can only edit entries it created itself (sessions and admins bypass).',
218
+
inputSchema: {
219
+
type: 'object',
220
+
properties: {
221
+
id: {type: 'string',description: 'Entry id (uuid).'},
222
+
description: {
223
+
type: ['string','null'],
224
+
description: 'New description / note. Pass empty string or null to clear.',
225
+
},
226
+
duration: {
227
+
type: 'string',
228
+
description: 'New duration, e.g. "1h30m" or "45m".',
0 commit comments