MCP HeartbeatTHE MCP OBSERVATORY
Public workspace

Explore

Evidence for your next connection.

Independent measurements of remote MCP servers. Every observation has a timestamp.

Read-only probes

MCP server · Code & DevOps

DietBox

Patient, prescription, anthropometry, scheduling, chat and food diary management for dietitians.

Checks passed
13 / 22

1 failed · 8 not measured

Median response
374 ms

Median of successful probes over 7 days

30-day uptime
Not measured

Share of countable probes over 30 days, including daily rollups. Auth challenges are excluded.

Discovered tools
42

Tool definitions returned by this server

Independent monitoring

Health & checks

Status history

Responded

The server completed its last measured handshake. This is an observation, not a guarantee.

Last checked
Check summary by test group
Test areaPassedFailedUnmeasured
ConnectionCan a client connect and discover tools?
500
Reliability & speedDoes it respond consistently and quickly?
004
Access & authenticationWhat is required to use this server?
102
Tool qualityAre the tool definitions usable by an agent?
310
Publisher identityCan the publisher be traced to its source?
402

Unmeasured means there is not enough evidence to decide. How these checks work

Inspect individual checks 22 recorded

Core

  • Pass
    Reachable

    Latest probe returned HTTP 200 in 374 ms.

  • Pass
    Valid handshake

    protocolVersion 2025-11-25, serverInfo.name mcp-ai.

  • Pass
    Lists tools

    tools/list returned 42 tools.

  • Pass
    Current protocol

    Negotiated 2025-11-25. The bar is 2025-06-18 or newer.

  • Pass
    HTTPS

    The endpoint URL is https.

Performance

  • Not measured
    Fast (p50)

    Median latency 374 ms over 1 samples in 7 days. The bar is 1000 ms. Need at least 5 samples.

  • Not measured
    Consistent (p95)

    95th percentile 374 ms over 1 samples in 7 days. The bar is 3000 ms. Need at least 20 samples.

  • Not measured
    Reliable (uptime)

    1 of 1 attempts returned a tool list in 30 days (100%). The bar is 99%. Need at least 30 samples.

  • Not measured
    Stable tool list

    Fewer than two successful probes in 30 days, so tool-list stability is not measured.

Access

  • Pass
    Open access

    tools/list succeeded with no credential, and the record declares none.

  • Not measured
    Standard auth

    Auth is not required, so the OAuth metadata check does not apply.

  • Not measured
    Free tier cited

    No publisher quote has been checked.

Tools

  • Pass
    Tools described

    Every tool description is at least 20 characters.

  • Pass
    Valid input schemas

    Every inputSchema is a JSON Schema object.

  • Fail
    Parameters documented

    0 of 276 parameters have a description (0%). The bar is 80%.

  • Pass
    Safety hints

    Every tool sets readOnlyHint or destructiveHint.

Publisher

  • Pass
    Verified namespace

    Listed in the Official MCP Registry.

  • Not measured
    Website matches publisher

    This namespace is not a reverse domain, so the website comparison does not apply.

  • Pass
    Source repo linked

    A repository URL is on file.

  • Pass
    Repo owner matches

    The GitHub repository owner matches the namespace login.

  • Pass
    Recently updated

    Updated 2026-06-10T17:23:03.287129Z, within 180 days.

  • Not measured
    Open-source licence

    The GitHub licence lookup has not returned an OSI result yet.

Start using DietBox

Connect to this server

Choose your client, copy the configuration, then enable the server in your client’s MCP settings.

Run this command in your terminal, then restart Claude Code.

Claude Code

claude mcp add --transport http dietbox https://api.mcp.ai/p_dietbox

Capabilities

Tools 42

authenticate

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.

Discovered
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.

Discovered
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.

Discovered
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.

Discovered
dietbox_agenda_write

Create a new event/appointment in the Dietbox agenda. - start / end: data e hora ISO. Sem offset (ex.: "2026-04-16T14:00:00") o horário é lido no fuso de timezone (padrão America/Sao_Paulo); com offset (ex.: "-03:00") vale o instante informado. - tipo: "consulta" (padrão) ou "outros". Para outro tipo do DietBox (ex.: retorno), envie o código numérico em tipo_codigo; descubra o código lendo o campo Type de um evento desse tipo no dietbox_agenda (action=list). - patient_id: Id numérico do paciente (use dietbox_patient_list (campo Id do paciente) para obter o id). - titulo, descricao: título e observações do evento. - local_atendimento: Id do local de atendimento (campo IdLocalAtendimento de um evento existente), quando a nutricionista tem mais de um local. Bulk support: accepts patient_ids for batched execution.

