Ce que fait ce MCP
Logs meals through conversational input and provides calorie and macronutrient tracking.
Outils
Schéma d’entrée
{'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'description': "The food to keep on hand, e.g. 'rolled oats'."}, 'note': {'type': 'string', 'description': "Optional short note, e.g. 'the Costco tub'."}, 'macros': {'type': 'object', 'properties': {'kcal': {'type': 'number', 'description': 'Energy for one serving, in kilocalories.'}, 'fat_g': {'type': 'number', 'description': 'Total fat for one serving, in grams.'}, 'carb_g': {'type': 'number', 'description': 'Total carbohydrate for one serving, in grams.'}, 'protein_g': {'type': 'number', 'description': 'Protein for one serving, in grams.'}}, 'description': 'Macros for ONE serving of this food, when known.'}, 'source': {'enum': ['client', 'usda', 'off', 'usda-index', 'mfp-import', 'manual', 'chain-menu'], 'type': 'string', 'description': "Where the macros came from, e.g. 'usda' for a food-database result. Defaults to 'client' (an estimate); unrecognized values are recorded as 'client'."}, 'serving': {'type': 'string', 'description': "Serving label the macros are for, e.g. '1 cup' or 'per 100 g'."}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['item'], 'properties': {'item': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string'}, 'note': {'type': 'string'}, 'macros': {'type': 'object', 'required': ['kcal', 'protein_g', 'carb_g', 'fat_g'], 'properties': {'kcal': {'type': 'number'}, 'fat_g': {'type': 'number'}, 'carb_g': {'type': 'number'}, 'protein_g': {'type': 'number'}}, 'description': 'Calories and macros. Estimates, not lab-measured; not for insulin dosing.'}, 'source': {'type': 'string', 'description': "The user's own claim about the macros' origin, not verified."}, 'serving': {'type': 'string'}}}}}
Schéma d’entrée
{'type': 'object', 'required': ['id', 'local_date'], 'properties': {'id': {'type': 'string', 'description': 'The entry id, as returned when reading a day.'}, 'item_index': {'type': 'number', 'description': 'Which food to remove (0-based). Omit to delete the whole entry.'}, 'local_date': {'type': 'string', 'description': 'YYYY-MM-DD diary date of the entry.'}}}
Schéma de sortie
{'type': 'object', 'required': ['removed', 'entry', 'day_totals'], 'properties': {'entry': {'anyOf': [{'type': 'object', 'required': ['id', 'at', 'local_date', 'items'], 'properties': {'at': {'type': 'string', 'description': 'ISO-8601 UTC instant the food was eaten.'}, 'id': {'type': 'string'}, 'meal': {'type': 'string', 'description': 'breakfast, lunch, dinner or snack, when set.'}, 'note': {'type': 'string'}, 'items': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string'}, 'macros': {'type': 'object', 'required': [], 'properties': {'kcal': {'type': 'number'}, 'fat_g': {'type': 'number'}, 'carb_g': {'type': 'number'}, 'protein_g': {'type': 'number'}}, 'description': 'Calories and macros. Estimates, not lab-measured; not for insulin dosing.'}, 'source': {'type': 'string', 'description': 'Where the macros came from (e.g. usda, off, client).'}, 'fluid_ml': {'type': 'number'}, 'quantity': {'type': 'string'}, 'caffeine_mg': {'type': 'number'}}}}, 'created_at': {'type': 'string'}, 'local_date': {'type': 'string', 'description': 'A local date, YYYY-MM-DD.'}}, 'description': 'One diary entry: a meal with its foods.'}, {'type': 'null'}], 'description': 'What remains of the entry, or null.'}, 'removed': {'type': 'boolean'}, 'day_totals': {'type': 'object', 'required': ['local_date', 'entry_count', 'totals'], 'properties': {'totals': {'type': 'object', 'required': ['kcal', 'protein_g', 'carb_g', 'fat_g'], 'properties': {'kcal': {'type': 'number'}, 'fat_g': {'type': 'number'}, 'carb_g': {'type': 'number'}, 'protein_g': {'type': 'number'}}, 'description': 'Calories and macros. Estimates, not lab-measured; not for insulin dosing.'}, 'fluid_ml': {'type': 'number'}, 'local_date': {'type': 'string', 'description': 'A local date, YYYY-MM-DD.'}, 'caffeine_mg': {'type': 'number'}, 'entry_count': {'type': 'integer'}}}}}
Schéma d’entrée
{'type': 'object', 'properties': {'local_date': {'type': 'string', 'description': 'YYYY-MM-DD; defaults to today.'}}}
Schéma de sortie
{'type': 'object', 'required': ['local_date', 'entries', 'totals'], 'properties': {'totals': {'type': 'object', 'required': ['local_date', 'entry_count', 'totals'], 'properties': {'totals': {'type': 'object', 'required': ['kcal', 'protein_g', 'carb_g', 'fat_g'], 'properties': {'kcal': {'type': 'number'}, 'fat_g': {'type': 'number'}, 'carb_g': {'type': 'number'}, 'protein_g': {'type': 'number'}}, 'description': 'Calories and macros. Estimates, not lab-measured; not for insulin dosing.'}, 'fluid_ml': {'type': 'number'}, 'local_date': {'type': 'string', 'description': 'A local date, YYYY-MM-DD.'}, 'caffeine_mg': {'type': 'number'}, 'entry_count': {'type': 'integer'}}}, 'entries': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'at', 'local_date', 'items'], 'properties': {'at': {'type': 'string', 'description': 'ISO-8601 UTC instant the food was eaten.'}, 'id': {'type': 'string'}, 'meal': {'type': 'string', 'description': 'breakfast, lunch, dinner or snack, when set.'}, 'note': {'type': 'string'}, 'items': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string'}, 'macros': {'type': 'object', 'required': [], 'properties': {'kcal': {'type': 'number'}, 'fat_g': {'type': 'number'}, 'carb_g': {'type': 'number'}, 'protein_g': {'type': 'number'}}, 'description': 'Calories and macros. Estimates, not lab-measured; not for insulin dosing.'}, 'source': {'type': 'string', 'description': 'Where the macros came from (e.g. usda, off, client).'}, 'fluid_ml': {'type': 'number'}, 'quantity': {'type': 'string'}, 'caffeine_mg': {'type': 'number'}}}}, 'created_at': {'type': 'string'}, 'local_date': {'type': 'string', 'description': 'A local date, YYYY-MM-DD.'}}, 'description': 'One diary entry: a meal with its foods.'}}, 'local_date': {'type': 'string', 'description': 'A local date, YYYY-MM-DD.'}}}
Schéma d’entrée
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string'}, 'note': {'type': 'string'}, 'macros': {'type': 'object', 'required': ['kcal', 'protein_g', 'carb_g', 'fat_g'], 'properties': {'kcal': {'type': 'number'}, 'fat_g': {'type': 'number'}, 'carb_g': {'type': 'number'}, 'protein_g': {'type': 'number'}}, 'description': 'Calories and macros. Estimates, not lab-measured; not for insulin dosing.'}, 'source': {'type': 'string', 'description': "The user's own claim about the macros' origin, not verified."}, 'serving': {'type': 'string'}}}}}}
Schéma d’entrée
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['diet_style', 'allergies', 'dislikes', 'portion_note', 'allergy_disclaimer'], 'properties': {'dislikes': {'type': 'array', 'items': {'type': 'string'}}, 'allergies': {'type': 'array', 'items': {'type': 'string'}}, 'diet_style': {'type': ['string', 'null']}, 'portion_note': {'type': ['string', 'null']}, 'allergy_disclaimer': {'type': 'string'}}}
Schéma d’entrée
{'type': 'object', 'required': ['start', 'end'], 'properties': {'end': {'type': 'string', 'description': 'YYYY-MM-DD (inclusive).'}, 'start': {'type': 'string', 'description': 'YYYY-MM-DD (inclusive).'}}}
Schéma de sortie
{'type': 'object', 'required': ['start', 'end', 'days', 'entries'], 'properties': {'end': {'type': 'string', 'description': 'A local date, YYYY-MM-DD.'}, 'days': {'type': 'array', 'items': {'type': 'object', 'required': ['local_date', 'entry_count', 'totals'], 'properties': {'totals': {'type': 'object', 'required': ['kcal', 'protein_g', 'carb_g', 'fat_g'], 'properties': {'kcal': {'type': 'number'}, 'fat_g': {'type': 'number'}, 'carb_g': {'type': 'number'}, 'protein_g': {'type': 'number'}}, 'description': 'Calories and macros. Estimates, not lab-measured; not for insulin dosing.'}, 'fluid_ml': {'type': 'number'}, 'local_date': {'type': 'string', 'description': 'A local date, YYYY-MM-DD.'}, 'caffeine_mg': {'type': 'number'}, 'entry_count': {'type': 'integer'}}}}, 'start': {'type': 'string', 'description': 'A local date, YYYY-MM-DD.'}, 'entries': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'at', 'local_date', 'items'], 'properties': {'at': {'type': 'string', 'description': 'ISO-8601 UTC instant the food was eaten.'}, 'id': {'type': 'string'}, 'meal': {'type': 'string', 'description': 'breakfast, lunch, dinner or snack, when set.'}, 'note': {'type': 'string'}, 'items': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string'}, 'macros': {'type': 'object', 'required': [], 'properties': {'kcal': {'type': 'number'}, 'fat_g': {'type': 'number'}, 'carb_g': {'type': 'number'}, 'protein_g': {'type': 'number'}}, 'description': 'Calories and macros. Estimates, not lab-measured; not for insulin dosing.'}, 'source': {'type': 'string', 'description': 'Where the macros came from (e.g. usda, off, client).'}, 'fluid_ml': {'type': 'number'}, 'quantity': {'type': 'string'}, 'caffeine_mg': {'type': 'number'}}}}, 'created_at': {'type': 'string'}, 'local_date': {'type': 'string', 'description': 'A local date, YYYY-MM-DD.'}}, 'description': 'One diary entry: a meal with its foods.'}}}}
Schéma d’entrée
{'type': 'object', 'required': ['items'], 'properties': {'at': {'type': 'string', 'description': 'ISO-8601 instant the meal was eaten; defaults to now.'}, 'meal': {'enum': ['breakfast', 'lunch', 'dinner', 'snack', 'other'], 'type': 'string', 'description': 'Which meal of the day this was.'}, 'note': {'type': 'string', 'description': "Optional free-text note stored with the meal, e.g. 'post-run'."}, 'items': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'description': "What the food is, e.g. 'scrambled eggs' or 'Greek yogurt, plain'."}, 'macros': {'type': 'object', 'properties': {'kcal': {'type': 'number', 'description': 'Energy for the whole portion eaten, in kilocalories (not per 100 g).'}, 'fat_g': {'type': 'number', 'description': 'Total fat for the whole portion eaten, in grams.'}, 'carb_g': {'type': 'number', 'description': 'Total carbohydrate for the whole portion eaten, in grams.'}, 'protein_g': {'type': 'number', 'description': 'Protein for the whole portion eaten, in grams.'}}, 'description': 'Estimated nutrition for the portion eaten. Omitted fields are looked up from the food databases.'}, 'barcode': {'type': 'string', 'description': "The package's UPC/EAN barcode, when the food came from a barcode lookup."}, 'fluid_ml': {'type': 'number', 'description': 'Optional fluid/hydration volume of this item, in millilitres (e.g. 240 for an 8 oz cup).'}, 'quantity': {'type': 'string', 'description': "Portion as a display label, e.g. '3', '1 cup' or '2 × 1 frank (96 g)'. Display only: the server stores macros exactly as sent and does not re-scale them."}, 'caffeine_mg': {'type': 'number', 'description': 'Optional caffeine content of this item, in milligrams (e.g. ~95 for a mug of brewed coffee).'}}}, 'minItems': 1, 'description': 'The foods in this meal, one entry per food.'}, 'source': {'enum': ['client', 'usda', 'off', 'usda-index', 'mfp-import', 'manual', 'chain-menu'], 'type': 'string', 'description': "Optional provenance for these items, e.g. 'usda' or 'off' for a food-database result. Defaults to 'client' (an estimate); unrecognized values are recorded as 'client'."}, 'local_date': {'type': 'string', 'description': "YYYY-MM-DD diary date; defaults to the user's local date (from their timezone)."}}}
Schéma de sortie
{'type': 'object', 'required': ['entry', 'day_totals'], 'properties': {'entry': {'type': 'object', 'required': ['id', 'at', 'local_date', 'items'], 'properties': {'at': {'type': 'string', 'description': 'ISO-8601 UTC instant the food was eaten.'}, 'id': {'type': 'string'}, 'meal': {'type': 'string', 'description': 'breakfast, lunch, dinner or snack, when set.'}, 'note': {'type': 'string'}, 'items': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string'}, 'macros': {'type': 'object', 'required': [], 'properties': {'kcal': {'type': 'number'}, 'fat_g': {'type': 'number'}, 'carb_g': {'type': 'number'}, 'protein_g': {'type': 'number'}}, 'description': 'Calories and macros. Estimates, not lab-measured; not for insulin dosing.'}, 'source': {'type': 'string', 'description': 'Where the macros came from (e.g. usda, off, client).'}, 'fluid_ml': {'type': 'number'}, 'quantity': {'type': 'string'}, 'caffeine_mg': {'type': 'number'}}}}, 'created_at': {'type': 'string'}, 'local_date': {'type': 'string', 'description': 'A local date, YYYY-MM-DD.'}}, 'description': 'One diary entry: a meal with its foods.'}, 'day_totals': {'type': 'object', 'required': ['local_date', 'entry_count', 'totals'], 'properties': {'totals': {'type': 'object', 'required': ['kcal', 'protein_g', 'carb_g', 'fat_g'], 'properties': {'kcal': {'type': 'number'}, 'fat_g': {'type': 'number'}, 'carb_g': {'type': 'number'}, 'protein_g': {'type': 'number'}}, 'description': 'Calories and macros. Estimates, not lab-measured; not for insulin dosing.'}, 'fluid_ml': {'type': 'number'}, 'local_date': {'type': 'string', 'description': 'A local date, YYYY-MM-DD.'}, 'caffeine_mg': {'type': 'number'}, 'entry_count': {'type': 'integer'}}}}}
Schéma d’entrée
{'type': 'object', 'required': ['upc'], 'properties': {'upc': {'type': 'string', 'description': 'UPC/EAN barcode, digits only (8–14 digits).'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['candidates'], 'properties': {'candidates': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'macros', 'source'], 'properties': {'name': {'type': 'string'}, 'macros': {'type': 'object', 'required': ['kcal', 'protein_g', 'carb_g', 'fat_g'], 'properties': {'kcal': {'type': 'number'}, 'fat_g': {'type': 'number'}, 'carb_g': {'type': 'number'}, 'protein_g': {'type': 'number'}}, 'description': 'Calories and macros. Estimates, not lab-measured; not for insulin dosing.'}, 'source': {'type': 'string'}, 'serving': {'type': 'string'}, 'serving_grams': {'type': 'number'}, 'serving_label': {'type': 'string'}}, 'description': 'A food match. Macros are PER 100 g — scale to the portion before logging.'}}}}
Schéma d’entrée
{'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'description': 'The food to remove from the pantry (any casing).'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['removed'], 'properties': {'removed': {'type': 'boolean'}}}
Schéma d’entrée
{'type': 'object', 'required': ['query'], 'properties': {'limit': {'type': 'number', 'description': 'Max candidates to return (default 5, clamped to 1–10).'}, 'query': {'type': 'string', 'description': "Food to search, e.g. 'greek yogurt' or 'Chipotle chicken'."}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['candidates'], 'properties': {'candidates': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'macros', 'source'], 'properties': {'name': {'type': 'string'}, 'macros': {'type': 'object', 'required': ['kcal', 'protein_g', 'carb_g', 'fat_g'], 'properties': {'kcal': {'type': 'number'}, 'fat_g': {'type': 'number'}, 'carb_g': {'type': 'number'}, 'protein_g': {'type': 'number'}}, 'description': 'Calories and macros. Estimates, not lab-measured; not for insulin dosing.'}, 'source': {'type': 'string'}, 'serving': {'type': 'string'}, 'serving_grams': {'type': 'number'}, 'serving_label': {'type': 'string'}}, 'description': 'A food match. Macros are PER 100 g — scale to the portion before logging.'}}}}
Schéma d’entrée
{'type': 'object', 'required': ['id', 'local_date'], 'properties': {'id': {'type': 'string', 'description': 'The entry id, as returned when reading a day.'}, 'meal': {'enum': ['breakfast', 'lunch', 'dinner', 'snack', 'other'], 'type': 'string', 'description': 'Move the entry to a different meal label.'}, 'name': {'type': 'string', 'description': 'Corrected name of the food.'}, 'note': {'type': 'string', 'description': 'Replacement note for the entry.'}, 'macros': {'type': 'object', 'properties': {'kcal': {'type': 'number', 'description': 'Corrected energy for the whole portion, in kilocalories.'}, 'fat_g': {'type': 'number', 'description': 'Corrected total fat for the whole portion, in grams.'}, 'carb_g': {'type': 'number', 'description': 'Corrected total carbohydrate for the whole portion, in grams.'}, 'protein_g': {'type': 'number', 'description': 'Corrected protein for the whole portion, in grams.'}}, 'description': 'Corrected macros. Only the components included are changed.'}, 'fluid_ml': {'type': 'number', 'description': 'Corrected fluid/hydration volume, in millilitres.'}, 'quantity': {'type': 'string', 'description': "Portion as stated, e.g. '2' or '1 cup'."}, 'item_index': {'type': 'number', 'description': "Which food in the entry's items[] to edit (0-based). Required when changing a food's name/quantity/macros/caffeine/fluid; omit for an entry-level change (meal/note)."}, 'local_date': {'type': 'string', 'description': 'YYYY-MM-DD diary date of the entry.'}, 'caffeine_mg': {'type': 'number', 'description': 'Corrected caffeine content, in milligrams.'}}}
Schéma de sortie
{'type': 'object', 'required': ['entry', 'day_totals'], 'properties': {'entry': {'type': 'object', 'required': ['id', 'at', 'local_date', 'items'], 'properties': {'at': {'type': 'string', 'description': 'ISO-8601 UTC instant the food was eaten.'}, 'id': {'type': 'string'}, 'meal': {'type': 'string', 'description': 'breakfast, lunch, dinner or snack, when set.'}, 'note': {'type': 'string'}, 'items': {'type': 'array', 'items': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string'}, 'macros': {'type': 'object', 'required': [], 'properties': {'kcal': {'type': 'number'}, 'fat_g': {'type': 'number'}, 'carb_g': {'type': 'number'}, 'protein_g': {'type': 'number'}}, 'description': 'Calories and macros. Estimates, not lab-measured; not for insulin dosing.'}, 'source': {'type': 'string', 'description': 'Where the macros came from (e.g. usda, off, client).'}, 'fluid_ml': {'type': 'number'}, 'quantity': {'type': 'string'}, 'caffeine_mg': {'type': 'number'}}}}, 'created_at': {'type': 'string'}, 'local_date': {'type': 'string', 'description': 'A local date, YYYY-MM-DD.'}}, 'description': 'One diary entry: a meal with its foods.'}, 'day_totals': {'type': 'object', 'required': ['local_date', 'entry_count', 'totals'], 'properties': {'totals': {'type': 'object', 'required': ['kcal', 'protein_g', 'carb_g', 'fat_g'], 'properties': {'kcal': {'type': 'number'}, 'fat_g': {'type': 'number'}, 'carb_g': {'type': 'number'}, 'protein_g': {'type': 'number'}}, 'description': 'Calories and macros. Estimates, not lab-measured; not for insulin dosing.'}, 'fluid_ml': {'type': 'number'}, 'local_date': {'type': 'string', 'description': 'A local date, YYYY-MM-DD.'}, 'caffeine_mg': {'type': 'number'}, 'entry_count': {'type': 'integer'}}}}}
Schéma d’entrée
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['user_id', 'scopes'], 'properties': {'scopes': {'type': 'array', 'items': {'type': 'string'}}, 'user_id': {'type': 'string'}}}
Modifications récentes des outils
Serveurs MCP similaires
MaCalculatriceEnLigne
Provides calculators for French and Belgian taxes, salaries, pensions, VAT, loans, health metrics, education scores, fitness, and…
Clink Forge
Provides pay-per-call access to attested government datasets, primarily CDC and HHS health data plus EPA air-quality observations.
Good Turn Studio (all tools)
Offers consumer utilities for insurance claim appeals, subscription cancellation, flight fare research, financial recovery resour…
Feegow Clinic
Manages clinic patients, providers, appointments, schedules, benefit plans, insurance billing, financial records, units, employee…
mcp
Analyzes medical bills and insurance denials, estimates healthcare costs, identifies assistance options, and supports appeals and…
Medicare Coverage
Provides structured Medicare coverage documents, policy timelines, utilization, enrollment, supplier, and payment-related data fr…
WebDiet
Manages dietitian workflows including patients, anamnesis, anthropometry, nutrition calculations, meal data, prescriptions, appoi…
Spoonacular
Provides recipe, ingredient, nutrition, grocery-product, measurement-conversion, and dietary meal-plan tools.