{"apiVersion":"v1","directorySlug":"hello-mcp-92e4d9707b","title":"hello.food | Safer Food Choices for Dietary Restrictions","description":"hello.food helps caregivers and individuals make generally safer food choices at restaurants for loved ones with dietary restrictions, allergies, and health conditions.","pageUrl":"https://www.mcpbundles.com/skills/hello-mcp-92e4d9707b","connectPath":"importable","connectAction":"import_server","catalogListing":false,"bundleSlug":null,"listingKind":"remote_mcp","kind":"provider","transportUrl":"https://api.hello.food/mcp","hostedMcpUrl":null,"toolCount":18,"toolInventoryStatus":"observed","refreshedAt":"2026-11-03T13:26:00.516172+00:00","registryName":"food.hello/hello-mcp-92e4d9707b","registryVersion":"2026.11.3","registryEligible":true,"tools":[{"name":"lookup_restaurant","description":"Search for a restaurant by name. Returns matching restaurants with their IDs, addresses, and whether they have a menu available. Use the returned restaurant_id with get_menu to retrieve the full menu. No account required. Tip: search by restaurant name only (e.g. 'Out of Bounds'). If multiple locations match, ask the user which location they mean before calling get_menu.","inputSchema":{"type":"object","required":["name"],"properties":{"name":{"type":"string"}}},"title":"Find a restaurant by name","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"lookup_restaurant","displayName":"Find a restaurant by name"},{"name":"get_menu","description":"Get the full menu for a restaurant by ID. Returns sections with items, prices, allergen flags, substitution options, and owner context. Existing menus need no account. When a linked account requests a menu that is not available yet, this starts fetching it and returns status=acquiring plus a job_id; call get_menu_status with both IDs until ready.","inputSchema":{"type":"object","required":["restaurant_id"],"properties":{"restaurant_id":{"type":"string"}}},"title":"Get a restaurant menu","logicalName":"get_menu","displayName":"Get a restaurant menu","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"get_menu_status","description":"Poll a menu fetch started by get_menu. Pass the same restaurant_id and the returned job_id. If status is acquiring, poll again; ready includes the complete canonical menu. timed_out only means it is still being fetched and can be retried shortly. Requires a linked HelloFood account.","inputSchema":{"type":"object","required":["restaurant_id","job_id"],"properties":{"job_id":{"type":"string"},"restaurant_id":{"type":"string"}}},"title":"Check menu fetch status","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_menu_status","displayName":"Check menu fetch status"},{"name":"explain_item","description":"Evaluate a specific food item's safety for the linked user's dietary profile. Returns a safety verdict (generally_safer, risky, avoid, or unable_to_evaluate), conflicts, suggested modifications, and alternatives. Covers the whole household by default when the account has synced members (the verdict is then the worst member's, with a per-member breakdown); pass household_scope only when the user explicitly named who this is for. This reads the item NAME against the profile and never reads a captu","inputSchema":{"type":"object","required":["item_name"],"properties":{"item_name":{"type":"string"},"household_scope":{"type":"string","default":""},"restaurant_name":{"type":"string","default":""}}},"title":"Evaluate a food item","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"explain_item","displayName":"Evaluate a food item"},{"name":"derive_claims","description":"Derive signed coarse-grained dietary claims for the linked user. Returns claim categories (e.g. restriction:gluten, preference:plant_based) without revealing detailed dietary restrictions. Requires a linked HelloFood account with consent.","inputSchema":{"type":"object","properties":{}},"title":"Issue dietary claims","logicalName":"derive_claims","displayName":"Issue dietary claims","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"draft_order_message","description":"Draft a restaurant order message that includes the user's dietary needs. Provide the restaurant_id, items to order, and optionally a recipient name and special instructions. The message is composed for the user to send to the restaurant. Requires a linked HelloFood account.","inputSchema":{"type":"object","required":["restaurant_id","items_to_order"],"properties":{"restaurant_id":{"type":"string"},"items_to_order":{"type":"array","items":{"type":"string"}},"recipient_name":{"type":"string","default":""},"special_instructions":{"type":"string","default":""}}},"title":"Draft dietary order instructions","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"draft_order_message","displayName":"Draft dietary order instructions"},{"name":"recommend_items","description":"Get personalized menu item recommendations for a restaurant based on the user's dietary profile. Returns ranked items with safety scores and rationale. Recommends for the whole household by default when the account has synced members — items conflicting with any member's allergens are removed and listed in `excluded`, and surviving items carry per-member notes; pass household_scope only when the user explicitly named who this is for. Requires a linked HelloFood account.","inputSchema":{"type":"object","required":["restaurant_id"],"properties":{"limit":{"type":"integer","default":5},"query":{"type":"string","default":""},"restaurant_id":{"type":"string"},"household_scope":{"type":"string","default":""},"price_max_cents":{"type":"integer","default":0},"price_min_cents":{"type":"integer","default":0}}},"title":"Recommend menu items","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"recommend_items","displayName":"Recommend menu items"},{"name":"search_restaurants","description":"Search for restaurants near a coarse city or neighborhood supplied by the user, or ChatGPT's optional coarse location hint. Returns restaurants ranked by dietary fit when the user has a linked HelloFood account. Pass city/neighborhood only; never pass a street address or precise GPS coordinates. Requires a linked HelloFood account.","inputSchema":{"type":"object","properties":{"limit":{"type":"integer","default":10},"query":{"type":"string","default":""},"radius_miles":{"type":"number","default":5.0},"location_query":{"type":"string","default":""}}},"title":"Search nearby restaurants","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"search_restaurants","displayName":"Search nearby restaurants"},{"name":"search_recipes","description":"Search recipe providers for recipes that fit the linked user's dietary profile. Returns reusable recipe_ref values; pass one of those references to save_recipe when the user asks to keep a result. Searches for the whole household by default when the account has synced members (results carry a per-member match hint); pass household_scope only when the user explicitly named who this is for. Requires a linked HelloFood account.","inputSchema":{"type":"object","required":["query"],"properties":{"limit":{"type":"integer","default":5},"query":{"type":"string"},"cuisine":{"type":"string","default":""},"meal_type":{"type":"string","default":""},"max_ready_time":{"type":"integer","default":0},"household_scope":{"type":"string","default":""}}},"title":"Search for recipes","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"search_recipes","displayName":"Search for recipes"},{"name":"save_recipe","description":"Save a recipe from search_recipes to the linked user's cookbook. First call with confirm=false to preview the recipe, then call with confirm=true only after the user explicitly asks to save it. Requires a linked HelloFood account.","inputSchema":{"type":"object","required":["recipe_ref","can_save"],"properties":{"notes":{"type":"string","default":""},"confirm":{"type":"boolean","default":false},"can_save":{"type":"boolean"},"servings":{"type":"integer","default":0},"image_url":{"type":"string","default":""},"recipe_ref":{"type":"object","additionalProperties":true},"source_url":{"type":"string","default":""},"source_name":{"type":"string","default":""},"dietary_tags":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"default":null},"ready_in_minutes":{"type":"integer","default":0},"calories_per_serving":{"type":"integer","default":0}}},"title":"Save a recipe","logicalName":"save_recipe","displayName":"Save a recipe","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"list_saved_recipes","description":"List recipes in the linked user's HelloFood cookbook. Use this when the user asks for saved recipes, bookmarks, or previously saved meal ideas. Requires a linked HelloFood account.","inputSchema":{"type":"object","properties":{"limit":{"type":"integer","default":20}}},"title":"List saved recipes","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"list_saved_recipes","displayName":"List saved recipes"},{"name":"ask_dietary_question","description":"Ask a dietary or nutrition question grounded in evidence from FDA, USDA, and clinical sources. Works without an account for general knowledge. With a linked HelloFood account, answers are personalized to the user's dietary profile. Examples: 'What are hidden sources of gluten?', 'Is tempeh high in histamine?', 'Can I eat grapefruit while on statins?'","inputSchema":{"type":"object","required":["question"],"properties":{"domains":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"default":null},"question":{"type":"string"}}},"title":"Answer a dietary question","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"ask_dietary_question","displayName":"Answer a dietary question"},{"name":"describe_dietary_graph","description":"Get a summary of the linked user's dietary setup: restrictions, preferences, avoid-ingredients, meal stats, rating count, and identified gaps. Covers the whole household by default when the account has synced members; pass household_scope only when the user explicitly asked about one person. Requires a linked HelloFood account.","inputSchema":{"type":"object","properties":{"household_scope":{"type":"string","default":""}}},"title":"Summarize dietary profile","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"describe_dietary_graph","displayName":"Summarize dietary profile"},{"name":"get_meal_history","description":"Retrieve the linked user's meal history. Defaults to last 7 days. Supports windows: today, yesterday, last_7_days, last_30_days, or custom start_date/end_date (ISO format). Requires a linked HelloFood account.","inputSchema":{"type":"object","properties":{"window":{"type":"string","default":"last_7_days"},"end_date":{"type":"string","default":""},"start_date":{"type":"string","default":""}}},"title":"Get meal history","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_meal_history","displayName":"Get meal history"},{"name":"get_food_preferences","description":"Get a summary of the linked user's food preferences: liked/disliked foods and frequently visited restaurants. Requires a linked HelloFood account.","inputSchema":{"type":"object","properties":{}},"title":"Get food preferences","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_food_preferences","displayName":"Get food preferences"},{"name":"evaluate_menu","description":"Evaluate up to 15 menu items against the linked user's household dietary profiles in one call. Provide the restaurant_id (from lookup_restaurant) and a list of item names. Returns items categorized as generally_safer, risky, avoid, or unable_to_evaluate with confidence and allergen detail; each item's headline verdict is the household's worst case and member_annotations says which member drove it. Accounts with synced members are evaluated household-wide by default — pass household_scope only wh","inputSchema":{"type":"object","required":["restaurant_id","item_names"],"properties":{"item_names":{"type":"array","items":{"type":"string"}},"restaurant_id":{"type":"string"},"household_scope":{"type":"string","default":""}}},"title":"Evaluate multiple menu items","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"evaluate_menu","displayName":"Evaluate multiple menu items"},{"name":"suggest_recipes","description":"Get a recipe suggestion optimized for the linked user's dietary constraints. Provide a recipe title and optionally specific ingredients or constraints. Returns ingredients, instructions, substitutions with explanations. Optimizes for the whole household by default when the account has synced members; pass household_scope only when the user explicitly named who this is for. Requires a linked HelloFood account.","inputSchema":{"type":"object","required":["recipe_title"],"properties":{"servings":{"type":"integer","default":4},"constraints":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"default":null},"ingredients":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"default":null},"recipe_title":{"type":"string"},"household_scope":{"type":"string","default":""}}},"title":"Create a personalized recipe","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"suggest_recipes","displayName":"Create a personalized recipe"},{"name":"log_meal","description":"Record what the user ate. Uses a two-phase confirmation protocol: first call with confirm=false to get a preview, then show the preview to the user and ask for confirmation. Only call with confirm=true after the user explicitly confirms. Pass household_scope with a member id to log the meal for that household member; otherwise it is recorded for the account owner. Requires a linked HelloFood account.","inputSchema":{"type":"object","required":["food_item"],"properties":{"notes":{"type":"string","default":""},"confirm":{"type":"boolean","default":false},"food_item":{"type":"string"},"meal_type":{"type":"string","default":"meal"},"household_scope":{"type":"string","default":""},"restaurant_name":{"type":"string","default":""}}},"title":"Log a meal","logicalName":"log_meal","displayName":"Log a meal","annotations":{"untrustedContentHint":true,"readOnlyHint":true}}],"toolSource":"directory_preview","agentAction":"both","installLinks":[{"id":"cursor","label":"Cursor","href":"cursor://anysphere.cursor-deeplink/mcp/install?name=hello-food-Safer-Food-Choices-for-Dietary-Restrictions&config=eyJ1cmwiOiAiaHR0cHM6Ly9hcGkuaGVsbG8uZm9vZC9tY3AifQ%3D%3D"},{"id":"vscode","label":"VS Code","href":"vscode:mcp/install?%7B%22name%22%3A%22hello-food-Safer-Food-Choices-for-Dietary-Restrictions%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fapi.hello.food%2Fmcp%22%7D"},{"id":"vscode-insiders","label":"VS Code Insiders","href":"vscode-insiders:mcp/install?%7B%22name%22%3A%22hello-food-Safer-Food-Choices-for-Dietary-Restrictions%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fapi.hello.food%2Fmcp%22%7D"},{"id":"claude-web","label":"Claude.ai","href":"https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=hello.food+%7C+Safer+Food+Choices+for+Dietary+Restrictions&connectorUrl=https%3A%2F%2Fapi.hello.food%2Fmcp"},{"id":"codex","label":"Codex","copyText":"codex mcp add \"hello-food-Safer-Food-Choices-for-Dietary-Restrictions\" --url \"https://api.hello.food/mcp\""},{"id":"chatgpt","label":"ChatGPT","href":"https://www.mcpbundles.com/docs/integrations/chatgpt"}],"catalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/hello-mcp-92e4d9707b","callUrl":"https://www.mcpbundles.com/api/directory/v1/servers/hello-mcp-92e4d9707b/tools/{tool}","mcpServerUrl":"https://api.hello.food/mcp","liveCatalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/hello-mcp-92e4d9707b?live=1"}