Discovered
dietbox_anamnese_delete

Remove uma anamnese do Dietbox. Ação irreversível. Bulk support: accepts anamnesis_ids, patient_ids for batched execution.

Discovered
dietbox_anamnese_get

Read anamnesis (health history questionnaire) records in Dietbox. Actions: list (paginated, requires patient_id), get (by anamnesis_id), get_latest (most recent for patient_id). [Flattened action: get] Bulk support: accepts patient_ids, anamnesis_ids for batched execution.

Discovered
dietbox_anamnese_get_latest

Read anamnesis (health history questionnaire) records in Dietbox. Actions: list (paginated, requires patient_id), get (by anamnesis_id), get_latest (most recent for patient_id). [Flattened action: get_latest] Bulk support: accepts patient_ids, anamnesis_ids for batched execution.

Discovered
dietbox_anamnese_list

Read anamnesis (health history questionnaire) records in Dietbox. Actions: list (paginated, requires patient_id), get (by anamnesis_id), get_latest (most recent for patient_id). [Flattened action: list] Bulk support: accepts patient_ids, anamnesis_ids for batched execution.

Discovered
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 E patient_id (o DietBox exige o paciente também na atualização). Demais campos sobrescrevem os atuais. Retorna { id } da anamnese criada/atualizada. [Flattened action: create] Bulk support: accepts patient_ids, anamnesis_ids for batched execution.

Discovered
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 E patient_id (o DietBox exige o paciente também na atualização). Demais campos sobrescrevem os atuais. Retorna { id } da anamnese criada/atualizada. [Flattened action: update] Bulk support: accepts patient_ids, anamnesis_ids for batched execution.

Discovered
dietbox_antropometria_delete

Delete an anthropometric evaluation from Dietbox. This is irreversible. Bulk support: accepts anthropometry_ids for batched execution.

Discovered
dietbox_antropometria_get

Read anthropometric evaluations in Dietbox (weight, height, BMI, body composition). Actions: list (paginated, filter by tipo; requires patient_id), get (by anthropometry_id), get_latest (current measurements for patient_id). [Flattened action: get] Bulk support: accepts patient_ids, anthropometry_ids for batched execution.

Discovered
dietbox_antropometria_get_latest

Read anthropometric evaluations in Dietbox (weight, height, BMI, body composition). Actions: list (paginated, filter by tipo; requires patient_id), get (by anthropometry_id), get_latest (current measurements for patient_id). [Flattened action: get_latest] Bulk support: accepts patient_ids, anthropometry_ids for batched execution.

Discovered
dietbox_antropometria_list

Read anthropometric evaluations in Dietbox (weight, height, BMI, body composition). Actions: list (paginated, filter by tipo; requires patient_id), get (by anthropometry_id), get_latest (current measurements for patient_id). [Flattened action: list] Bulk support: accepts patient_ids, anthropometry_ids for batched execution.

Discovered
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.

Discovered
dietbox_chat_list

Read chat conversations in Dietbox. Actions: list (conversations, filter by patient/unread), messages (message history for patient_id). [Flattened action: list] Bulk support: accepts patient_ids for batched execution.

Discovered
dietbox_chat_messages

Read chat conversations in Dietbox. Actions: list (conversations, filter by patient/unread), messages (message history for patient_id). [Flattened action: messages] Bulk support: accepts patient_ids for batched execution.

Discovered
dietbox_chat_write

Send a chat message to a patient in Dietbox. Pass message data as a JSON string.

Discovered
dietbox_get_goal_progress

Get goal progress for a Dietbox patient: completion percentages, streaks, recent activity. Bulk support: accepts patient_ids for batched execution.

Discovered
dietbox_get_nutritionist

Get the nutritionist's professional profile in Dietbox: CRN, specialties, signature, subscription details.

Discovered
dietbox_get_profile

Get the nutritionist's Dietbox profile (perfil): name, email, subscription plan, features.

