FatSecret

Servidor que conecta Claude/Cursor con la API de la plataforma FatSecret. Busca alimentos, registra tu dieta, administra recetas y monitorea tu peso directamente desde tu asistente de IA.

Documentación

Servidor MCP de FatSecret FatSecret Logo

[!IMPORTANT] Este no es un servidor MCP oficial de FatSecret. Utiliza la API de la plataforma FatSecret, que requiere una cuenta de desarrollador gratuita.

Un servidor MCP (Model Context Protocol) que conecta Claude/Cursor con la API de la plataforma FatSecret. Busca alimentos, registra tu dieta, gestiona recetas y controla tu peso directamente desde tu asistente de IA.

Disponible en NPM: npx fatsecret-mcp | Extensión para Claude Desktop: fatsecret-mcp.mcpb

✨ Características

  • 🔐 Autenticación — Configuración interactiva de credenciales y autorización OAuth
  • 🔍 Búsqueda de alimentos — Busca en la extensa base de datos de alimentos de FatSecret con información nutricional detallada
  • 📷 Búsqueda por código de barras — Encuentra alimentos por código de barras GTIN-13
  • 🍳 Búsqueda de recetas — Explora y filtra recetas por calorías, macronutrientes y tiempo de preparación
  • 📝 Diario de alimentos — Añade, edita, copia y elimina entradas del diario de alimentos
  • 🍽️ Comidas guardadas — Crea y gestiona plantillas de comidas reutilizables
  • ⚖️ Seguimiento de peso — Registra y consulta el historial de peso
  • 🏃‍♂️ Seguimiento de ejercicio — Consulta ejercicios y gestiona entradas de actividad
  • ⭐ Favoritos — Gestiona alimentos y recetas favoritos

🚀 Inicio rápido

Añade a la configuración de tu cliente MCP:

{
  "mcpServers": {
    "fatsecret": {
      "command": "npx",
      "args": ["-y", "fatsecret-mcp"]
    }
  }
}

¡Eso es todo! En el primer uso, la IA te guiará a través de la configuración:

  1. check_auth_status — detecta credenciales faltantes y te indica qué hacer
  2. setup_credentials — proporcionas tus claves de API (guardadas en ~/.fatsecret-mcp/config.json)
  3. start_auth → complete_auth — autoriza tu cuenta de FatSecret para las herramientas de diario/peso

Alternativamente, puedes pasar las credenciales como variables de entorno:

{
  "mcpServers": {
    "fatsecret": {
      "command": "npx",
      "args": ["-y", "fatsecret-mcp"],
      "env": {
        "FATSECRET_CLIENT_ID": "your_client_id",
        "FATSECRET_CLIENT_SECRET": "your_client_secret",
        "FATSECRET_CONSUMER_SECRET": "your_consumer_secret"
      }
    }
  }
}

🔑 Dónde obtener las credenciales

  1. Crea una cuenta gratuita en platform.fatsecret.com
  2. Navega a Mi cuenta → Claves de API
  3. Verás tres valores:
    • ID de cliente (utilizado tanto para OAuth 2.0 como para OAuth 1.0)
    • Secreto de cliente (OAuth 2.0 — para búsqueda pública de alimentos/recetas)
    • Secreto de consumidor (OAuth 1.0 — para acceso al perfil/diario del usuario)

📖 Guía paso a paso: Cómo empezar con la API de FatSecret

Claude Desktop (Extensión)

Descarga y abre fatsecret-mcp.mcpb con Claude Desktop. Se te pedirá que introduzcas tus credenciales de FatSecret — los secretos se almacenan de forma segura en el llavero del sistema operativo.

Consulta Creación de extensiones de escritorio con MCPB para más detalles.

Claude Desktop (Manual)

~/Library/Application Support/Claude/claude_desktop_config.json

Claude Code (CLI)

claude mcp add fatsecret -- npx -y fatsecret-mcp

O con variables de entorno:

claude mcp add fatsecret \
  -e FATSECRET_CLIENT_ID=your_client_id \
  -e FATSECRET_CLIENT_SECRET=your_client_secret \
  -e FATSECRET_CONSUMER_SECRET=your_consumer_secret \
  -- npx -y fatsecret-mcp

Verifica con claude mcp list.

Cursor

  • Interfaz de configuración — Settings → MCP → + Add new MCP server, luego completa el comando, los argumentos y el entorno
  • Configuración del proyecto — añade JSON a .cursor/mcp.json en la raíz de tu proyecto
  • Configuración global — añade JSON a ~/.cursor/mcp.json

