Fitatu MCP Unofficial
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Fitatu MCP Unofficialshow me today's meal plan"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.

Fitatu MCP Unofficial
Unofficial Model Context Protocol (MCP) server for accessing and updating data in your own Fitatu account. It provides typed tools for profile data, meal plans, nutrition summaries, food search, and recipe management over stdio or Streamable HTTP.
This project is not affiliated with, endorsed by, or sponsored by Fitatu. Use it only with your own account and treat Fitatu credentials and account data as sensitive.
Features
Profile, day-plan, and nutrition summary queries.
Food and recipe search with identifiers required by mutation tools.
Meal item creation, update, replacement, movement, and removal.
Recipe creation, inspection, update, and deletion.
MCP transports for local stdio and Streamable HTTP clients.
Local development and Docker workflows.
Related MCP server: fitatu-wrapper
Requirements
Node.js
>=22.18.0npm
A Fitatu account
Docker and cloudflared are optional and required only for their respective workflows.
Quick start
Install dependencies and create the local configuration file:
npm install
cp .env.example .envSet FITATU_EMAIL and FITATU_PASSWORD in .env, then start the development server:
npm run devThe default MCP endpoint is http://localhost:3000/mcp.
MCP client configuration
Choose one transport with MCP_TRANSPORT:
Transport | Best for | Process model |
| A local client that launches its own MCP server | One server process per client |
| A persistent server shared by one or more clients | Long-running server on |
stdio
Build the server before configuring the client:
npm run buildUse absolute paths to the repository's .env and dist/index.js files:
{
"mcpServers": {
"fitatu": {
"command": "node",
"args": [
"--env-file=/absolute/path/to/fitatu-mcp-unofficial/.env",
"/absolute/path/to/fitatu-mcp-unofficial/dist/index.js"
],
"env": {
"MCP_TRANSPORT": "stdio"
}
}
}
}The client starts and stops the server. In stdio mode, logs are written to stderr because stdout is reserved for the JSON-RPC stream.
Streamable HTTP
Start the server with npm run dev, or build and run it with:
npm run build
npm startClients with native Streamable HTTP support can connect directly to:
http://localhost:3000/mcpFor a client that launches remote MCP connections through a command, use mcp-remote:
{
"mcpServers": {
"fitatu": {
"command": "npx",
"args": ["mcp-remote", "http://localhost:3000/mcp"]
}
}
}To inspect the local server interactively:
npm run inspectorConnect the Inspector to http://localhost:3000/mcp.
Temporary Cloudflare Tunnel
Install cloudflared, start the HTTP server locally, and run:
cloudflared tunnel --url http://localhost:3000Append /mcp to the public URL printed by cloudflared and use the result as the MCP endpoint.
The MCP server has no separate application-level access control. Anyone who can reach the tunnel URL may be able to invoke tools against the configured Fitatu account. Use a public tunnel only for controlled, temporary testing and close it immediately afterward.
Available tools
Tool | Purpose |
| Return a safe subset of the authenticated user profile. |
| Return meals and food items for a |
| Summarize nutrition and energy for an inclusive date range. |
| Search Fitatu food catalogs and return mutation-ready identifiers. |
| Add products, recipes, or custom items to a meal. |
| Update quantity, measure, or eaten state. |
| Replace one exact meal entry. |
| Move an item to another meal, date, or both. |
| Atomically remove selected day-plan entries by UUID. |
| Search private recipes, public recipes, or both catalogs. |
| Return canonical per-serving recipe details. |
| Create a private recipe from product and measure identifiers. |
| Partially update an owned, editable recipe. |
| Soft-delete a recipe after exact-name confirmation. |
Configuration
Runtime configuration is read from environment variables and validated at startup.
Variable | Required | Default | Description |
| Yes | — | Fitatu account email address. |
| Yes | — | Fitatu account password. |
| No |
| MCP transport: |
| No |
| HTTP port; unused in stdio mode. |
| No |
|
|
| No |
| Name reported by the MCP server. |
| No |
| Version reported by the MCP server. |
| No |
|
|
| No |
| Fitatu mobile runtime user agent. |
| No |
| Fitatu mobile application version. |
| No |
| Fitatu mobile build identifier. |
Do not commit .env. The mobile client profile defaults match Fitatu 4.14.4 traffic captured on 2026-07-30 and can be overridden without changing code.
Docker
The current image build requires a configured .env file:
cp .env.example .env
docker build -t fitatu-mcp .
docker run --name fitatu-mcp -p 3000:3000 fitatu-mcpThe Dockerfile copies .env into the image. Treat the resulting image as sensitive; do not publish or share it.
Development
Task | Command |
Development server |
|
Production build |
|
Start built server |
|
Type checking |
|
Lint |
|
Formatting check |
|
Unit tests with coverage |
|
Local coverage report |
|
Integration tests |
|
npm run test:ci is deterministic and does not load Fitatu credentials. Integration tests require valid credentials and may read or mutate meal-plan and
recipe data in the authenticated account.
See ARCHITECTURE.md for layer boundaries and design rules, and CONTRIBUTING.md for contribution guidelines.
License
Licensed under the MIT License.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityBmaintenanceMCP server for managing Yazio user & nutrition data (unofficial)1517055MIT
- AlicenseCqualityCmaintenanceEnables programmatic access to Fitatu nutrition tracking via MCP tools for login, food search, product lookup, daily nutrition read, and adding entries.9MIT
- AlicenseNot gradedqualityDmaintenanceMCP server for USDA nutrition data lookup, meal logging, and daily macro tracking.54MIT
- AlicenseBqualityCmaintenanceUnofficial read-only MCP server to log into Kanpla and read canteen menus using your account credentials.39MIT
Related MCP Connectors
MCP server for Withings health data — sleep, activity, heart, and body metrics.
Unofficial read-only MCP server for VeryChic hotel offers
The official MCP Server from Mia-Platform to interact with Mia-Platform Console
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/AndekQR/fitatu-mcp-unofficial'
If you have feedback or need assistance with the MCP directory API, please join our Discord server