Foodzilla
Para desarrolladores

El servidor MCP de Foodzilla

Foodzilla habla el Model Context Protocol, así que un asistente de IA puede trabajar en la cuenta de un profesional o en el diario de un cliente por una interfaz estándar y no por una raspada de la web. Es un endpoint HTTPS, OAuth 2.1 con PKCE y más de 60 herramientas.

Endpointhttps://api.foodzilla.io/mcp

¿Buscas qué hace más que cómo funciona? Ver el resumen de Autopilot

Qué es el Model Context Protocol

MCP es un estándar abierto para conectar asistentes de IA a los sistemas que guardan datos reales. El asistente pregunta al servidor qué herramientas tiene, el servidor responde con nombres y argumentos tipados, y el asistente las llama. Sustituye al patrón en el que un asistente va adivinando por una página web o un endpoint sin documentar.

En una consulta de nutrición eso importa más que en otros sitios. Una comida que un cliente describe tiene que entrar en su diario con nutrición de una base de datos real, no con un número inventado por el modelo, y tiene que entrar en su ficha y en la de nadie más. Las herramientas tipadas y los scopes por cuenta son lo que mantiene eso cierto.

Referencia de conexión

Todo lo necesario para apuntar un cliente MCP a Foodzilla.

Endpoint
https://api.foodzilla.io/mcp
Transporte
HTTP en streaming, JSON-RPC 2.0 por POST
Autorización
Código de autorización OAuth 2.1 con PKCE, registro dinámico de clientes
Descubrimiento
/.well-known/oauth-protected-resource/mcp
Scopes
autopilot, coach, openid, offline_access
Plan
Professional o superior para profesionales
autopilot

Un cliente acompañado. Su propio plan y su propio diario, y nada más.

coach

Un profesional trabajando en su propia cuenta. Recetas, plantillas, formularios, reservas, contenido, tienda, ajustes y suscripción. Sin acceso a ninguna ficha de cliente.

Un token lleva uno de los dos, nunca los dos. Cuál te toca se elige en la página de consentimiento, y a quien es profesional y además tiene ficha de cliente se le pregunta con cuál se conecta.

Qué recibe una petición sin autenticar

Un 401 con una cabecera WWW-Authenticate que nombra la URL de metadatos del recurso, que es como un cliente MCP bien hecho encuentra por su cuenta el servidor de autorización.

Las herramientas

61 a día de hoy. Los nombres son estables. Lo que sobrescribe o gasta dinero va marcado como destructivo, así que tu asistente pregunta antes de ejecutarlo.

Scope de cliente

16 herramientas

Registro

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

Su plan

get_plan, get_todays_meals, get_recipe

Mirar atrás

get_day, get_progress, get_recent_foods, get_profile, get_status

Cuenta

sign_out_everywhere

log_food acepta o una lista de alimentos, emparejados con las bases de datos de Foodzilla con nutrición real por ingrediente, o cifras sueltas para algo que no esté en ninguna base. Una línea que la base no conozca rechaza la llamada entera y la nombra, en vez de registrar una suposición.

Scope de profesional

46 herramientas

Recetas

generate_recipe, import_recipe_from_url, update_recipe_draft, discard_recipe_draft, save_recipe, list_my_recipes

Plantillas de plan

generate_plan_template, list_my_templates, describe_plan_settings

Colecciones y alimentos

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

Formularios y reservas

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

Contenido

create_post, update_post, publish_post, pin_post, list_posts

Tienda

get_store, update_store, create_store_plan, update_store_plan, publish_store, unpublish_store

Ajustes

get_app_experience, set_app_experience, update_my_profile, get_invoice_settings, update_invoice_settings

Cuenta y facturación

get_my_account, get_subscription, preview_plan_change, change_plan, activate_subscription, extend_trial

Quien esté por debajo de Professional se conecta con cinco de estas: las de cuenta y suscripción, para que el asistente pueda presupuestar una subida de plan y aplicarla. El resto aparece en cuanto sube el plan, en la misma conexión.

Conectar un asistente

Nada que instalar y ninguna clave que generar. El flujo de OAuth hace el resto.

Claude

  1. 1Ajustes, luego Conectores, luego Añadir conector personalizado.
  2. 2Pega https://api.foodzilla.io/mcp como URL.
  3. 3Inicia sesión con tu correo y contraseña de Foodzilla cuando se abra la página.
  4. 4Comprueba la cuenta que aparece en la página de consentimiento y pulsa Conectar.

ChatGPT

  1. 1Ajustes, luego Conectores, luego Avanzado, y activa el modo desarrollador. Foodzilla aún no está en el directorio de conectores.
  2. 2Añade un conector con https://api.foodzilla.io/mcp como URL.
  3. 3Inicia sesión con tu correo y contraseña de Foodzilla.
  4. 4Comprueba la cuenta que aparece en la página de consentimiento y pulsa Conectar.
  5. 5Empieza un chat con el conector activado.

Cualquier otra cosa que hable MCP

Apúntala al endpoint. Se registra sola por registro dinámico de clientes, encuentra el servidor de autorización por los metadatos del recurso protegido y ejecuta el flujo de código de autorización con PKCE. Pide offline_access si quieres que la conexión dure más que el token de acceso.

Límites de uso y consumo

Se cuenta por semanas

Cada plan lleva un límite semanal que se reinicia el lunes. Las lecturas, las escrituras y las llamadas que gastan tiempo de modelo se cuentan por separado, así que una semana de mucha lectura no se come el presupuesto de generar recetas.

Los clientes comparten un fondo

Tus clientes tiran de un único límite entre todos, no de uno cada uno. Así un solo cliente muy hablador no se gasta la semana de la consulta.

Crece con el plan

White Label lleva cuatro veces el límite de Professional. Team lleva siete veces, por profesional.

Visible en porcentaje

La pestaña Autopilot de Foodzilla muestra cuánto va de la semana. Si llegas al límite, la herramienta responde diciéndolo, en vez de fallar en silencio.

Qué rechaza el servidor

  • Un token de profesional que pide la ficha de un cliente. No hay ninguna herramienta que acepte un id de cliente, así que no hay a qué apuntar.
  • Un token de cliente que quiera salir de su diario y su plan. Las recetas solo se leen si están en el plan de ese cliente, lo que impide recorrer la biblioteca llamada a llamada.
  • Un token de una conexión que el profesional ya ha desconectado, aunque siga dentro de su vida útil.
  • Un token de una concesión anterior después de reconectar, así que desconectar y volver a conectar no resucita una llave vieja sin que nadie se entere.
  • Cualquier cosa en una cuenta cuyo plan ya no incluye Autopilot. La elegibilidad se comprueba en cada llamada, no solo al dar el consentimiento.
  • Un cliente cuyo profesional ha apagado el acceso de clientes.

Los datos personales no entran en los registros del servidor. Ni nombres de clientes o profesionales, ni correos, ni teléfonos.

Preguntas Frecuentes

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