Skip to main content
Glama

Mealie MCP Server

Сервер протокола контекста модели (MCP), готовый к использованию сообществом, для Mealie.

Он предоставляет MCP-клиентам доступ к рецептам, планам питания, спискам покупок, продуктам, единицам измерения, тегам, категориям и инструментам для работы с рецептами в Mealie через потоковый HTTP или stdio.

Возможности

  • Поиск, создание, частичное обновление (patch), обновление, дублирование рецептов, импорт по URL/HTML/ZIP/изображению, работа с ресурсами, изображениями, событиями временной шкалы, комментариями, экспортом, предложениями и обновлениями последних приготовленных блюд

  • Записи в планах питания домохозяйств, блюда на сегодня, случайные записи блюд и правила планирования питания

  • Списки покупок домохозяйств Mealie v3, CRUD-операции с элементами покупок, массовые изменения элементов, операции «рецепт в список» и настройки меток

  • Основные данные о продуктах и единицах измерения, включая псевдонимы, названия во множественном числе, объединение дубликатов продуктов и единиц измерения

  • Теги, категории, инструменты/кухонная утварь для рецептов, кулинарные книги, комментарии, общие ссылки, парсер, медиафайлы, пользователи, группы, домохозяйства, конечные точки для исследования (explore) и административные конечные точки

  • Развертывание с приоритетом Docker, наличие конечной точки проверки работоспособности (health) и запуск контейнера от пользователя без прав root

Related MCP server: Mealie MCP Server

Требования

  • Mealie v3.x

  • API-токен Mealie

  • Docker, Docker Compose или Python 3.12+

  • MCP-клиент, поддерживающий потоковый HTTP или stdio

Быстрый старт с Docker

docker run -d \
  --name mealie-mcp \
  --restart unless-stopped \
  -p 8080:8080 \
  --add-host=host.docker.internal:host-gateway \
  -e MEALIE_BASE_URL=http://your-mealie-instance:9000 \
  -e MEALIE_API_TOKEN=your-mealie-api-token \
  ghcr.io/nikopol666/mealie-mcp:latest

Проверка работоспособности:

curl http://localhost:8080/health

MCP-конечная точка:

http://localhost:8080/mcp

Docker Compose

Скопируйте пример файла окружения, укажите свой URL Mealie и API-токен, затем запустите службу:

cp .env.example .env
docker compose up -d

Пример для стандартной конфигурации с одной службой см. в docker-compose.yml.

Для подключения к существующей сети Docker с Mealie см. docker-compose.integration.yml.

services:
  mealie-mcp:
    image: ghcr.io/nikopol666/mealie-mcp:latest
    restart: unless-stopped
    ports:
      - "${MCP_HTTP_PORT:-8080}:8080"
    environment:
      MEALIE_BASE_URL: ${MEALIE_BASE_URL:?Set MEALIE_BASE_URL in .env}
      MEALIE_API_TOKEN: ${MEALIE_API_TOKEN:?Set MEALIE_API_TOKEN in .env}

Конфигурация

Скопируйте .env.example в .env и укажите свой URL Mealie и API-токен.

Переменная

Обязательно

По умолчанию

Описание

MEALIE_BASE_URL

Да

нет

Базовый URL вашего API Mealie. Используйте http://host.docker.internal:9000 для службы Mealie на хосте или http://mealie:9000 в общей сети Docker.

MEALIE_API_TOKEN

Да

нет

API-токен Mealie из настроек профиля пользователя.

MCP_HTTP_PORT

Нет

8080

Порт хоста, используемый в примерах файлов Docker Compose.

MCP_SERVER_NAME

Нет

Mealie MCP Server

Отображаемое имя, передаваемое MCP-клиентам.

MCP_HOST

Нет

0.0.0.0

Хост/интерфейс для потокового HTTP.

MCP_PORT

Нет

8080

Внутренний порт сервера.

LOG_LEVEL

Нет

INFO

Уровень логирования Python.

REQUEST_TIMEOUT

Нет

30

Тайм-аут запроса к API Mealie в секундах.

MAX_RETRIES

Нет

3

Количество попыток повтора при временных сбоях GET-запросов и проверках при запуске.

Настройка MCP-клиента

Потоковый HTTP

Используйте эту конечную точку, если ваш клиент поддерживает потоковый HTTP:

http://localhost:8080/mcp

Внутри той же сети Docker:

http://mealie-mcp:8080/mcp

Stdio

Для клиентов, которые запускают MCP-серверы как локальные процессы:

git clone https://github.com/nikopol666/mealie-mcp.git
cd mealie-mcp
python -m venv .venv
. .venv/bin/activate
pip install -r requirements.txt
export MEALIE_BASE_URL=http://localhost:9000
export MEALIE_API_TOKEN=your-mealie-api-token
python src/main.py --transport stdio

Охват инструментов

См. docs/TOOL_REFERENCE.md для получения полного списка инструментов и примечаний к полезной нагрузке.

Основные группы:

  • Здоровье (Health)

  • Рецепты

  • Планы питания

  • Списки покупок

  • Продукты и единицы измерения

  • Теги, категории и инструменты для рецептов

  • Кулинарные книги, комментарии, общие ссылки, парсер, медиафайлы, пользователи, группы, домохозяйства, инструменты для исследования и администрирования

Разработка

git clone https://github.com/nikopol666/mealie-mcp.git
cd mealie-mcp
python -m venv .venv
. .venv/bin/activate
pip install -r requirements-dev.txt
PYTHONPATH=src MEALIE_API_TOKEN=test-token pytest -q

Дополнительная проверка работоспособности (только чтение) на реальном экземпляре Mealie:

export MEALIE_LIVE_SMOKE=1
export MEALIE_BASE_URL=http://localhost:9000
export MEALIE_API_TOKEN=your-mealie-api-token
PYTHONPATH=src pytest tests/test_live_smoke.py -q

Запуск с потоковым HTTP:

export MEALIE_BASE_URL=http://localhost:9000
export MEALIE_API_TOKEN=your-mealie-api-token
python src/main.py --transport streamable-http

Сборка Docker-образа:

docker build -t mealie-mcp:local .

Документация

Примечания по безопасности

  • Относитесь к MEALIE_API_TOKEN как к секретным данным.

  • Запускайте контейнер только в доверенных сетях или за аутентификацией.

  • MCP-сервер может создавать, обновлять и удалять данные Mealie, используя привилегии настроенного токена Mealie.

  • По возможности используйте выделенный API-токен Mealie для этой службы. См. SECURITY.md для получения рекомендаций по раскрытию информации и развертыванию.

Совместимость

Этот проект ориентирован на текущие API Mealie v3. Со временем Mealie перемещал некоторые ресурсы между областями групп и домохозяйств; если инструмент перестает работать после обновления Mealie, сравните неработающую конечную точку с /openapi.json вашего экземпляра.

Лицензия

MIT

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    A read-only MCP server for Mealie that enables searching recipes, managing shopping lists, meal plans, and retrieving household/instance info via tools. Supports secure per-user authentication and multiple Mealie instances.
    MIT