DietBox MCP
An MCP server for nutritionists to manage patients, prescriptions, anthropometry, and meal plans, integrating with Claude, Cursor, and other AI agents.
README
DietBox
DietBox para Claude, Cursor e agentes de IA
Gestão de pacientes, prescrições, antropometria, agenda, chat e diário alimentar para nutricionistas.
- 📊 36 ferramentas
- ✏️ Leitura e escrita
- 💬 Funciona com qualquer cliente MCP: Claude Desktop, Cursor, VS Code, Cline, Continue
- 🔑 Login via magic-link (sem senha)
English version · Documentação completa · Skill pra agentes
Instalar em 1 clique
Claude (Web e Desktop)
A Anthropic unificou a instalação de MCPs em claude.ai/customize/connectors. O mesmo link serve pra Claude Web e Claude Desktop (basta estar logado):
Manual (se o deeplink não abrir): claude.ai/customize/connectors → + → Adicionar conector personalizado → cole Nome DietBox e URL https://api.mcp.ai/p_dietbox.
Cursor
VS Code (Copilot Chat)
ChatGPT, Manus, OpenClaw e mais 40+ clientes
Funciona em qualquer cliente MCP que suporte MCP over HTTP. A URL do servidor é sempre:
https://api.mcp.ai/p_dietbox
Detalhes por cliente: INSTALL.md.
Exemplos de uso
Mostre minha agenda de hoje e os pacientes confirmados
Crie uma anamnese pra novo paciente João Silva
Resuma o financeiro do mês e transações pendentes
36 ferramentas disponíveis
| Tool | Descrição |
|---|---|
dietbox_list_accounts |
List all Dietbox accounts linked to this install. Returns each account's id, email, label, and an "is_default" flag (true when only one is linked — no need to pass account in other tools). When multiple accounts are linked, every other dietbox_* tool accepts an optional account parameter; pass id, email, or label (full or partial). |
dietbox_get_profile |
Get the nutritionist's Dietbox profile (perfil): name, email, subscription plan, features. |
dietbox_get_nutritionist |
Get the nutritionist's professional profile in Dietbox: CRN, specialties, signature, subscription details. |
dietbox_patient_list |
Read patients in Dietbox. Actions: list (paginated, search by name), get (full detail). [Flattened action: list] Bulk support: accepts patient_ids for batched execution. |
dietbox_patient_get |
Read patients in Dietbox. Actions: list (paginated, search by name), get (full detail). [Flattened action: get] Bulk support: accepts patient_ids for batched execution. |
dietbox_patient_write_create |
Create or update patients in Dietbox. Actions: create (Name required, uses POST), update (partial fields, uses PATCH — no need to send all fields). Gender: Masculino or Feminino (converted to boolean for the API). Observation field for notes. Phone / MobilePhone são normalizados automaticamente para E.164 em create e update (o endpoint update/PATCH /patients rejeita HTTP 400 "'Body Mobile Phone Value' is not in format 'E.164'" quando recebe número sem prefixo internacional). Envie "67991234567", "(67) 99123-4567" ou "+5567991234567" indistintamente — o adapter ajusta para "+5567991234567" antes de chamar a API. Para números não-brasileiros, envie já com "+{código}". For destructive removal use dietbox_patient_delete. [Flattened action: create] Bulk support: accepts patient_ids for batched execution. |
dietbox_patient_write_update |
Create or update patients in Dietbox. Actions: create (Name required, uses POST), update (partial fields, uses PATCH — no need to send all fields). Gender: Masculino or Feminino (converted to boolean for the API). Observation field for notes. Phone / MobilePhone são normalizados automaticamente para E.164 em create e update (o endpoint update/PATCH /patients rejeita HTTP 400 "'Body Mobile Phone Value' is not in format 'E.164'" quando recebe número sem prefixo internacional). Envie "67991234567", "(67) 99123-4567" ou "+5567991234567" indistintamente — o adapter ajusta para "+5567991234567" antes de chamar a API. Para números não-brasileiros, envie já com "+{código}". For destructive removal use dietbox_patient_delete. [Flattened action: update] Bulk support: accepts patient_ids for batched execution. |
dietbox_patient_delete |
Permanently delete a patient from Dietbox. Irreversible. Bulk support: accepts patient_ids for batched execution. |
dietbox_prontuario |
Get the clinical record (prontuario) for a Dietbox patient: medical history, notes. Bulk support: accepts patient_ids for batched execution. |
dietbox_prontuario_write |
Update the clinical record (prontuario) for a Dietbox patient. Pass the text content directly (HTML supported). Returns 204 on success. Bulk support: accepts patient_ids for batched execution. |
dietbox_anamnese_list |
Read anamnesis (health history questionnaire) records in Dietbox. Actions: list (paginated), get (by ID), get_latest (most recent for patient). [Flattened action: list] Bulk support: accepts patient_ids, anamnesis_ids for batched execution. |
dietbox_anamnese_get |
Read anamnesis (health history questionnaire) records in Dietbox. Actions: list (paginated), get (by ID), get_latest (most recent for patient). [Flattened action: get] Bulk support: accepts patient_ids, anamnesis_ids for batched execution. |
dietbox_anamnese_get_latest |
Read anamnesis (health history questionnaire) records in Dietbox. Actions: list (paginated), get (by ID), get_latest (most recent for patient). [Flattened action: get_latest] Bulk support: accepts patient_ids, anamnesis_ids for batched execution. |
dietbox_anamnese_write_create |
Create or update an anamnesis (health history questionnaire) in Dietbox. Actions: - create: cria nova anamnese. Obrigatório: patient_id. Opcional: descricao, texto_livre (HTML), tipo (1=completa default, 2=simplificada), data (ISO), overrides (map com qualquer campo extra: fuma, diabetes, medicamentos, alergias, ...). - update: atualiza uma anamnese existente. Obrigatório: anamnesis_id. Demais campos sobrescrevem os atuais. Retorna { id } da anamnese criada/atualizada. [Flattened action: create] Bulk support: accepts patient_ids, anamnesis_ids for batched execution. |
dietbox_anamnese_write_update |
Create or update an anamnesis (health history questionnaire) in Dietbox. Actions: - create: cria nova anamnese. Obrigatório: patient_id. Opcional: descricao, texto_livre (HTML), tipo (1=completa default, 2=simplificada), data (ISO), overrides (map com qualquer campo extra: fuma, diabetes, medicamentos, alergias, ...). - update: atualiza uma anamnese existente. Obrigatório: anamnesis_id. Demais campos sobrescrevem os atuais. Retorna { id } da anamnese criada/atualizada. [Flattened action: update] Bulk support: accepts patient_ids, anamnesis_ids for batched execution. |
dietbox_anamnese_delete |
Remove uma anamnese do Dietbox. Ação irreversível. Bulk support: accepts anamnesis_ids, patient_ids for batched execution. |
dietbox_antropometria_list |
Read anthropometric evaluations in Dietbox (weight, height, BMI, body composition). Actions: list (paginated, filter by tipo), get (by ID), get_latest (current measurements). [Flattened action: list] Bulk support: accepts patient_ids, anthropometry_ids for batched execution. |
dietbox_antropometria_get |
Read anthropometric evaluations in Dietbox (weight, height, BMI, body composition). Actions: list (paginated, filter by tipo), get (by ID), get_latest (current measurements). [Flattened action: get] Bulk support: accepts patient_ids, anthropometry_ids for batched execution. |
dietbox_antropometria_get_latest |
Read anthropometric evaluations in Dietbox (weight, height, BMI, body composition). Actions: list (paginated, filter by tipo), get (by ID), get_latest (current measurements). [Flattened action: get_latest] Bulk support: accepts patient_ids, anthropometry_ids for batched execution. |
dietbox_antropometria_write |
Create a new anthropometric evaluation in Dietbox. Required: patient_id, weight (kg, 0.1-1000), height (meters, 0.1-3.0). Type: 1=physical evaluation (default), 4=bioimpedance. All measurement fields (circumferences, skinfolds, bioimpedance) default to null. Bulk support: accepts patient_ids for batched execution. |
dietbox_antropometria_delete |
Delete an anthropometric evaluation from Dietbox. This is irreversible. Bulk support: accepts anthropometry_ids for batched execution. |
dietbox_meal_plan |
Get the active meal plan (plano alimentar) for a patient in Dietbox. Returns the full list of meals with foods, portions, schedule, and day-of-week assignments. Each meal has: title (e.g. "Café da manhã"), time, text (food items with portions), observacao, and weekday flags. NOTE: This is different from "prescriptions" — prescriptions in Dietbox are supplement/herbal medicine prescriptions. Use this tool for food/meal plans. READ-ONLY (UPSTREAM LIMITATION): A API v2 do Dietbox não expõe endpoint público de criação/edição de plano alimentar — a interface web usa rotas MVC internas (dietbox.me/PlanoAlimentar/...) que exigem cookies de sessão do browser, inacessíveis programaticamente. Por isso não existe dietbox_meal_plan_write. Para criar/editar planos, use a UI web do Dietbox, ou considere webdiet_prescription_write (WebDiet) quando for opção. Caso a Dietbox venha a expor esse endpoint na API, o adapter será atualizado. Bulk support: accepts patient_ids for batched execution. |
dietbox_prescription_list |
Read supplement/herbal medicine prescriptions in Dietbox (NOT meal plans — use dietbox_meal_plan for food plans). Actions: list (by patient), get (full detail by ID), list_models (reusable templates). [Flattened action: list] Bulk support: accepts patient_ids, prescription_ids for batched execution. |
dietbox_prescription_get |
Read supplement/herbal medicine prescriptions in Dietbox (NOT meal plans — use dietbox_meal_plan for food plans). Actions: list (by patient), get (full detail by ID), list_models (reusable templates). [Flattened action: get] Bulk support: accepts patient_ids, prescription_ids for batched execution. |
dietbox_prescription_list_models |
Read supplement/herbal medicine prescriptions in Dietbox (NOT meal plans — use dietbox_meal_plan for food plans). Actions: list (by patient), get (full detail by ID), list_models (reusable templates). [Flattened action: list_models] Bulk support: accepts patient_ids, prescription_ids for batched execution. |
dietbox_prescription_write |
Create a new supplement/herbal medicine prescription in Dietbox. For meal plans, use dietbox_meal_plan (read-only — Dietbox não expõe escrita via API). Required: title (nome da prescrição) and patient_id. Without title the API returns 400 "'Title' deve ser informado / 'Title' não pode ser nulo". "data" is a JSON string with the remaining prescription payload (Items, Orientations etc.); title and patient_id são mesclados automaticamente antes do POST. Bulk support: accepts patient_ids for batched execution. |
dietbox_agenda_list |
Read schedule/agenda in Dietbox. Actions: list (filter by date range/patient), summary (today's overview). [Flattened action: list] Bulk support: accepts patient_ids for batched execution. |
dietbox_agenda_summary |
Read schedule/agenda in Dietbox. Actions: list (filter by date range/patient), summary (today's overview). [Flattened action: summary] Bulk support: accepts patient_ids for batched execution. |
dietbox_agenda_write |
Create a new event/appointment in the Dietbox agenda. Requires Start and End as ISO datetime strings. Timezone defaults to America/Sao_Paulo (IANA format). Valid Tipo values: "consulta" (appointment), "retorno" (follow-up), "bloqueio" (block). Bulk support: accepts patient_ids for batched execution. |
dietbox_chat_list |
Read chat conversations in Dietbox. Actions: list (conversations, filter by patient/unread), messages (message history for patient). [Flattened action: list] Bulk support: accepts patient_ids for batched execution. |
dietbox_chat_messages |
Read chat conversations in Dietbox. Actions: list (conversations, filter by patient/unread), messages (message history for patient). [Flattened action: messages] Bulk support: accepts patient_ids for batched execution. |
dietbox_chat_write |
Send a chat message to a patient in Dietbox. Pass message data as a JSON string. |
dietbox_list_goals |
List nutrition/health goals for a Dietbox patient: weight targets, habit goals, custom objectives. Bulk support: accepts patient_ids for batched execution. |
dietbox_get_goal_progress |
Get goal progress for a Dietbox patient: completion percentages, streaks, recent activity. Bulk support: accepts patient_ids for batched execution. |
dietbox_list_diario |
List food diary entries for a Dietbox patient on a specific date. Shows what the patient ate, meal photos, comments. Bulk support: accepts patient_ids for batched execution. |
dietbox_list_finance_transactions |
List financial transactions in Dietbox: payments, receivables, filtered by date and status. |
Detalhe de cada tool: docs/ferramentas.md
Preços
Grátis.
Privacidade & LGPD
- Sub-processadores: o LLM host que você escolher (Claude, ChatGPT, Cursor, agente próprio). Lista completa em docs/privacidade-lgpd.md.
- Os dados retornados pelas tools são enviados ao LLM host que você escolher, sub-processador fora do nosso controle. Recomendamos planos com opt-out de treinamento.
Perguntas frequentes
O servidor é open source? O servidor é proprietário (hosted). Este repositório é o wrapper público com manifestos, docs e skills — tudo MIT.
Posso usar com agente próprio (não Claude/Cursor)?
Sim — qualquer cliente que suporte MCP over HTTP. URL: https://api.mcp.ai/p_dietbox.
Suporte
- 📧 dietbox@mcp.ai
- 🐛 GitHub Issues
- 📄 docs/
Licença
MIT — veja LICENSE. O servidor MCP em api.mcp.ai/p_dietbox é proprietário (hosted); este repositório (manifestos, docs, skills) é MIT.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.