Foodzilla
Für Entwickler

Der Foodzilla MCP-Server

Foodzilla spricht das Model Context Protocol, ein KI-Assistent kann also im Konto einer Beraterin oder im Tagebuch eines Klienten über eine saubere Schnittstelle arbeiten statt über Scraping. Ein HTTPS-Endpoint, OAuth 2.1 mit PKCE und mehr als 60 Werkzeuge.

Endpointhttps://api.foodzilla.io/mcp

Sie suchen, was es kann, statt wie es funktioniert? Zur Autopilot-Übersicht

Was das Model Context Protocol ist

MCP ist ein offener Standard, um KI-Assistenten mit den Systemen zu verbinden, in denen die echten Daten liegen. Der Assistent fragt den Server, welche Werkzeuge er hat, der Server antwortet mit Namen und typisierten Argumenten, und der Assistent ruft sie auf. Das ersetzt das Muster, bei dem ein Assistent sich durch eine Webseite oder einen undokumentierten Endpoint rät.

Für eine Ernährungspraxis zählt das mehr als anderswo. Eine Mahlzeit, die ein Klient beschreibt, muss mit Nährwerten aus einer echten Datenbank im Tagebuch landen und nicht mit einer Zahl, die das Modell erfunden hat, und sie muss in seinem Datensatz landen und in keinem anderen. Typisierte Werkzeuge und Scopes pro Konto halten das aufrecht.

Verbindungs referenz

Alles, was Sie brauchen, um einen MCP-Client auf Foodzilla zu richten.

Endpoint
https://api.foodzilla.io/mcp
Transport
Streamable HTTP, JSON-RPC 2.0 per POST
Autorisierung
OAuth 2.1 Authorization Code mit PKCE, dynamische Client-Registrierung
Discovery
/.well-known/oauth-protected-resource/mcp
Scopes
autopilot, coach, openid, offline_access
Tarif
Professional und höher für Berater
autopilot

Ein betreuter Klient. Der eigene Plan und das eigene Tagebuch, sonst nichts.

coach

Eine Beraterin, die am eigenen Konto arbeitet. Rezepte, Vorlagen, Formulare, Termine, Inhalte, Shop, Einstellungen und Abo. Kein Zugriff auf irgendeinen Klientendatensatz.

Ein Token trägt einen von beiden, nie beide. Welchen, wird auf der Zustimmungsseite entschieden, und wer Berater ist und zusätzlich einen Klientendatensatz hat, wird gefragt, womit er sich verbindet.

Was eine nicht authentifizierte Anfrage bekommt

Eine 401 mit einem WWW-Authenticate-Header, der die URL der Resource-Metadaten nennt. So findet ein sauber gebauter MCP-Client den Autorisierungsserver von allein.

Die Werkzeuge

61 zum jetzigen Stand. Die Namen sind stabil. Alles, was überschreibt oder Geld kostet, ist als destruktiv markiert, Ihr Assistent fragt also vorher nach.

Klienten-Scope

16 Werkzeuge

Eintragen

log_food, log_planned_meal, log_water, log_exercise, log_sleep, log_weight, delete_food_log

Ihr Plan

get_plan, get_todays_meals, get_recipe

Zurückschauen

get_day, get_progress, get_recent_foods, get_profile, get_status

Konto

sign_out_everywhere

log_food nimmt entweder eine Liste von Lebensmitteln, zugeordnet zu den Foodzilla-Datenbanken mit echten Nährwerten je Zutat, oder schlichte Zahlen für etwas, das in keiner Datenbank steht. Eine Zeile, die die Datenbank nicht kennt, lässt den ganzen Aufruf scheitern und nennt sie, statt eine Schätzung einzutragen.

Berater-Scope

46 Werkzeuge

Rezepte

generate_recipe, import_recipe_from_url, update_recipe_draft, discard_recipe_draft, save_recipe, list_my_recipes

Planvorlagen

generate_plan_template, list_my_templates, describe_plan_settings

Sammlungen und Lebensmittel

create_collection, add_recipes_to_collection, list_collections, add_food, add_foods, import_food_from_url, import_food_from_text

Formulare und Termine

create_form, update_form, list_forms, get_booking_setup, set_availability, create_appointment_type, update_appointment_type

Inhalte

create_post, update_post, publish_post, pin_post, list_posts

Shop

get_store, update_store, create_store_plan, update_store_plan, publish_store, unpublish_store

