Server has 5 tools with complete input schemas and descriptions. Naming follows verb_noun convention (time_tracker_*). Descriptions are present and contextual (avg ~150 chars), meeting baseline minimums. However, parameter descriptions lack format constraints and validation guidance. Output schemas are not documented. Error handling is minimal, no recovery guidance or categorization. Missing tool annotations (readOnlyHint, destructiveHint). The add_time tool has undocumented parameter interdependencies (duration vs start+finish). No pagination support for get_reports despite potentially large result sets.
Add a time entry to the time tracker. Provide either duration OR both start and finish times. Common project/task combinations: Tikal Meeting (project=14, task=13), Vacation (project=14, task=8), Truvify (project=938, task=5).
Delete a time entry by its ID. Use this to remove incorrect or duplicate entries.
Get all available projects and tasks for the authenticated user. Use this to discover valid project and task IDs.
Get time reports for a specific date, date range, or month. Use this to check existing time entries before adding new ones.
Authenticate with the Time Tracker API and receive a JWT token. This must be called before using any other tools.
Parameter interdependencies undocumented: time_tracker_add_time accepts either 'duration' OR 'start+finish', but schema does not enforce mutual exclusivity. LLMs may pass both or neither, causing silent failures.
Output schemas not documented. Callers cannot predict response structure (e.g., what fields does get_reports return? Is there pagination?). Forces LLMs to guess downstream field names.
No pagination support in get_reports despite potentially returning large result sets. No limit, offset, or cursor parameters. Large responses risk context window exhaustion.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 56 | 2026-07-28+ | v2 |
Parameter descriptions lack format constraints. 'date' says 'yyyy-mm-dd format' but no regex or minLength/maxLength in schema. 'project' and 'task' accept strings but should validate numeric format or provide enum of valid IDs.
Error handling minimal. No recovery guidance (e.g., 'Invalid project ID, call time_tracker_get_projects to discover valid IDs'). No error categorization (retryable vs user-fixable vs fatal).