DietBox
Patient, prescription, anthropometry, scheduling, chat and food diary management for dietitians.
Should I use this
Quality & Safety
Findings (4)
- LOWin connect
- LOWin dietbox_antropometria_get_latest
- LOWin dietbox_prescription_list_models
- LOWin dietbox_list_finance_transactions
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"dietbox-mcp": {
"url": "https://api.mcp.ai/p_dietbox"
}
}
}Remote endpoints
https://api.mcp.ai/p_dietboxstreamable-httpWhat it can do
Tool inventory
Tools (42)
🟢dietbox_list_accounts(account)
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).
Input Schema
{
"type": "object",
"properties": {
"account": {
"type": "string"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢dietbox_get_profile(account)
Get the nutritionist's Dietbox profile (perfil): name, email, subscription plan, features.
Input Schema
{
"type": "object",
"properties": {
"account": {
"type": "string"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢dietbox_get_nutritionist(account)
Get the nutritionist's professional profile in Dietbox: CRN, specialties, signature, subscription details.
Input Schema
{
"type": "object",
"properties": {
"account": {
"type": "string"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢dietbox_patient_list(patient_id, search, skip, take, is_active, ...)
Read patients in Dietbox. Actions: list (paginated, search by name), get (full detail). [Flattened action: list] Bulk support: accepts patient_ids for batched execution.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"search": {
"default": "",
"type": "string"
},
"skip": {
"default": 0,
"type": "number"
},
"take": {
"default": 50,
"type": "number"
},
"is_active": {
"type": "boolean"
},
"order": {
"default": "",
"type": "string"
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢dietbox_patient_get(patient_id, search, skip, take, is_active, ...)
Read patients in Dietbox. Actions: list (paginated, search by name), get (full detail). [Flattened action: get] Bulk support: accepts patient_ids for batched execution.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"search": {
"default": "",
"type": "string"
},
"skip": {
"default": 0,
"type": "number"
},
"take": {
"default": 50,
"type": "number"
},
"is_active": {
"type": "boolean"
},
"order": {
"default": "",
"type": "string"
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡dietbox_patient_write_create(patient_id, Name, Email, Phone, MobilePhone, ...)
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. Endereço, dados civis e de acesso (Address, Number, Complement, Neighborhood, State, City, Cep, MaritalStatus, Occupancy, Expire) são suportados em create e update — use os mesmos nomes de campo retornados pelo dietbox_patient (get); o adapter mapeia internamente a divergência de nomes do endpoint de update. 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.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"Name": {
"type": "string"
},
"Email": {
"type": "string"
},
"Phone": {
"type": "string"
},
"MobilePhone": {
"type": "string"
},
"Birthday": {
"type": "string"
},
"Gender": {
"type": "string",
"enum": [
"Masculino",
"Feminino"
]
},
"Cpf": {
"type": "string"
},
"Observation": {
"type": "string"
},
"IsActive": {
"type": "boolean"
},
"MaritalStatus": {
"type": "number"
},
"Occupancy": {
"type": "string"
},
"Address": {
"type": "string"
},
"Number": {
"type": "string"
},
"Complement": {
"type": "string"
},
"Neighborhood": {
"type": "string"
},
"State": {
"type": "string"
},
"City": {
"type": "string"
},
"Cep": {
"type": "string"
},
"Expire": {
"type": "string"
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡dietbox_patient_write_update(patient_id, Name, Email, Phone, MobilePhone, ...)
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. Endereço, dados civis e de acesso (Address, Number, Complement, Neighborhood, State, City, Cep, MaritalStatus, Occupancy, Expire) são suportados em create e update — use os mesmos nomes de campo retornados pelo dietbox_patient (get); o adapter mapeia internamente a divergência de nomes do endpoint de update. 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.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"Name": {
"type": "string"
},
"Email": {
"type": "string"
},
"Phone": {
"type": "string"
},
"MobilePhone": {
"type": "string"
},
"Birthday": {
"type": "string"
},
"Gender": {
"type": "string",
"enum": [
"Masculino",
"Feminino"
]
},
"Cpf": {
"type": "string"
},
"Observation": {
"type": "string"
},
"IsActive": {
"type": "boolean"
},
"MaritalStatus": {
"type": "number"
},
"Occupancy": {
"type": "string"
},
"Address": {
"type": "string"
},
"Number": {
"type": "string"
},
"Complement": {
"type": "string"
},
"Neighborhood": {
"type": "string"
},
"State": {
"type": "string"
},
"City": {
"type": "string"
},
"Cep": {
"type": "string"
},
"Expire": {
"type": "string"
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴dietbox_patient_delete(patient_id, account, patient_ids)
Permanently delete a patient from Dietbox. Irreversible. Bulk support: accepts patient_ids for batched execution.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
}
},
"required": [
"patient_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢dietbox_prontuario(patient_id, account, patient_ids)
Get the clinical record (prontuario) for a Dietbox patient: medical history, notes. Bulk support: accepts patient_ids for batched execution.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
}
},
"required": [
"patient_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡dietbox_prontuario_write(patient_id, text, account, patient_ids)
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.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"text": {
"type": "string"
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
}
},
"required": [
"patient_id",
"text"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢dietbox_anamnese_list(patient_id, anamnesis_id, skip, take, search, ...)
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.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"anamnesis_id": {
"default": "",
"type": "string"
},
"skip": {
"default": 0,
"type": "number"
},
"take": {
"default": 50,
"type": "number"
},
"search": {
"default": "",
"type": "string"
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
},
"anamnesis_ids": {
"type": "array",
"items": {
"default": "",
"type": "string"
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢dietbox_anamnese_get(patient_id, anamnesis_id, skip, take, search, ...)
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.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"anamnesis_id": {
"default": "",
"type": "string"
},
"skip": {
"default": 0,
"type": "number"
},
"take": {
"default": 50,
"type": "number"
},
"search": {
"default": "",
"type": "string"
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
},
"anamnesis_ids": {
"type": "array",
"items": {
"default": "",
"type": "string"
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢dietbox_anamnese_get_latest(patient_id, anamnesis_id, skip, take, search, ...)
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.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"anamnesis_id": {
"default": "",
"type": "string"
},
"skip": {
"default": 0,
"type": "number"
},
"take": {
"default": 50,
"type": "number"
},
"search": {
"default": "",
"type": "string"
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
},
"anamnesis_ids": {
"type": "array",
"items": {
"default": "",
"type": "string"
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡dietbox_anamnese_write_create(patient_id, anamnesis_id, descricao, texto_livre, tipo, ...)
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.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"anamnesis_id": {
"default": "",
"type": "string"
},
"descricao": {
"default": "",
"type": "string"
},
"texto_livre": {
"default": "",
"type": "string"
},
"tipo": {
"default": 1,
"type": "number"
},
"data": {
"default": "",
"type": "string"
},
"overrides": {
"default": {},
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
},
"anamnesis_ids": {
"type": "array",
"items": {
"default": "",
"type": "string"
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡dietbox_anamnese_write_update(patient_id, anamnesis_id, descricao, texto_livre, tipo, ...)
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.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"anamnesis_id": {
"default": "",
"type": "string"
},
"descricao": {
"default": "",
"type": "string"
},
"texto_livre": {
"default": "",
"type": "string"
},
"tipo": {
"default": 1,
"type": "number"
},
"data": {
"default": "",
"type": "string"
},
"overrides": {
"default": {},
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
},
"anamnesis_ids": {
"type": "array",
"items": {
"default": "",
"type": "string"
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴dietbox_anamnese_delete(anamnesis_id, patient_id, account, anamnesis_ids, patient_ids)
Remove uma anamnese do Dietbox. Ação irreversível. Bulk support: accepts anamnesis_ids, patient_ids for batched execution.
Input Schema
{
"type": "object",
"properties": {
"anamnesis_id": {
"type": "string"
},
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"account": {
"type": "string"
},
"anamnesis_ids": {
"type": "array",
"items": {
"type": "string"
}
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
}
},
"required": [
"anamnesis_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢dietbox_antropometria_list(patient_id, anthropometry_id, skip, take, tipo, ...)
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.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"anthropometry_id": {
"default": "",
"type": "string"
},
"skip": {
"default": 0,
"type": "number"
},
"take": {
"default": 50,
"type": "number"
},
"tipo": {
"type": "number"
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
},
"anthropometry_ids": {
"type": "array",
"items": {
"default": "",
"type": "string"
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢dietbox_antropometria_get(patient_id, anthropometry_id, skip, take, tipo, ...)
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.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"anthropometry_id": {
"default": "",
"type": "string"
},
"skip": {
"default": 0,
"type": "number"
},
"take": {
"default": 50,
"type": "number"
},
"tipo": {
"type": "number"
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
},
"anthropometry_ids": {
"type": "array",
"items": {
"default": "",
"type": "string"
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢dietbox_antropometria_get_latest(patient_id, anthropometry_id, skip, take, tipo, ...)
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.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"anthropometry_id": {
"default": "",
"type": "string"
},
"skip": {
"default": 0,
"type": "number"
},
"take": {
"default": 50,
"type": "number"
},
"tipo": {
"type": "number"
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
},
"anthropometry_ids": {
"type": "array",
"items": {
"default": "",
"type": "string"
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡dietbox_antropometria_write(patient_id, weight, height, type, description, ...)
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.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"weight": {
"type": "number"
},
"height": {
"type": "number"
},
"type": {
"default": 1,
"type": "number"
},
"description": {
"default": "",
"type": "string"
},
"date": {
"default": "",
"type": "string"
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
}
},
"required": [
"patient_id",
"weight",
"height"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴dietbox_antropometria_delete(anthropometry_id, account, anthropometry_ids)
Delete an anthropometric evaluation from Dietbox. This is irreversible. Bulk support: accepts anthropometry_ids for batched execution.
Input Schema
{
"type": "object",
"properties": {
"anthropometry_id": {
"type": "string"
},
"account": {
"type": "string"
},
"anthropometry_ids": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"anthropometry_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢dietbox_meal_plan(patient_id, account, patient_ids)
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.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
}
},
"required": [
"patient_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢dietbox_prescription_list(patient_id, prescription_id, skip, take, search, ...)
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.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"prescription_id": {
"default": "",
"type": "string"
},
"skip": {
"default": 0,
"type": "number"
},
"take": {
"default": 50,
"type": "number"
},
"search": {
"default": "",
"type": "string"
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
},
"prescription_ids": {
"type": "array",
"items": {
"default": "",
"type": "string"
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢dietbox_prescription_get(patient_id, prescription_id, skip, take, search, ...)
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.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"prescription_id": {
"default": "",
"type": "string"
},
"skip": {
"default": 0,
"type": "number"
},
"take": {
"default": 50,
"type": "number"
},
"search": {
"default": "",
"type": "string"
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
},
"prescription_ids": {
"type": "array",
"items": {
"default": "",
"type": "string"
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢dietbox_prescription_list_models(patient_id, prescription_id, skip, take, search, ...)
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.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"prescription_id": {
"default": "",
"type": "string"
},
"skip": {
"default": 0,
"type": "number"
},
"take": {
"default": 50,
"type": "number"
},
"search": {
"default": "",
"type": "string"
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
},
"prescription_ids": {
"type": "array",
"items": {
"default": "",
"type": "string"
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡dietbox_prescription_write(title, patient_id, data, account, patient_ids)
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.
Input Schema
{
"type": "object",
"properties": {
"title": {
"type": "string"
},
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"data": {
"default": "{}",
"type": "string"
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
}
},
"required": [
"title",
"patient_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢dietbox_agenda_list(start, end, timezone, patient_id, account, ...)
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.
Input Schema
{
"type": "object",
"properties": {
"start": {
"default": "",
"type": "string"
},
"end": {
"default": "",
"type": "string"
},
"timezone": {
"default": -3,
"type": "number"
},
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢dietbox_agenda_summary(start, end, timezone, patient_id, account, ...)
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.
Input Schema
{
"type": "object",
"properties": {
"start": {
"default": "",
"type": "string"
},
"end": {
"default": "",
"type": "string"
},
"timezone": {
"default": -3,
"type": "number"
},
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡dietbox_agenda_write(patient_id, titulo, tipo, start, end, ...)
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.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"titulo": {
"default": "",
"type": "string"
},
"tipo": {
"default": "consulta",
"type": "string"
},
"start": {
"type": "string"
},
"end": {
"type": "string"
},
"timezone": {
"default": "America/Sao_Paulo",
"type": "string"
},
"descricao": {
"default": "",
"type": "string"
},
"todo_dia": {
"default": false,
"type": "boolean"
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
}
},
"required": [
"start",
"end"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢dietbox_chat_list(patient_id, unread, take, account, patient_ids)
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.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"unread": {
"type": "boolean"
},
"take": {
"default": 50,
"type": "number"
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢dietbox_chat_messages(patient_id, unread, take, account, patient_ids)
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.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"unread": {
"type": "boolean"
},
"take": {
"default": 50,
"type": "number"
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡dietbox_chat_write(data, account)
Send a chat message to a patient in Dietbox. Pass message data as a JSON string.
Input Schema
{
"type": "object",
"properties": {
"data": {
"type": "string"
},
"account": {
"type": "string"
}
},
"required": [
"data"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢dietbox_list_goals(patient_id, skip, take, account, patient_ids)
List nutrition/health goals for a Dietbox patient: weight targets, habit goals, custom objectives. Bulk support: accepts patient_ids for batched execution.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"skip": {
"default": 0,
"type": "number"
},
"take": {
"default": 50,
"type": "number"
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
}
},
"required": [
"patient_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢dietbox_get_goal_progress(patient_id, timezone, account, patient_ids)
Get goal progress for a Dietbox patient: completion percentages, streaks, recent activity. Bulk support: accepts patient_ids for batched execution.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"timezone": {
"default": -3,
"type": "number"
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
}
},
"required": [
"patient_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢dietbox_list_diario(patient_id, date, skip, take, account, ...)
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.
Input Schema
{
"type": "object",
"properties": {
"patient_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
},
"date": {
"type": "string"
},
"skip": {
"default": 0,
"type": "number"
},
"take": {
"default": 50,
"type": "number"
},
"account": {
"type": "string"
},
"patient_ids": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
}
]
}
}
},
"required": [
"patient_id",
"date"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢dietbox_list_finance_transactions(start_date, end_date, paid, category, account)
List financial transactions in Dietbox: payments, receivables, filtered by date and status.
Input Schema
{
"type": "object",
"properties": {
"start_date": {
"default": "",
"type": "string"
},
"end_date": {
"default": "",
"type": "string"
},
"paid": {
"type": "boolean"
},
"category": {
"default": "",
"type": "string"
},
"account": {
"type": "string"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢show_version
Show the current MCP platform and adapter versions.
Input Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡report_bug(message, context, conversation)
Report a bug, missing feature, or send feedback. Include the conversation array with recent messages for reproduction.
Input Schema
{
"type": "object",
"properties": {
"message": {
"type": "string"
},
"context": {
"default": "",
"type": "string"
},
"conversation": {
"default": "[]",
"type": "string"
}
},
"required": [
"message"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢connect
Returns connection status and URLs. When all providers are connected, returns authenticated:true and empty pending[]. When credentials are missing, returns connect_url for the toolkit and per-install URLs.
Input Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢toolkit_info
Returns the current toolkit state: installed MCPs, their connection status, the accounts connected to each one, and how many catalog tools each exposes.
Input Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡marketplace(action, query, mcp_id, limit, tier_slug, ...)
The official mcp.ai marketplace — the in-platform catalog of every MCP/tool, AND the way to run them. Covers capability requests like "find an MCP that does X", "consulta um CPF", "is there a tool for Y". Core flow: action=search discovers MCPs by intent → describe returns one MCP's full profile (every tool with its id + params, pricing, auth) so you pick the right tool_id → invoke RUNS that tool. KEY: invoke works even when the MCP is NOT installed — it runs the tool pontualmente (one-off), without adding the MCP to the toolkit and without bloating the tool list. If the MCP needs a credential/login, invoke returns a connect link; if it is paid and the wallet is empty, invoke returns a checkout/top-up link (the user opens it, then you retry). Use install only to make an MCP PERMANENT in the active toolkit (its tools then show up natively in future sessions); prefer invoke for a single/occasional use. list_tools lists what is callable right now. subscribe/cancel handle per-MCP billing; report_bug sends feedback; request_mcp asks us to build a NEW MCP when nothing fits. Search/describe flag installed_in_toolkit vs installed_in_workspace. Writes (install/uninstall/subscribe/cancel and the one-off install behind invoke) require workspace owner/admin. It also carries the mcp.ai PROMPT LIBRARY, which is about ready-made prompt TEXT rather than MCPs: search_prompts finds one, get_prompt returns its full text with {{variables}} filled, and publish_prompt saves a prompt and returns a shareable mcp.ai/p/<slug> link that opens without login.
Input Schema
{
"type": "object",
"properties": {
"action": {
"default": "search",
"type": "string",
"enum": [
"search",
"describe",
"install",
"uninstall",
"subscribe",
"cancel",
"resume",
"report_bug",
"request_mcp",
"list_tools",
"invoke",
"search_prompts",
"get_prompt",
"publish_prompt"
]
},
"query": {
"default": "",
"type": "string"
},
"mcp_id": {
"default": "",
"type": "string"
},
"limit": {
"default": 10,
"type": "number"
},
"tier_slug": {
"default": "",
"type": "string"
},
"immediate": {
"default": false,
"type": "boolean"
},
"cancel_reason": {
"type": "string",
"enum": [
"too_expensive",
"missing_features",
"switched_service",
"unused",
"customer_service",
"too_complex",
"low_quality",
"other"
]
},
"cancel_comment": {
"default": "",
"type": "string"
},
"message": {
"default": "",
"type": "string"
},
"report_context": {
"default": "",
"type": "string"
},
"conversation": {
"default": "[]",
"type": "string"
},
"request_name": {
"default": "",
"type": "string"
},
"request_details": {
"default": "",
"type": "string"
},
"tool_id": {
"default": "",
"type": "string"
},
"arguments": {
"default": "{}",
"type": "string"
},
"prompt_slug": {
"default": "",
"type": "string"
},
"prompt_vars": {
"default": "{}",
"type": "string"
},
"prompt_category": {
"default": "",
"type": "string"
},
"prompt_tool": {
"default": "",
"type": "string"
},
"prompt_title": {
"default": "",
"type": "string"
},
"prompt_description": {
"default": "",
"type": "string"
},
"prompt_body": {
"default": "",
"type": "string"
},
"prompt_targets": {
"default": [],
"type": "array",
"items": {
"type": "string",
"enum": [
"claude",
"chatgpt",
"cursor",
"lovable"
]
}
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡authenticate(token)
MCP.AI for IDE agents (Cursor, etc.): log in in the browser, copy the access token. Best: add it to this server's config as a header `Authorization: Bearer <token>` for a permanent, non-expiring connection. Or paste it here for a session-only login: call with { token: "<jwt>" } after the user pastes, or with no args to get the link.
Input Schema
{
"type": "object",
"properties": {
"token": {
"type": "string"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}Community
Evidence