{"name":"Timebook MCP","version":"1.0.0","description":"Time tracking and time entry management for Claude.","transport":"streamable-http","endpoint":"/mcp","auth":{"bearer":{"types":["api_token","oauth2"],"api_token_instructions":"Create a token at https://usetimebook.com/settings (prefix: tbk_).","oauth2":{"authorization_server_metadata":"/.well-known/oauth-authorization-server","protected_resource_metadata":"/.well-known/oauth-protected-resource/mcp"}}},"tools":[{"name":"whoami","description":"Return the currently authenticated Timebook user (id, email, name)."},{"name":"list_projects","description":"List all projects available to the current token. Returns id, name, and client for each project."},{"name":"list_clients","description":"List all clients available to the current token."},{"name":"get_active_timer","description":"Return the currently running timer (project, description, started_at), or null if no timer is running."},{"name":"start_timer","description":"Start a timer on a project. Stops any other running timer first - Timebook allows only one active timer at a time."},{"name":"stop_timer","description":"Stop the currently running timer. Returns { stopped: false } if no timer was running."},{"name":"log_time","description":"Log a manual (past) time entry. Provide either `duration` (relative to now), or both `startTime` and `endTime` (absolute ISO-8601 timestamps)."},{"name":"list_entries","description":"List recent time entries, optionally filtered by project and/or date range. Returns at most 50 entries by default; pass a higher `limit` to see more."},{"name":"update_entry","description":"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)."},{"name":"delete_entry","description":"Delete a time entry. Server enforces: not invoiced, and either this token created it or the caller is an admin / web session."}]}