🛠️ Herramientas disponibles

HerramientaDescripción
🔐 Configuración y autenticación
check_auth_statusComprueba si las credenciales y la autenticación del perfil están configuradas. Llama a esto primero.
setup_credentialsGuarda las credenciales de la API de FatSecret en la configuración persistente
start_authInicia la autorización OAuth 1.0 — devuelve una URL para que el usuario la visite
complete_authCompleta OAuth con el PIN de verificación de la página de autorización
🔍 Búsqueda de alimentos (pública)
search_foodsBusca en la base de datos de alimentos
get_foodObtén información nutricional detallada de un alimento
find_food_by_barcodeEncuentra alimentos por código de barras GTIN-13
autocomplete_foodsObtén sugerencias de autocompletado para búsquedas
🍳 Recetas (pública)
search_recipesBusca recetas con filtros
get_recipeObtén detalles de recetas con ingredientes e instrucciones
📚 Referencia (pública)
get_food_categoriesObtén categorías de alimentos
get_food_sub_categoriesObtén subcategorías de alimentos
get_brandsObtén marcas de alimentos
get_recipe_typesObtén tipos de recetas
📝 Diario de alimentos (autenticación de perfil)
get_food_entriesObtén entradas del diario de alimentos para una fecha
get_food_entries_monthObtén resumen nutricional mensual (calorías y macronutrientes por día)
create_food_entryAñade una entrada al diario de alimentos
edit_food_entryEdita una entrada del diario de alimentos
delete_food_entryElimina una entrada del diario de alimentos
copy_food_entriesCopia entradas de una fecha a otra
copy_saved_meal_entriesCopia una comida guardada a una fecha
⭐ Favoritos (autenticación de perfil)
get_favorite_foodsObtén alimentos favoritos
delete_favorite_foodElimina un alimento de los favoritos
get_most_eaten_foodsObtén los alimentos más consumidos
get_recently_eaten_foodsObtén alimentos consumidos recientemente
get_favorite_recipesObtén recetas favoritas
add_favorite_recipeAñade una receta a los favoritos
delete_favorite_recipeElimina una receta de los favoritos
🍽️ Comidas guardadas (autenticación de perfil)
get_saved_mealsObtén comidas guardadas
create_saved_mealCrea una comida guardada
edit_saved_mealEdita una comida guardada
delete_saved_mealElimina una comida guardada
get_saved_meal_itemsObtén los elementos de una comida guardada
add_saved_meal_itemAñade un alimento a una comida guardada
edit_saved_meal_itemEdita un elemento de comida guardada
delete_saved_meal_itemElimina un elemento de una comida guardada
⚖️ Peso (autenticación de perfil)
update_weightRegistra el peso de una fecha
get_weight_monthObtén el historial de peso de un mes
🏃‍♂️ Ejercicio (autenticación de perfil)
get_exercisesObtén tipos de ejercicio
edit_exercise_entriesCambia el tiempo de ejercicio entre actividades
get_exercise_entries_monthObtén datos de ejercicio de un mes
save_exercise_templateGuarda una plantilla de ejercicio para días laborables
👤 Perfil (autenticación de perfil)
get_profileObtén información del perfil del usuario
create_foodCrea un alimento personalizado (Premier)

Referencia de la API: Colección Postman de FatSecret

🧪 Probar la conexión

npx fatsecret-mcp

O con variables de entorno:

FATSECRET_CLIENT_ID='...' FATSECRET_CLIENT_SECRET='...' FATSECRET_CONSUMER_SECRET='...' npx fatsecret-mcp

📋 Requisitos

  • Node.js 18+
  • Cuenta de la API de la plataforma FatSecret (platform.fatsecret.com)
  • Cliente compatible con MCP (Claude Desktop, Cursor, etc.)

🔧 Desarrollo

  1. Clona el repositorio
  2. npm install
  3. Copia .env.example a .env y completa tus credenciales
  4. npm run dev para ejecutar en modo de desarrollo

Depuración con MCP Inspector:

FATSECRET_CLIENT_ID=X FATSECRET_CLIENT_SECRET=X FATSECRET_CONSUMER_SECRET=X npx -y @modelcontextprotocol/inspector npx <local-path>/fatsecret-mcp

📄 Licencia

Licencia MIT — consulta el archivo LICENSE para más detalles.