Trackfusion MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| TRACKFUSION_API_KEY | Yes | Your Trackfusion API key | |
| TRACKFUSION_API_URL | No | API URL, defaults to production | https://europe-west1-oz-track.cloudfunctions.net/api |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_projectsB | List all Trackfusion projects with task counts and metadata |
| list_tasksA | List tasks in a project, optionally filtered by status |
| get_taskA | Get full details of a specific task |
| create_taskC | Create a new task in a project |
| update_taskC | Update an existing task (title, description, status, priority, due date) |
| list_habitsA | List all habits, optionally filtered by active status. Returns name, goal, streak info, and priority. |
| create_habitB | Create a new habit with a goal frequency |
| update_habitC | Update a habit (name, goal, active status, etc.) |
| toggle_habit_entryA | Toggle a habit completion for a specific date. If already completed, removes it. If not completed, marks it done. |
| get_habit_analyticsA | Get analytics for a habit: streaks, completion rate, monthly/yearly completions |
| list_itemsA | List tracked items/products, optionally filtered by status or category |
| create_itemC | Track a new item/product purchase |
| update_itemC | Update an existing tracked item |
| delete_itemA | Delete a tracked item permanently |
| list_item_categoriesA | List all item categories (needed for creating items) |
| list_journal_entriesB | List journal entries, optionally filtered by date range |
| create_journal_entryA | Create a new journal entry with rich text content |
| get_day_entryB | Get the day entry (daily notes) for a specific date |
| list_journal_todosA | List journal todos (task items), optionally filtered by completion status |
| toggle_journal_todoB | Toggle a journal todo completion, or update its fields |
| list_spendingsA | List expense records, optionally filtered by date range, category, or source |
| create_spendingA | Record a new expense. Use list_spending_categories and list_spending_sources first to get valid IDs. |
| update_spendingC | Update an existing expense record |
| delete_spendingA | Delete an expense record permanently |
| list_incomesA | List income records, optionally filtered by date range |
| create_incomeA | Record a new income entry. Use list_spending_sources to get valid source IDs. |
| list_spending_categoriesA | List all spending categories (needed for creating expenses) |
| list_spending_sourcesA | List all payment sources (needed for creating expenses and incomes) |
| get_spending_analyticsA | Get monthly spending analytics (total spend & income for a month) |
| list_peopleB | List people in your CRM, optionally filtered by search or relationship type |
| create_personC | Add a new person to your CRM |
| update_personC | Update a person in your CRM |
| add_interactionA | Log an interaction with a person (meeting, call, message, etc.) |
| list_workout_sessionsA | List workout sessions, optionally filtered by date range |
| create_workout_sessionB | Log a workout session with exercises and sets |
| list_workout_templatesA | List saved workout templates |
| list_exercisesA | List available exercise definitions (system + custom) |
| get_personal_recordsA | Get personal records (PRs), optionally filtered by exercise |
| list_investment_transactionsB | List investment transactions (buys/sells), optionally filtered |
| list_assetsA | List available assets (stocks, crypto, etc.) with current prices |
| get_asset_price_historyC | Get historical price data for an asset |
| get_portfolio_summaryA | Get portfolio overview: total value, P&L, allocation, and all holdings |
| list_friendsA | List your accepted friends |
| list_friend_requestsA | List pending friend requests (sent and received) |
| send_friend_requestA | Send a friend request by email address |
| respond_to_friend_requestA | Accept or reject a pending friend request |
| delete_friendA | Remove a friend (also removes them from any shared projects) |
| share_projectA | Share a project with a friend (owner only) |
| unshare_projectA | Remove a friend from a shared project (owner only) |
| list_food_definitionsB | List food definitions (system + custom). Optionally search by name or filter by category. |
| create_food_definitionB | Create a custom food definition with nutritional info per serving |
| update_food_definitionA | Update a custom food definition (cannot update system foods) |
| delete_food_definitionA | Delete a custom food definition (cannot delete system foods) |
| list_meal_entriesA | List logged meal entries. Filter by date, date range, or meal type. |
| create_meal_entryB | Log a meal entry. Can reference a food definition or be a quick-add with just calories. |
| update_meal_entryC | Update an existing meal entry |
| delete_meal_entryC | Delete a meal entry |
| get_nutrition_goalsA | Get the user's daily nutrition goals (calories and macros) |
| set_nutrition_goalsB | Set daily nutrition goals (calories and macro targets) |
| get_diet_daily_summaryA | Get a daily diet summary with totals and meals grouped by type |
| search_foodsA | Search external food databases (Open Food Facts + USDA) for nutrition data |
| lookup_barcodeA | Look up a product by barcode. Tries Open Food Facts first, then UPC ItemDB as fallback. |
| get_diet_profileA | Get user diet profile (TDEE calculation inputs: sex, DOB, height, activity, goal, macro preset) |
| set_diet_profileB | Set/update user diet profile for TDEE calculation and goal setup |
| list_meal_templatesA | List all saved meal templates (reusable food combinations) |
| create_meal_templateA | Create a reusable meal template from a list of foods |
| update_meal_templateA | Update a meal template name or items |
| delete_meal_templateB | Delete a meal template |
| log_meal_templateA | Log all items from a meal template as meal entries for a specific date and meal |
| search_community_foodsB | Search or browse community-contributed food definitions, sorted by popularity |
| share_food_to_communityA | Share a user food definition to the community database so all users can access it |
| search_community_templatesA | Search or browse community-shared meal templates, sorted by popularity |
| share_meal_templateA | Share a user meal template to the community database |
| get_water_intakeA | Get water intake for a specific date |
| add_waterA | Add a glass of water for a specific date (default 250ml) |
| set_water_intakeB | Set water intake to a specific amount for a date |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
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.