Trackfusion MCP Server
# Trackfusion MCP Server
MCP (Model Context Protocol) server for Trackfusion. Exposes projects & tasks to AI assistants like Claude, OpenClaw, etc.
## Setup
```bash
npm install
npm run build
```
## Configuration
Copy the example env file and fill in your API key:
```bash
cp .env.example .env
```
Edit `.env` with your values:
```
TRACKFUSION_API_KEY=tf_your_key_here
TRACKFUSION_API_URL=https://europe-west1-oz-track.cloudfunctions.net/api # optional, defaults to production
```
The server loads `.env` automatically via `dotenv`.
## Usage
### With OpenClaw (mcporter)
```bash
mcporter add trackfusion --stdio "node /path/to/trackfusion/mcp/dist/index.js" --env TRACKFUSION_API_KEY=tf_xxx
```
### With Claude Desktop
Add to `claude_desktop_config.json`:
```json
{
"mcpServers": {
"trackfusion": {
"command": "node",
"args": ["/path/to/trackfusion/mcp/dist/index.js"],
"env": {
"TRACKFUSION_API_KEY": "tf_your_key_here"
}
}
}
}
```
## Tools
| Tool | Description |
|------|-------------|
| `list_projects` | List all projects with task counts |
| `list_tasks` | List tasks in a project (optional status filter) |
| `get_task` | Get full task details |
| `create_task` | Create a new task |
| `update_task` | Update a task (status, title, priority, etc.) |
## Getting an API Key
1. Log in to Trackfusion
2. Go to Settings → API Keys
3. Click "New Key", select scopes, and copy the generated key
TDQS
Scored across 76 tools
Most tools are grouped by clear noun objects, but the sheer number and near-synonymous actions create ambiguity: search_foods vs lookup_barcode vs search_community_foods, get_day_entry vs journal entries, create_item vs create_food_definition, and update_* vs set_* vs add_* all blur boundaries. Descriptions usually clarify, but an agent selecting among 76 tools will still struggle to pick the right one.
Names overwhelmingly follow a verb_noun snake_case pattern (list/create/update/delete/get), which is predictable and readable. Consistency is weakened by irregular singular/plural forms (spending/spendings, income/incomes, person/people) and by interchangeable verbs such as add_interaction vs create_*, set_nutrition_goals vs update_*, and log_meal_template vs create_meal_entry.
With 76 tools, the server presents an extreme, unwieldy flat namespace that is very difficult for an agent to navigate during tool selection. Even though each tool spans a different module, the aggregate count far exceeds what is appropriate for an MCP server, especially with many single-purpose tools like water intake helpers.
The server covers many domains, but several core lifecycles are incomplete: projects can be listed/shared but not created, tasks have no delete, income has no update/delete, workouts have no update/delete, and journal/day entries cannot be edited or deleted. These gaps will cause agent failures when users try to correct or manage data beyond basic creation.