Discovered
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).

Discovered
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.

Discovered
dietbox_list_finance_transactions

List financial transactions in Dietbox: payments, receivables, filtered by date and status.

Discovered
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.

Discovered
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 (LIMITAÇÃO DO DIETBOX): a API v2 do Dietbox só oferece LEITURA do plano alimentar (GET /plano-alimentar/{paciente}); criar e editar plano, assim como a biblioteca de receitas, existem apenas nas telas internas do site do Dietbox, sem API. Por isso não existe dietbox_meal_plan_write nem ferramenta de receitas. Para criar/editar planos e receitas, use o site do Dietbox. Bulk support: accepts patient_ids for batched execution.

Discovered
dietbox_patient_delete

Permanently delete a patient from Dietbox. Irreversible. Bulk support: accepts patient_ids for batched execution.

Discovered
dietbox_patient_get

Read patients in Dietbox. Actions: list (paginated, search by name), get (full detail, requires patient_id). Para localizar VÁRIOS pacientes, faça UMA chamada list com take maior (ex.: 200) e filtre o resultado, em vez de uma busca por nome para cada paciente: o DietBox bloqueia a conta temporariamente ("atividade automatizada") quando recebe muitas chamadas seguidas. Se o bloqueio acontecer, a ferramenta avisa quanto tempo esperar; não repita a chamada antes disso. [Flattened action: get] Bulk support: accepts patient_ids for batched execution.

Discovered
dietbox_patient_list

Read patients in Dietbox. Actions: list (paginated, search by name), get (full detail, requires patient_id). Para localizar VÁRIOS pacientes, faça UMA chamada list com take maior (ex.: 200) e filtre o resultado, em vez de uma busca por nome para cada paciente: o DietBox bloqueia a conta temporariamente ("atividade automatizada") quando recebe muitas chamadas seguidas. Se o bloqueio acontecer, a ferramenta avisa quanto tempo esperar; não repita a chamada antes disso. [Flattened action: list] Bulk support: accepts patient_ids for batched execution.

Discovered
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. 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.

Discovered
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. 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.

Discovered
dietbox_prescription_get

Read supplement/herbal medicine prescriptions in Dietbox (NOT meal plans — use dietbox_meal_plan for food plans). Actions: list (by patient_id), get (full detail by prescription_id), list_models (reusable templates). [Flattened action: get] Bulk support: accepts patient_ids, prescription_ids for batched execution.

Discovered
dietbox_prescription_list

Read supplement/herbal medicine prescriptions in Dietbox (NOT meal plans — use dietbox_meal_plan for food plans). Actions: list (by patient_id), get (full detail by prescription_id), list_models (reusable templates). [Flattened action: list] Bulk support: accepts patient_ids, prescription_ids for batched execution.

Discovered
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_id), get (full detail by prescription_id), list_models (reusable templates). [Flattened action: list_models] Bulk support: accepts patient_ids, prescription_ids for batched execution.

Discovered
dietbox_prescription_write

Create a new supplement/herbal medicine prescription (receituário) in Dietbox. For meal plans, see dietbox_meal_plan (read-only). Campos aceitos pelo DietBox (são TODOS os que a prescrição tem): - title (obrigatório): nome da prescrição. - patient_id (obrigatório): Id numérico do paciente. - date: data da prescrição (ISO, ex.: "2026-11-04"); padrão = hoje. - description: o conteúdo da prescrição (suplementos/fitoterápicos, doses, observações), em texto. - posology: posologia / modo de uso. Não existe campo de itens estruturados: escreva os itens no description. Não é preciso montar JSON. Bulk support: accepts patient_ids for batched execution.

Discovered
dietbox_prontuario

Get the clinical record (prontuario) for a Dietbox patient: medical history, notes. Bulk support: accepts patient_ids for batched execution.

Discovered
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.

Discovered
marketplace

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.

Discovered
report_bug

Report a bug, missing feature, or send feedback. Include the conversation array with recent messages for reproduction.

Discovered
show_version

Show the current MCP platform and adapter versions.

Discovered
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.

Discovered

Recent measurements

Probe history

View status
Latest stored probes. Raw probe rows are kept for 14 days.
CheckedResultResponseTools
Connected374 ms42