Command Palette

Search for a command to run...

UnylyUnyly
Весь каталог

Weight

БесплатноНе проверен

A personal calorie and protein counter MCP server for use inside claude.ai, enabling users to log meals from photos or text, track weight, and view an interacti

GitHubEmbed

Описание

A personal calorie and protein counter MCP server for use inside claude.ai, enabling users to log meals from photos or text, track weight, and view an interactive dashboard.

README

A personal calorie & protein counter delivered as an MCP server for use inside claude.ai. You log meals from photos or text in a normal Claude chat; this server counts them, tracks weight, and renders an interactive dashboard (weight graph + recently eaten) right in the conversation.

Single-user, self-hosted, by design. See SPEC.md for the rationale.

How it works

  • MCP server (Streamable HTTP) exposes tools, a prompt, and an MCP Apps dashboard UI to claude.ai.
  • In-process OAuth gate: claude.ai drives the full OAuth 2.1 + PKCE + Dynamic Client Registration flow, but the only human step is entering a single shared password (configured in .env). There are no user accounts.
  • SQLite stores weights and food logs — one file under data/.

Tools

Tool What it does
log_food Record an eaten item (kcal, protein, …), numbered per day; re-logging a meal number overwrites it (edits).
delete_food Remove one of today's meals by its number.
record_weight Store a body-weight measurement.
lookup_nutrition Query public nutrition databases (Open Food Facts, optional USDA).
daily_progress Today's intake vs. your goal.
set_goals Change the daily calorie/protein targets and floor/ceiling mode.
show_dashboard Renders the dashboard inline as an MCP Apps panel (weight graph + recent meals + today's progress).

Configure

Copy .env.example to .env and set at least WEIGHT_MCP_PASSWORD and WEIGHT_MCP_PUBLIC_BASE_URL. Nutrition sources default to Open Food Facts, filtered to Germany; set WEIGHT_MCP_* to change region or enable USDA.

Goals are not env config — set them from chat with set_goals (they persist in the database). Two modes: floor (eat at least the target — the default, for under-eaters) and ceiling (stay under — for weight loss). Until you set your own, the default is 2600 kcal / 150 g protein, floor.

Run

Local (dev):

uv sync
cp .env.example .env   # then edit
uv run weight-mcp

Docker (local build):

docker compose up --build

For a real deployment you need public HTTPS (claude.ai connects from Anthropic's cloud, not your device). Copy docker-compose.template.yml, put the server behind a TLS reverse proxy, and set WEIGHT_MCP_PUBLIC_BASE_URL to that origin.

Add to claude.ai

Customize → Connectors → "Add custom connector" (on Team/Enterprise: Organization settings → Connectors → Add → Custom → Web), paste your server's base URL (https://<your-host> — the MCP endpoint and OAuth live at the origin root, so there is no path to append). claude.ai opens the OAuth page; enter your password. Done — start a chat and tell Claude what you ate.

Develop

uv run ruff check .
uv run mypy
uv run pytest

from github.com/CommanderTvis/weight-mcp

Установка Weight

У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.

▸ github.com/CommanderTvis/weight-mcp

FAQ

Weight MCP бесплатный?

Да, Weight MCP бесплатный — установка в пару кликов через Unyly без оплаты.

Нужен ли API-ключ для Weight?

Нет, Weight работает без API-ключей и переменных окружения.

Weight — hosted или self-hosted?

Доступен hosted-вариант: Unyly запускает сервер в облаке, локальная установка не обязательна.

Как установить Weight в Claude Desktop, Claude Code или Cursor?

Открой Weight на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.

Похожие MCP

Compare Weight with

Не уверен что выбрать?

Найди свой стек за 60 секунд

Автор?

Embed-бейдж для README

Похожее

Все в категории ai