FatSecret

Servidor que conecta Claude/Cursor à API da Plataforma FatSecret. Pesquise alimentos, acompanhe sua dieta, gerencie receitas e monitore o peso diretamente do seu assistente de IA.

Documentação

Servidor MCP FatSecret FatSecret Logo

[!IMPORTANT] Este não é um servidor MCP oficial da FatSecret. Ele usa a API da Plataforma FatSecret que requer uma conta de desenvolvedor gratuita.

Um servidor MCP (Model Context Protocol) que conecta Claude/Cursor à API da Plataforma FatSecret. Pesquise alimentos, acompanhe sua dieta, gerencie receitas e monitore o peso diretamente do seu assistente de IA.

Disponível no NPM: npx fatsecret-mcp | Extensão para Claude Desktop: fatsecret-mcp.mcpb

✨ Recursos

  • 🔐 Autenticação — Configuração interativa de credenciais e autorização OAuth
  • 🔍 Pesquisa de Alimentos — Pesquise a extensa base de dados de alimentos da FatSecret com dados nutricionais detalhados
  • 📷 Consulta por Código de Barras — Encontre alimentos pelo código de barras GTIN-13
  • 🍳 Pesquisa de Receitas — Navegue e filtre receitas por calorias, macronutrientes e tempo de preparo
  • 📝 Diário Alimentar — Adicione, edite, copie e exclua entradas do diário alimentar
  • 🍽️ Refeições Salvas — Crie e gerencie modelos de refeições reutilizáveis
  • ⚖️ Acompanhamento de Peso — Registre e visualize o histórico de peso
  • 🏃‍♂️ Acompanhamento de Exercícios — Veja exercícios e gerencie entradas de atividades
  • Favoritos — Gerencie alimentos e receitas favoritos

🚀 Início Rápido

Adicione à configuração do seu cliente MCP:

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

É isso! No primeiro uso, a IA irá guiá-lo pela configuração:

  1. check_auth_status — detecta credenciais ausentes e informa o que fazer
  2. setup_credentials — você fornece suas chaves de API (salvas em ~/.fatsecret-mcp/config.json)
  3. start_authcomplete_auth — autorize sua conta FatSecret para ferramentas de diário/peso

Alternativamente, você pode passar as credenciais como variáveis de ambiente:

{
  "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"
      }
    }
  }
}

🔑 Onde Obter Credenciais

  1. Crie uma conta gratuita em platform.fatsecret.com
  2. Navegue até Minha Conta → Chaves de API
  3. Você verá três valores:
    • Client ID (usado para OAuth 2.0 e OAuth 1.0)
    • Client Secret (OAuth 2.0 - para pesquisa pública de alimentos/receitas)
    • Consumer Secret (OAuth 1.0 - para acesso ao perfil do usuário/diário)

📖 Guia passo a passo: Começando com a API FatSecret

Claude Desktop (Extensão)

Baixe e abra fatsecret-mcp.mcpb com o Claude Desktop. Você será solicitado a inserir suas credenciais FatSecret — os segredos são armazenados com segurança no chaveiro do sistema operacional.

Veja Construindo Extensões de Desktop com MCPB para mais detalhes.

Claude Desktop (Manual)

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

Claude Code (CLI)

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

Ou com variáveis de ambiente:

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

Verifique com claude mcp list.

Cursor

  • Interface de ConfiguraçõesSettings → MCP → + Add new MCP server, depois preencha o comando, argumentos e env
  • Configuração do projeto — adicione JSON a .cursor/mcp.json na raiz do seu projeto
  • Configuração global — adicione JSON a ~/.cursor/mcp.json

🛠️ Ferramentas Disponíveis

FerramentaDescrição
🔐 Configuração e Autenticação
check_auth_statusVerifica se as credenciais e a autenticação do perfil estão configuradas. Chame isso primeiro.
setup_credentialsSalva as credenciais da API FatSecret na configuração persistente
start_authInicia a autorização OAuth 1.0 — retorna URL para o usuário visitar
complete_authConclui o OAuth com o PIN de verificação da página de autorização
🔍 Pesquisa de Alimentos (público)
search_foodsPesquisa a base de dados de alimentos
get_foodObtém informações nutricionais detalhadas de um alimento
find_food_by_barcodeEncontra alimento pelo código de barras GTIN-13
autocomplete_foodsObtém sugestões de autocompletar para pesquisa
🍳 Receitas (público)
search_recipesPesquisa receitas com filtros
get_recipeObtém detalhes da receita com ingredientes e instruções
📚 Referência (público)
get_food_categoriesObtém categorias de alimentos
get_food_sub_categoriesObtém subcategorias de alimentos
get_brandsObtém marcas de alimentos
get_recipe_typesObtém tipos de receita
📝 Diário Alimentar (autenticação de perfil)
get_food_entriesObtém entradas do diário alimentar para uma data
get_food_entries_monthObtém resumo nutricional mensal (calorias e macronutrientes por dia)
create_food_entryAdiciona uma entrada no diário alimentar
edit_food_entryEdita uma entrada do diário alimentar
delete_food_entryExclui uma entrada do diário alimentar
copy_food_entriesCopia entradas de uma data para outra
copy_saved_meal_entriesCopia uma refeição salva para uma data
⭐ Favoritos (autenticação de perfil)
get_favorite_foodsObtém alimentos favoritos
delete_favorite_foodRemove alimento dos favoritos
get_most_eaten_foodsObtém alimentos mais consumidos
get_recently_eaten_foodsObtém alimentos consumidos recentemente
get_favorite_recipesObtém receitas favoritas
add_favorite_recipeAdiciona receita aos favoritos
delete_favorite_recipeRemove receita dos favoritos
🍽️ Refeições Salvas (autenticação de perfil)
get_saved_mealsObtém refeições salvas
create_saved_mealCria uma refeição salva
edit_saved_mealEdita uma refeição salva
delete_saved_mealExclui uma refeição salva
get_saved_meal_itemsObtém itens de uma refeição salva
add_saved_meal_itemAdiciona alimento a uma refeição salva
edit_saved_meal_itemEdita item de refeição salva
delete_saved_meal_itemRemove item de refeição salva
⚖️ Peso (autenticação de perfil)
update_weightRegistra peso para uma data
get_weight_monthObtém histórico de peso de um mês
🏃‍♂️ Exercício (autenticação de perfil)
get_exercisesObtém tipos de exercício
edit_exercise_entriesTransfere tempo de exercício entre atividades
get_exercise_entries_monthObtém dados de exercício de um mês
save_exercise_templateSalva modelo de exercício para dias da semana
👤 Perfil (autenticação de perfil)
get_profileObtém informações do perfil do usuário
create_foodCria um alimento personalizado (Premier)

Referência da API: Coleção Postman do FatSecret

🧪 Teste de Conexão

npx fatsecret-mcp

Ou com variáveis de ambiente:

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

📋 Requisitos

  • Node.js 18+
  • Conta na API da Plataforma FatSecret (platform.fatsecret.com)
  • Cliente compatível com MCP (Claude Desktop, Cursor, etc.)

🔧 Desenvolvimento

  1. Clone o repositório
  2. npm install
  3. Copie .env.example para .env e preencha suas credenciais
  4. npm run dev para executar em modo de desenvolvimento

Depuração com o MCP Inspector:

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

📄 Licença

Licença MIT - veja o arquivo LICENSE para detalhes.