Agent Chef
Agent Chef: планирование семейных ужинов и список покупок через агента
Что умеет
- Предлагать и импортировать рецепты для еженедельного голосования
- Собирать голоса и отзывы участников по ссылкам
- Формировать список покупок за вычетом содержимого кладовки
- Управлять составом семьи, предпочтениями и кладовкой
- Планировать регулярный запуск цикла два раза в день
Какие данные видит
Ассистент видит рецепты, голосования и данные о составе домохозяйства пользователя, действует с его OAuth-доступом или API-ключом.
Нужен ли аккаунт
Не нужен: сервер работает без входа
Agent Chef каждую неделю предлагает десять вариантов ужина, собирает голоса и отзывы домочадцев по личным ссылкам без регистрации, а из победителей строит список покупок за минусом того, что уже есть в кладовке. MCP-сервер запускает этот цикл по расписанию и готовит корзину, которую пользователь подтверждает перед оформлением заказа.
Как подключить
Как подключить Agent Chef к Claude
Адрес сервера, который нужно вставить в настройках Claude:
https://agent-chef--agent-chef.run.tools
- Откройте Claude (сайт claude.ai или приложение для компьютера).
- Перейдите в Настройки → Коннекторы (в английском интерфейсе: Settings → Connectors).
- Нажмите Добавить пользовательский коннектор (Add custom connector).
- Вставьте адрес сервера, скопированный ниже, в поле URL удалённого MCP-сервера и нажмите Добавить.
- В чате нажмите + → Коннекторы и включите новый коннектор.
Пользовательские коннекторы доступны на тарифах Free, Pro, Max, Team и Enterprise. На Free можно добавить только один. В Team и Enterprise коннектор сначала добавляет владелец организации в Настройки организации → Коннекторы.
Авторизация
После нажатия Добавить откроется окно входа в сервис. Войдите под своим аккаунтом и подтвердите доступ. Пароль Claude не видит.
Как подключить Agent Chef к ChatGPT
Адрес сервера, который нужно вставить в настройках ChatGPT:
https://agent-chef--agent-chef.run.tools
- Откройте ChatGPT в браузере (chatgpt.com). Нужен тариф Plus, Pro, Business, Enterprise или Edu.
- Один раз включите режим разработчика: Настройки → Приложения → Дополнительные настройки → Режим разработчика (Settings → Apps → Advanced settings → Developer mode).
- Откройте Настройки → Коннекторы и нажмите Создать (Create).
- Заполните форму: Название (любое), Описание (одна фраза, что делает сервис), URL MCP-сервера (скопируйте ниже).
- В поле Аутентификация выберите OAuth, если сервис требует вход, иначе Нет. Нажмите Создать.
- В новом чате откройте + → Приложения/Коннекторы и включите коннектор.
Название раздела у OpenAI менялось (Connectors → Apps/Plugins). Если пункт называется иначе, ищите «режим разработчика» в настройках. В рабочих пространствах Business/Enterprise администратор должен разрешить пользовательские коннекторы.
Авторизация
При первом использовании ChatGPT откроет окно входа в сервис. Войдите и подтвердите доступ.
Как подключить Agent Chef к Cursor
Адрес сервера, который нужно вставить в настройках Cursor:
https://agent-chef--agent-chef.run.tools
Быстрый способ: нажмите кнопку Открыть в Cursor ниже, Cursor сам предложит добавить сервер.
Вручную:
- В Cursor откройте Settings → Cursor Settings → MCP и нажмите Add new global MCP server.
- Вставьте JSON, скопированный ниже, в открывшийся файл
~/.cursor/mcp.json(для одного проекта:.cursor/mcp.jsonв корне проекта). - Сохраните файл. Сервер появится в списке MCP; при необходимости пройдите авторизацию по кнопке рядом с ним.
Авторизация
Если сервис требует вход, рядом с сервером в списке MCP появится кнопка авторизации.
Список инструментов сервера (34)
Технические названия из tools/list. Нужны только разработчикам.
| run_agent_chef | The one call to make when the user says 'run agent chef' (or run the app / plan dinner / do the weekly thing). Returns the operating manual plus the checklist of tool calls that are due right now. Execute them in order, then call next_actions again until it returns no actions. Stop before any checkout. |
| record_schedule | Call after creating (or changing) the recurring 'Run Agent Chef.' task in your own scheduler, with a one-line description, e.g. 'Claude scheduled task, daily 9:00 and 18:00 America/Los_Angeles'. Lets the app stop reminding you and shows the owner that the loop is automated. |
| dismiss_setup_checklist | Hides the 'Get set up' card on the household dashboard (e.g. when the owner says they don't need it). Pass show=true to bring it back. |
| get_connected_agents | Agents connected to this household via OAuth sign-in (Claude, ChatGPT…), with when they connected and last used. API keys are separate. |
| revoke_connected_agent | Revoke an OAuth-connected agent's access (client_id from get_connected_agents). It must sign in again to reconnect. |
| next_actions | START HERE. Returns the current phase and an ordered checklist of tool calls that are due right now (propose, send ballot, remind non-voters, add options for feedback, lock in, shop), with why and the arguments/message text to use. Execute them, then call again until empty. Idempotent and time-aware; safe to call on a schedule. |
| get_instructions | The full operating manual for agents: the run loop, phases, how to write recipes, messaging and safety rules. Read once per session. |
| get_recipe_preferences | Household name, recipe preferences prompt (diet, allergies, dislikes, cuisines, time budget), shopping preferences prompt (brands, organic, store quirks) plus settings: plan_day, servings, grocery_store, recipes_per_week, votes_per_member. |
| update_recipe_preferences | Update any subset of the preferences prompt and settings. Omitted fields are unchanged. |
| get_members | List household members with contact info and their personal vote links. |
| upsert_member | Add a household member or update phone/email. Name is the key (case-insensitive). |
| remove_member | Remove a household member by name (their votes and ratings stay attached to past weeks). The owner can't be removed. |
| get_ingredients | Pantry/fridge/spice inventory the household already has. Used to trim the shopping list. |
| update_ingredients | Add/refresh items (upsert by name), remove items, or replace the whole inventory. |
| get_favorite_recipes | Recipes marked as household favorites, with ratings. Good candidates to re-propose by recipe_id. |
| favorite_recipe | Mark (or unmark) a recipe as a household favorite. |
| get_recipe | Full details for one recipe: ingredients, steps, servings, source, tags, ratings, comments, how often it's been cooked, and a link to its page. |
| search_recipes | Every recipe the household has ever had proposed, with ratings and cook counts. Filter by text, favorites, or tag. Use recipe_id from here with propose_recipes to re-propose. |
| update_recipe | Edit a stored recipe: fix an ingredient, add steps, change servings, tags, image or source. Only provided fields change. |
| import_recipe | Fetch a recipe page (most cooking sites) and save it to the library with its real photo, ingredients, and steps. Returns the recipe; pass its recipe_id to propose_recipes or add_candidates to put it on a ballot. |
| get_past_recipes | Every recipe selected for a past week, newest first, with week, status, and ratings/comments. Use to avoid repeats and learn what landed. |
| get_current_week | Where the cycle stands: latest week + status (voting/selected/ordered/done), candidates with tallies, who has/hasn't voted, selected recipes, pending_feedback. Call this first. |
| propose_recipes | Start a weekly cycle: store the candidate recipes (normally 10) and return numbered candidates, a ballot_text (with a {vote_link} placeholder for message_group), and each member's vote link. Re-calling for the same week_start replaces the candidates. |
| add_candidates | Append extra recipes to the current voting ballot (positions continue after the existing ones; votes are kept; 15 max). Use in response to ballot_feedback from get_current_week; open feedback is marked addressed. Follow up with message_group so voters know new options are up. |
| add_ballot_feedback | Record a member's comment about the current ballot (optionally about one candidate), e.g. relayed from a text message. Members can also do this themselves on their vote page. |
| message_group | Send SMS/MMS or email to household members. '{vote_link}' in the message becomes each member's personal voting link. Channel 'auto' texts members with a phone and emails the rest. Providers now: {"sms":"dry-run","email":"dry-run"} (dry-run = logged only). |
| add_vote | Record one member's votes for the current week (replaces their earlier votes). Accepts recipe_ids or ballot positions. Unknown member names are created. |
| get_past_votes | Historical ballots: per week, every candidate with vote count, voters, and whether it was selected. |
| set_this_weeks_recipes | Lock in the winners. With no recipe_ids, picks the top N (recipes_per_week) by votes, ties broken by ballot order. Moves the week to 'selected' and returns the shopping list. |
| reopen_voting | Undo set_this_weeks_recipes: clears the winners and returns the week to 'voting'. Existing votes are kept. Use if winners were locked in too early. |
| set_voting_deadline | One-off override of when the current ballot closes: an ISO timestamp, or extend_hours from the current deadline. Normally the deadline comes from the household schedule (vote_close_day/time); changing those via update_recipe_preferences re-syncs the current week. |
| rate_recipe | Record post-cook feedback (1-5 + comment) for a member. When every selected recipe of that week has feedback the week becomes 'done'. |
| assemble_online_grocery_order | Shopping list for the selected recipes minus ingredients on hand, grouped by item with quantities and which recipe needs it, plus the preferred store. Drive the browser to fill the cart; stop before checkout for approval; then call record_grocery_order. |
| record_grocery_order | Log the placed order and (by default) add purchased items to ingredients on hand. Moves the week to 'ordered'. |