Einstellungen

get_app_experience, set_app_experience, update_my_profile, get_invoice_settings, update_invoice_settings

Konto und Abrechnung

get_my_account, get_subscription, preview_plan_change, change_plan, activate_subscription, extend_trial

Wer unter Professional liegt, verbindet sich mit fünf davon: den Konto- und Abo-Werkzeugen, damit der Assistent ein Upgrade beziffern und ausführen kann. Der Rest erscheint, sobald der Tarif steigt, auf derselben Verbindung.

Einen Assistenten verbinden

Nichts zu installieren und kein Schlüssel zu erzeugen. Den Rest macht der OAuth-Ablauf.

Claude

  1. 1Einstellungen, dann Connectors, dann Eigenen Connector hinzufügen.
  2. 2Fügen Sie https://api.foodzilla.io/mcp als URL ein.
  3. 3Melden Sie sich mit Ihrer Foodzilla-E-Mail und Ihrem Passwort an, wenn die Seite aufgeht.
  4. 4Prüfen Sie das Konto, das die Zustimmungsseite nennt, und drücken Sie Verbinden.

ChatGPT

  1. 1Einstellungen, dann Connectors, dann Erweitert, und schalten Sie den Entwicklermodus ein. Foodzilla steht noch nicht im Connector-Verzeichnis.
  2. 2Legen Sie einen Connector mit https://api.foodzilla.io/mcp als URL an.
  3. 3Melden Sie sich mit Ihrer Foodzilla-E-Mail und Ihrem Passwort an.
  4. 4Prüfen Sie das Konto, das die Zustimmungsseite nennt, und drücken Sie Verbinden.
  5. 5Starten Sie einen Chat mit eingeschaltetem Connector.

Alles andere, das MCP spricht

Richten Sie es auf den Endpoint. Es registriert sich selbst per Dynamic Client Registration, findet den Autorisierungsserver über die Protected-Resource-Metadaten und führt den Authorization-Code-Ablauf mit PKCE aus. Fragen Sie offline_access an, wenn die Verbindung länger halten soll als das Access Token.

Limits und Verbrauch

Wochenweise gezählt

Jeder Tarif hat ein Wochenkontingent, das montags zurückgesetzt wird. Lesen, Schreiben und die Aufrufe, die Modellzeit kosten, werden getrennt gezählt, eine leseintensive Woche frisst also nicht das Budget fürs Rezepterstellen.

Klienten teilen sich einen Topf

Ihre Klienten ziehen gemeinsam aus einem Kontingent statt jeder aus einem eigenen. So kann ein einzelner gesprächiger Klient nicht die Woche der Praxis verbrauchen.

Wächst mit dem Tarif

White Label trägt das Vierfache von Professional. Team trägt das Siebenfache, je Berater.

Sichtbar als Prozentwert

Der Tab Autopilot in Foodzilla zeigt, wie viel von der Woche weg ist. Ist das Limit erreicht, sagt das Werkzeug das in seiner Antwort, statt still zu scheitern.

Was der Server ablehnt

  • Ein Berater-Token, das den Datensatz eines Klienten anfragt. Kein Werkzeug nimmt eine Klienten-ID entgegen, es gibt also nichts, worauf man zielen könnte.
  • Ein Klienten-Token, das über sein eigenes Tagebuch und seinen eigenen Plan hinausgreift. Ein Rezept ist nur lesbar, wenn es im Plan dieses Klienten steht, damit die Bibliothek nicht Aufruf für Aufruf abgegrast werden kann.
  • Ein Token einer Verbindung, die der Berater inzwischen getrennt hat, auch wenn es noch innerhalb seiner Laufzeit liegt.
  • Ein Token aus einer früheren Erteilung nach einer erneuten Verbindung, damit Trennen und neu Verbinden keinen alten Schlüssel still wieder zum Leben erweckt.
  • Alles auf einem Konto, dessen Tarif Autopilot nicht mehr enthält. Die Berechtigung wird bei jedem Aufruf geprüft, nicht nur bei der Zustimmung.
  • Einen Klienten, dessen Berater den Klientenzugang abgeschaltet hat.

Personenbezogene Daten stehen nicht in den Server-Logs. Keine Namen von Klienten oder Beratern, keine E-Mail-Adressen, keine Telefonnummern.

Häufig gestellte Fragen

MCP Server for Nutrition Coaching: Endpoint, Scopes, Tools | Foodzilla