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 
[!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:
check_auth_status— detecta credenciales faltantes y te indica qué hacersetup_credentials— proporcionas tus claves de API (guardadas en~/.fatsecret-mcp/config.json)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
- Crea una cuenta gratuita en platform.fatsecret.com
- Navega a Mi cuenta → Claves de API
- 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.jsonen la raíz de tu proyecto - Configuración global — añade JSON a
~/.cursor/mcp.json
🛠️ Herramientas disponibles
| Herramienta | Descripción |
|---|---|
| 🔐 Configuración y autenticación | |
check_auth_status | Comprueba si las credenciales y la autenticación del perfil están configuradas. Llama a esto primero. |
setup_credentials | Guarda las credenciales de la API de FatSecret en la configuración persistente |
start_auth | Inicia la autorización OAuth 1.0 — devuelve una URL para que el usuario la visite |
complete_auth | Completa OAuth con el PIN de verificación de la página de autorización |
| 🔍 Búsqueda de alimentos (pública) | |
search_foods | Busca en la base de datos de alimentos |
get_food | Obtén información nutricional detallada de un alimento |
find_food_by_barcode | Encuentra alimentos por código de barras GTIN-13 |
autocomplete_foods | Obtén sugerencias de autocompletado para búsquedas |
| 🍳 Recetas (pública) | |
search_recipes | Busca recetas con filtros |
get_recipe | Obtén detalles de recetas con ingredientes e instrucciones |
| 📚 Referencia (pública) | |
get_food_categories | Obtén categorías de alimentos |
get_food_sub_categories | Obtén subcategorías de alimentos |
get_brands | Obtén marcas de alimentos |
get_recipe_types | Obtén tipos de recetas |
| 📝 Diario de alimentos (autenticación de perfil) | |
get_food_entries | Obtén entradas del diario de alimentos para una fecha |
get_food_entries_month | Obtén resumen nutricional mensual (calorías y macronutrientes por día) |
create_food_entry | Añade una entrada al diario de alimentos |
edit_food_entry | Edita una entrada del diario de alimentos |
delete_food_entry | Elimina una entrada del diario de alimentos |
copy_food_entries | Copia entradas de una fecha a otra |
copy_saved_meal_entries | Copia una comida guardada a una fecha |
| ⭐ Favoritos (autenticación de perfil) | |
get_favorite_foods | Obtén alimentos favoritos |
delete_favorite_food | Elimina un alimento de los favoritos |
get_most_eaten_foods | Obtén los alimentos más consumidos |
get_recently_eaten_foods | Obtén alimentos consumidos recientemente |
get_favorite_recipes | Obtén recetas favoritas |
add_favorite_recipe | Añade una receta a los favoritos |
delete_favorite_recipe | Elimina una receta de los favoritos |
| 🍽️ Comidas guardadas (autenticación de perfil) | |
get_saved_meals | Obtén comidas guardadas |
create_saved_meal | Crea una comida guardada |
edit_saved_meal | Edita una comida guardada |
delete_saved_meal | Elimina una comida guardada |
get_saved_meal_items | Obtén los elementos de una comida guardada |
add_saved_meal_item | Añade un alimento a una comida guardada |
edit_saved_meal_item | Edita un elemento de comida guardada |
delete_saved_meal_item | Elimina un elemento de una comida guardada |
| ⚖️ Peso (autenticación de perfil) | |
update_weight | Registra el peso de una fecha |
get_weight_month | Obtén el historial de peso de un mes |
| 🏃♂️ Ejercicio (autenticación de perfil) | |
get_exercises | Obtén tipos de ejercicio |
edit_exercise_entries | Cambia el tiempo de ejercicio entre actividades |
get_exercise_entries_month | Obtén datos de ejercicio de un mes |
save_exercise_template | Guarda una plantilla de ejercicio para días laborables |
| 👤 Perfil (autenticación de perfil) | |
get_profile | Obtén información del perfil del usuario |
create_food | Crea 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
- Clona el repositorio
npm install- Copia
.env.examplea.envy completa tus credenciales npm run devpara 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.