Canada's Food Guide

Una plataforma de análisis nutricional que integra recetas de la Guía Alimentaria de Canadá con las bases de datos oficiales de nutrición de Health Canada.

Documentación

🍲 Guía Alimentaria de Canadá - Servidor MCP

Python 3.10+ License: MIT MCP

📝 Descripción

El Servidor MCP FoodGuide agrupa tres potentes recursos de Salud Canadá en un solo conjunto de herramientas para un análisis nutricional integral:

EjemploVideo
Encuentra recetas temáticas para una semana themed-recipe-spedup
Sugiere recetas a partir de una imagen de tus compras from-image-to-show-recipes-spedup
Calcula tu ingesta estimada de macros y requerimientos energéticos calculate-eer-spedup
Calcula macros para una recetacalculate-macros-spedup

Dos modos de configuración:

ModoHerramientas disponibles¿BD/Almacenamiento?Ideal para
HTTP (remoto/autoalojado)Herramientas de extracción y cálculo (24 herramientas)NoLa mayoría de usuarios -- consultas nutricionales, búsqueda de recetas, cálculos EER/DRI
stdio (completo)Todas las herramientas incl. SQLite (46 herramientas)SíUsuarios avanzados -- análisis de macros de recetas, favoritos, perfiles de usuario

¡Consulta IMPLEMENTATIONS.MD si deseas contribuir o colaborar! ¡Siempre buscamos sugerencias!

Puedes usar esta hoja de cálculo de Google para verificar los cálculos EER y CNF mostrados en los videos promocionales del repositorio actual.

📑 Tabla de Contenidos

📥 Instalación

  1. Requisitos previos:

  2. Clona el repositorio:

    git clone https://github.com/Aryan-Jhaveri/mcp-foodguidecanada
    cd mcp-foodguidecanada
    
  3. Instala las dependencias:

    pip3 install -r requirements.txt
    
  4. Encuentra tu ruta de Python (necesaria para la configuración del cliente):

    which python3
    
  5. Obtén la ruta absoluta del proyecto:

    pwd
    

Modo HTTP -- extracción y cálculo, sin BD (24 herramientas)

Inicia el servidor en una terminal y déjalo en ejecución:

python3 src/server.py --transport http --port 8000
# Server running at http://0.0.0.0:8000/mcp

Luego configura tu cliente para conectarse a http://localhost:8000/mcp -- consulta Configuración por Cliente a continuación.

Modo completo -- todas las herramientas incl. SQLite (46 herramientas)

Ejecuta vía stdio -- no se necesita un proceso de servidor separado. Configura tu cliente con los fragmentos stdio en Configuración por Cliente.


🚀 Configuración por Cliente

Modo¿Herramientas BD?Herramientas disponibles
HTTP (inicia el servidor primero)NoExtracción y cálculo (24 herramientas)
stdio (completo)SíTodas las herramientas incl. SQLite (46 herramientas)

Modo HTTP -- extracción y cálculo (sin BD)

Antes de configurar tu cliente: inicia el servidor en una terminal separada:

python3 src/server.py --transport http --port 8000

Mantenlo en ejecución mientras usas tu cliente.

La mayoría de los clientes usan mcp-proxy para conectar stdio a HTTP. Claude Code se conecta de forma nativa.

Claude Desktop

Navega a: Claude Desktop → Configuración (⌘,) → Desarrollador → Editar Configuración

{
  "mcpServers": {
    "FoodGuideSousChef": {
      "command": "uvx",
      "args": ["mcp-proxy", "--transport", "streamablehttp", "http://localhost:8000/mcp"]
    }
  }
}

Reinicia Claude Desktop después de guardar.

Claude Code

claude mcp add FoodGuideSousChef --transport http http://localhost:8000/mcp

Cursor

En .cursor/mcp.json (proyecto) o ~/.cursor/mcp.json (global):

{
  "mcpServers": {
    "FoodGuideSousChef": {
      "command": "uvx",
      "args": ["mcp-proxy", "--transport", "streamablehttp", "http://localhost:8000/mcp"]
    }
  }
}

VS Code (GitHub Copilot)

En .vscode/mcp.json:

{
  "servers": {
    "FoodGuideSousChef": {
      "type": "stdio",
      "command": "uvx",
      "args": ["mcp-proxy", "--transport", "streamablehttp", "http://localhost:8000/mcp"]
    }
  }
}

Modo completo -- todas las herramientas incl. BD SQLite

No se necesita un proceso de servidor separado. El cliente inicia el servidor directamente vía stdio.

Reemplaza <python-path> y <project-path> con tus rutas reales de los pasos de Instalación.

Rutas comunes de Python por sistema:

  • Homebrew (Mac): /opt/homebrew/bin/python3
  • Python del sistema (Mac): /usr/bin/python3
  • Anaconda: /opt/anaconda3/bin/python3
  • Linux: /usr/bin/python3

Claude Desktop

Navega a: Claude Desktop → Configuración (⌘,) → Desarrollador → Editar Configuración

{
  "mcpServers": {
    "FoodGuideSousChef": {
      "command": "<python-path>",
      "args": ["<project-path>/src/server.py"],
      "cwd": "<project-path>"
    }
  }
}

Reinicia Claude Desktop después de guardar.

Claude Code

claude mcp add FoodGuideSousChef -- <python-path> <project-path>/src/server.py

Cursor

En .cursor/mcp.json (proyecto) o ~/.cursor/mcp.json (global):

{
  "mcpServers": {
    "FoodGuideSousChef": {
      "command": "<python-path>",
      "args": ["<project-path>/src/server.py"],
      "cwd": "<project-path>"
    }
  }
}

VS Code (GitHub Copilot)

En .vscode/mcp.json:

{
  "servers": {
    "FoodGuideSousChef": {
      "type": "stdio",
      "command": "<python-path>",
      "args": ["<project-path>/src/server.py"],
      "cwd": "<project-path>"
    }
  }
}

Banderas opcionales

# HTTP mode with custom port
python3 src/server.py --transport http --port 9000 --host 0.0.0.0

# Environment variable alternative (for deployment)
MCP_TRANSPORT=http PORT=8000 python3 src/server.py

Solución de problemas

  • Si el servidor no aparece, revisa los registros de Claude Desktop para ver mensajes de error
  • Verifica que Python 3.10+ esté instalado: python3 --version
  • Para el modo HTTP, verifica que el servidor esté en ejecución: curl http://localhost:8000/mcp/