{"id":44383344,"url":"https://github.com/ficus33/trackingtime-mcp","last_synced_at":"2026-02-12T00:13:00.483Z","repository":{"id":337379282,"uuid":"1153247111","full_name":"ficus33/trackingtime-mcp","owner":"ficus33","description":" MCP server for TrackingTime — manage projects, tasks, time tracking, staff, and customers through AI assistants like Claude","archived":false,"fork":false,"pushed_at":"2026-02-09T09:15:13.000Z","size":41,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-09T13:23:48.392Z","etag":null,"topics":["claude-code","mcp","mcp-server","trackingtime"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ficus33.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-02-09T04:37:37.000Z","updated_at":"2026-02-09T09:12:23.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/ficus33/trackingtime-mcp","commit_stats":null,"previous_names":["ficus33/trackingtime-mcp"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/ficus33/trackingtime-mcp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ficus33%2Ftrackingtime-mcp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ficus33%2Ftrackingtime-mcp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ficus33%2Ftrackingtime-mcp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ficus33%2Ftrackingtime-mcp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ficus33","download_url":"https://codeload.github.com/ficus33/trackingtime-mcp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ficus33%2Ftrackingtime-mcp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29347489,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-11T20:11:40.865Z","status":"ssl_error","status_checked_at":"2026-02-11T20:10:41.637Z","response_time":97,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["claude-code","mcp","mcp-server","trackingtime"],"created_at":"2026-02-12T00:12:55.880Z","updated_at":"2026-02-12T00:13:00.478Z","avatar_url":"https://github.com/ficus33.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# TrackingTime MCP Server\n\nAn [MCP (Model Context Protocol)](https://modelcontextprotocol.io/) server that connects AI assistants like Claude to the [TrackingTime](https://trackingtime.co/) API v4. Manage projects, tasks, time tracking, staff assignments, and customers through natural language.\n\n## Quick Start\n\n### 1. Get your TrackingTime credentials\n\n- **App Password:** TrackingTime → Manage → User Settings → Apps \u0026 Integrations → create a new App Password\n- **Account ID:** Visible in your TrackingTime URL when logged in, or in account settings\n\n### 2. Add to your AI assistant\n\n**Claude Code:**\n\n```bash\nclaude mcp add trackingtime -e TT_APP_PASSWORD=your-app-password -e TT_ACCOUNT_ID=your-account-id -- npx trackingtime-mcp\n```\n\n**Claude Desktop** (`claude_desktop_config.json`):\n\n```json\n{\n  \"mcpServers\": {\n    \"trackingtime\": {\n      \"command\": \"npx\",\n      \"args\": [\"trackingtime-mcp\"],\n      \"env\": {\n        \"TT_APP_PASSWORD\": \"your-app-password\",\n        \"TT_ACCOUNT_ID\": \"your-account-id\"\n      }\n    }\n  }\n}\n```\n\nRestart your assistant after adding.\n\n### Alternative: Install from source\n\nIf you prefer to clone and build locally:\n\n```bash\ngit clone https://github.com/ficus33/trackingtime-mcp.git\ncd trackingtime-mcp\nnpm install\nnpm run build\ncp .env.example .env   # then edit .env with your credentials\n```\n\nThen point your assistant at the local build:\n\n```bash\nclaude mcp add trackingtime -- node /path/to/trackingtime-mcp/dist/index.js\n```\n\n## Tools\n\n### Projects\n\n| Tool | Description |\n|------|-------------|\n| `tt_list_projects` | List projects (filter: ACTIVE/ARCHIVED/ALL/FOLLOWING) |\n| `tt_list_project_ids` | List only project IDs (lightweight, for batch operations) |\n| `tt_search_projects` | Search projects and tasks by keyword |\n| `tt_create_project` | Create a new project |\n| `tt_update_project` | Edit project name, customer, or service |\n| `tt_update_project_preferences` | Set favorite, default view, show closed tasks |\n| `tt_get_project` | Get single project with detail flags |\n| `tt_get_project_times` | Get accumulated time for multiple projects |\n| `tt_get_project_users` | See which staff are on a project |\n| `tt_archive_project` | Archive a project (reversible) |\n| `tt_reopen_project` | Reopen an archived project |\n| `tt_delete_project` | Permanently delete a project |\n| `tt_merge_projects` | Merge one project into another |\n\n### Tasks\n\n| Tool | Description |\n|------|-------------|\n| `tt_list_tasks` | List tasks (filter: ACTIVE/ARCHIVED/ALL/TRACKING) |\n| `tt_create_task` | Create a task with assignees, due date, estimate |\n| `tt_update_task` | Edit task or reassign staff |\n| `tt_get_task` | Get single task details |\n| `tt_get_task_times` | Get accumulated times for multiple tasks |\n| `tt_search_tasks` | Search tasks by name within projects |\n| `tt_sort_tasks` | Reorder tasks by sort index |\n| `tt_import_tasks` | Bulk import tasks with preview mode |\n| `tt_close_task` | Mark a task as complete |\n| `tt_reopen_task` | Reopen a completed task |\n| `tt_delete_task` | Delete a task |\n\n### Time Tracking\n\n| Tool | Description |\n|------|-------------|\n| `tt_start_timer` | Start a timer on a task |\n| `tt_stop_timer` | Stop a running timer |\n\n### Time Entries\n\n| Tool | Description |\n|------|-------------|\n| `tt_list_time_entries` | List entries by user/project/customer/task + date range |\n| `tt_add_time_entry` | Add a manual time entry (duration in seconds) |\n| `tt_get_time_entry` | Get a single time entry |\n| `tt_update_time_entry` | Edit a time entry |\n| `tt_delete_time_entry` | Delete a time entry |\n| `tt_get_events_summary` | Summary of hours per user per day |\n| `tt_export_time_entries` | Export as CSV |\n| `tt_mark_billed` | Flag entries as billed |\n| `tt_mark_not_billed` | Unflag billed entries |\n\n### Users \u0026 Staff\n\n| Tool | Description |\n|------|-------------|\n| `tt_list_users` | List all staff (find user IDs) |\n| `tt_get_user` | Get single user details |\n| `tt_update_user` | Update user profile |\n| `tt_get_user_tasks` | List a user's tasks grouped by project |\n| `tt_get_user_tracking` | See what a user is currently tracking |\n| `tt_get_user_trackables` | All projects and tasks assigned to a user |\n| `tt_get_user_projects` | List projects assigned to a user |\n| `tt_assign_user_projects` | Assign staff to projects |\n| `tt_remove_user_projects` | Remove staff from projects |\n| `tt_archive_user` | Deactivate a user (admin only) |\n| `tt_reactivate_user` | Reactivate an archived user |\n| `tt_invite_users` | Invite people by email |\n\n### Customers\n\n| Tool | Description |\n|------|-------------|\n| `tt_list_customers` | List customers (filter: ACTIVE/ARCHIVED/ALL) |\n| `tt_get_customer` | Get single customer details |\n| `tt_create_customer` | Create a new customer |\n| `tt_update_customer` | Edit customer details |\n| `tt_delete_customer` | Permanently delete a customer |\n| `tt_archive_customer` | Archive a customer (reversible) |\n| `tt_reactivate_customer` | Reactivate an archived customer |\n\n### Reducing tool count\n\nAll 54 tools are active by default. If you find this adds too much context for your AI assistant, you can clone the repo, comment out tools you don't need in `src/tools.ts` with `/* */`, and run `npm run build` to create a slimmer build.\n\n## Testing\n\nUse [MCP Inspector](https://github.com/modelcontextprotocol/inspector) to test tools interactively:\n\n```bash\nnpx @modelcontextprotocol/inspector npx trackingtime-mcp\n```\n\n## API Notes\n\nA few TrackingTime API quirks to be aware of:\n\n- `duration` and `accumulated_time` are in **seconds**\n- `estimated_time` and `worked_hours` are in **hours**\n- Time entries are called \"events\" in the API\n- Starting a timer when one is already running returns error 502 — use `stop_running_task=true` to auto-stop the current timer\n- Dates use `YYYY-MM-DD`, datetimes use `yyyy-MM-dd HH:mm:ss`\n\n## Auth\n\nThis server uses TrackingTime's **App Password** authentication. Your real password is never stored. The App Password is sent as HTTP Basic auth (`API_TOKEN:\u003capp_password\u003e`) over SSL.\n\nIf an App Password is compromised, revoke it in TrackingTime and create a new one — no need to change your account password.\n\n## License\n\n[MIT](LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fficus33%2Ftrackingtime-mcp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fficus33%2Ftrackingtime-mcp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fficus33%2Ftrackingtime-mcp/lists"}