FoodGen
FoodGen
一个 MCP 服务器,将晚餐请求转换为购物清单 + 食谱,呈现在移动端友好的页面上——可直接保存到 Apple Notater。
“3 人份晚餐(2 个大人和 1 个孩子),足球训练前要快,不要鱼。”
Claude 找到菜品,调用 create_dinner_plan,然后返回一个类似 https://foodgen.instantoffr.com/n/Hxe7gVY_YYqRi2CCeZnV5g 的链接。在手机上:
购物清单按商店部门分组,可在商店中勾选(状态保存在设备上)
食谱,下面包含食材和步骤
“添加到 Notater” → 共享表单 → Notater 将所有内容保存为一条带项目符号列表的笔记
…/n/<id>.txt返回纯文本,…/n/<id>.json返回原始数据
架构
Node 24 + Express,通过 Streamable HTTP 在
/mcp上提供 MCP(无状态——没有会话,一切存储在 SQLite 中)SQLite(
node:sqlite,无原生依赖)位于 Docker 卷中模型编写食谱;服务器进行验证(zod)、保存并发布
方案 URL 是 128 位随机数——不可猜测、不被索引;这就是全部访问控制
MCP 接口
| 保存完整方案,返回链接 |
| ChatGPT 连接器契约(搜索 + 查找) |
| 读回一个方案(id 或 URL) |
| 最近的方案,最新的在前 |
| 永久删除一个方案 |
prompt | “晚餐给……”快捷方式 |
Related MCP server: Recipe Research MCP Server
运行
cp .env.example .env # sjekk PUBLIC_URL
docker compose up -d --buildTLS 和代理由 Nginx Proxy Manager 处理,它已在运行并配置到端口 2400。在代理主机上有一件事值得检查:MCP 响应以 SSE 流式传输,因此缓冲和 60 秒读取超时可能会切断流。请开启 Websockets Support,并可将其添加到 Advanced 选项卡中:
location /mcp {
proxy_pass http://$server:$port;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header Connection "";
proxy_buffering off;
proxy_cache off;
proxy_read_timeout 3600s;
}不使用 Docker 的本地开发:
PUBLIC_URL=http://localhost:2400 npm run dev连接到 Claude 和 ChatGPT
Claude 应用 / claude.ai / Cowork:Settings → Connectors → Add custom connector →
https://foodgen.instantoffr.com/mcp(无身份验证)Claude Code:
claude mcp add --transport http foodgen https://foodgen.instantoffr.com/mcpChatGPT:Settings → Connectors → 在相同地址下添加自定义 MCP 连接器,无需身份验证。服务器按照 OpenAI 契约暴露
search/fetch,因此它像普通连接器一样工作(在已保存的晚餐中搜索/查找,以及 deep research);开启 Developer mode 后,ChatGPT 也可以使用create_dinner_plan创建新的晚餐。
https://foodgen.instantoffr.com 的首页显示相同的说明。
测试
docker compose up -d --build # eller npm start
node test/e2e.mjs # full MCP + HTTP-runde, 26 sjekker环境变量
变量 | 默认值 | |
|
| 公共源;链接由它构建 |
|
| 容器内的 HTTP 端口 |
|
| compose 在哪里发布端口 |
|
| SQLite 文件(卷) |
|
| 删除超过 N 天的方案(0 = 永不) |
This server cannot be deployed
Maintenance
Related MCP Connectors
Scraps Kitchen gives any AI agent a persistent, household-aware kitchen memory. Unlike generic chatbot recall, Scraps maintains structured cooking data: what's in your fridge (with freshness tracking), who you cook for (with allergens, dietary restrictions, and preferences), your recipe collection (with cook notes and per-diner ratings), your shopping list, and your kitchen equipment. 27 tools across 6 domains let agents read kitchen context, suggest meals that respect dietary safety, update the pantry after cooking, and build a history of what works for your household. Every interaction makes the data richer. Cooking history, preference signals, kitchen awareness = better suggestions next time. All tools work via oAuth and a free scraps.kitchen account.
Family meal planning run by your agent: weekly dinners, household votes, grocery list minus pantry.
Household-aware cooking brain: pantry, meal suggestions, dietary safety, recipes, shopping lists.
AI meal plans that fill your Kroger/Instacart cart - pantry-aware lists, all from chat.
Related MCP Servers
- AlicenseDqualityBmaintenanceEnables interaction with Apple Notes via natural language, supporting note creation, search, and retrieval with iCloud integration for seamless note management.31025MIT
- FlicenseNot gradedqualityDmaintenanceEnables recipe search, storage, and meal planning using TheMealDB API. Provides comprehensive recipe discovery, automatic recipe collection management, and custom meal plan creation with detailed cooking instructions and ingredients.1-
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to interact with Mealie for recipe management, meal planning, and shopping list operations. Supports searching and managing recipes, creating meal plans, and generating shopping lists from recipes or meal plans.7MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI assistants to interact with local Apple Calendar, Notes, and Contacts on macOS. Provides tools for creating, reading, updating, and deleting events, notes, and contacts through natural language.MIT