MCP.Market

Fitatu MCP server

by Jezue·io.github.Jezue/fitatu-api·v0.6.0·19 stars

Unofficial Fitatu calorie counter: read and log food, weight, water and workouts.

A92/100grade A
What users say
No reviews yet
Be the first
Safety scan
A92/100

not scanned yet

Adoption
Growing

19 stars

Reviews

Write one

Nobody has reviewed Fitatu yet.

If you have run it, two minutes of your experience saves the next person an afternoon.

Fitatu tools

No tool declarations could be read from the package source. They show once the server is installed.

Not scanned yet. New listings are scanned within a day or two of arriving.

How Fitatu compares

Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.

Safety score
92/100
higher than 95% of 48,255 servers
GitHub stars
19
more than 91% of 28,688 servers

Release history: 3 versions in the registry since 2026-10-14, latest 2026-10-15, typically one every 1 day.

Install Fitatu in Claude Code, Cursor or VS Code

claude mcp add fitatu-api -- uvx fitatu-api
Add to Cursor

What the publisher says

From the Fitatu repository's README, as published. We do not edit it. Read it on GitHub

fitatu-api

<!-- mcp-name: io.github.Jezue/fitatu-api -->

An unofficial Python client for the API of Fitatu, the calorie counter, built to be driven by AI agents and scripts. It reads and writes the food diary, activities, body measurements and water, and reads goals, summaries and the food catalog. FitatuTools turns the diary into tools a language model can call. The session handling follows python-garminconnect: log in once, keep one session file, let the client refresh it.

Unofficial. This project is not affiliated with or endorsed by Fitatu Sp. z o.o. The API

was reverse-engineered from the Fitatu apps and can change without notice. Automated access

may break Fitatu's Terms of Service; check them, and use the library only with your own

account and at your own risk. The MIT licence covers this code, not the Fitatu service, its

API or its data.

Install

Python 3.11 or newer; the only dependency is requests (and tzdata on Windows).

pip install fitatu-api                                     # the library and the fitatu-api command
pip install "fitatu-api[mcp]"                              # plus fitatu-mcp, the MCP server
pip install "git+https://github.com/Jezue/fitatu_library"   # unreleased changes from main

To work on the library or run its tests offline, clone it instead: git clone https://github.com/Jezue/fitatulibrary && cd fitatulibrary && pip install -e ".[dev]".

Quick start

fitatu-api login   # asks for e-mail and password, writes ~/.fitatu/session.json

Signed up with Apple or Facebook? Then the account has no password: copy the session from the web app with fitatu-api import-session instead, as described under Authentication & session file.

from datetime import date

from fitatu_api import FitatuApiClient

with FitatuApiClient.from_session() as client:  # closes the HTTP connections at the end
    user_id = client.auth.fitatu_user_id
    today = date.today()

    day = client.planner.get_day(user_id, today)
    for meal_key, meal in day["dietPlan"].items():
        for row in meal["items"]:
            print(meal_key, row["name"], row["energy"], row["planDayDietItemId"])

    egg = client.search_food("jajko kurze", limit=1)[0]  # search rows carry the id as foodId
    added = client.planner.add_product_to_day_meal(
        user_id, today, meal_type="breakfast", product_id=egg["foodId"],
        measure_id=egg["measure"]["measureId"], measure_quantity=2,  # 2 of the hit's measure
    )
    print("added row", added["row_id"])

How writes, row ids and removals work: docs/PLANNER.md.

For AI agents

FitatuTools exposes 40 tools (read the day, search food, log food, weight, water, workouts and private recipes, ...) with JSON Schema inputs and read-only / destructive / idempotent annotations. call() never raises: it returns {"ok": true, "data": ...} or {"ok": false, "error": {"errortype", "message", "retryable", "hint", ...}}, so the model can read what went wrong. SYSTEMPROMPT is the recommended system prompt: the rules the model needs on top of the tool descriptions (read before writing, users' own meal names, data.ok, confirmations). The model asks get_today for the date, in the account's time zone.

import json

import anthropic

from fitatu_api import FitatuTools
from fitatu_api.agent import READ_ONLY_TOOLS, SYSTEM_PROMPT, anthropic_tools  # openai_tools() for OpenAI

Shortened. The full README is on GitHub.

Nothing above is checked by us. What we check is on the safety report.

Fitatu: common questions

Is Fitatu MCP server safe?
Yes, by our scan: it is graded A (92/100). Read the Fitatu safety report
How do I install Fitatu?
It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
Does Fitatu need an API key?
No secret keys are declared. It reads 1 setting from the environment.
Is Fitatu maintained?
The last commit was 21 days ago (2026-10-14). The latest release is v0.6.0.
How does Fitatu compare with other MCP servers?
safety score 92/100 (higher than 95% of 48,255 servers); github stars 19 (more than 91% of 28,688 servers). Full comparison.