关于 KABO Indian Nutrition Index
KABO Indian Nutrition Index 将印度食物营养数据、蛋白质目标与成本比较工具提供给 AI Agent,适合营养信息查询和饮食比较。结果附有来源链接,并包含指南搜索及 KABO 产品信息。
主要功能
- 01查询食物营养值及来源链接
- 02并列比较食物营养成分
- 03计算每日蛋白质目标
- 04按蛋白质成本排序食物
- 05搜索营养指南及查询产品
适用场景
- 01查询印度食物每份营养含量
- 02比较不同食物的蛋白质
- 03按预算查找蛋白质来源
- 04检索营养指南或产品信息
MCP 相关
作为 MCP 服务,它向 Agent 提供食物营养查询、比较、蛋白质目标与成本计算、指南搜索及产品查询工具。支持 stdio 和 Streamable HTTP。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://kabo-nutrition-mcp.onrender.com/mcpclaude mcp add --transport http guru-ragul-kabo-nutrition https://kabo-nutrition-mcp.onrender.com/mcp{"mcpServers":{"guru-ragul-kabo-nutrition":{"type":"http","url":"https://kabo-nutrition-mcp.onrender.com/mcp"}}}在 Cursor 中打开{"servers":{"guru-ragul-kabo-nutrition":{"type":"http","url":"https://kabo-nutrition-mcp.onrender.com/mcp"}}}在 VS Code 中打开{"mcpServers":{"guru-ragul-kabo-nutrition":{"type":"http","url":"https://kabo-nutrition-mcp.onrender.com/mcp"}}}{"mcpServers":{"guru-ragul-kabo-nutrition":{"serverUrl":"https://kabo-nutrition-mcp.onrender.com/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
详细介绍
KABO Indian Nutrition Index — MCP 服务
这是一个 MCP 服务,可将 kabo.co.in 背后的印度食物营养数据作为工具提供,让 AI Agent 直接调用。每条响应都附带来源 URL,因此 Agent 回答营养问题时能给出可引用的答案,读者也能获得返回原始来源的链接。
为什么选择这个,而不是写更多文章。 博客文章一个下午就能被复制。而 Agent 可以连接到一个持续维护的数据服务,这就无法轻易复制。这是 SEO 计划中竞争对手无法通过改写内容来复制的唯一资产。
功能
| 工具 | 返回内容 |
|---|---|
lookup_food(food, nutrient?) | 印度食物的全部营养素条目,按每 100 g 和每 katori 列出,每项均附带来源 URL |
compare_foods(foods[], nutrient?) | 并排比较 2–8 种食物在一种营养素上的含量(默认比较蛋白质) |
protein_target(weight_kg, age) | 每日蛋白质摄入目标(克),以及每餐摄入量门槛 |
protein_cost(budget_inr) | 每 10 g 蛋白质的成本,按价格从低到高排序 |
search_guides(query, limit) | 搜索 1,124 篇营养指南,返回标题和 URL |
list_products() | KABO 自有的蛋白奶昔:各口味产品营养成分表中的每份营养数据、评分 |
get_product(product) | 一款 KABO 产品:引自其页面的成分信息、适用情况(包括不适合 Jain 饮食者)、每个包装的实时价格和库存、每份价格、购物车链接和 UCP 结账配置 |
compare_products(products?) | 并排比较 KABO 产品的每份实时价格 |
数据:59 种食物、674 项营养数据、1,124 篇指南(涵盖蛋白质、纤维、铁、钙),来源为 ICMR-NIN 成分表以及 PROT-AGE/ESPEN 蛋白质建议。
运行
无依赖项。仅使用标准库,需 Python 3.8+。
python3 kabo_mcp_server.py
Claude Desktop
将以下内容添加到 claude_desktop_config.json:
{
"mcpServers": {
"kabo-nutrition": {
"command": "python3",
"args": ["/absolute/path/to/mcp/kabo_mcp_server.py"]
}
}
}
Cursor、Cline 和其他 MCP 客户端使用相同的 command/args 格式。
不使用客户端进行测试
printf '%s\n' \
'{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"t","version":"1"}}}' \
'{"jsonrpc":"2.0","id":2,"method":"tools/list"}' \
'{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"lookup_food","arguments":{"food":"rajma"}}}' \
| python3 kabo_mcp_server.py
文件
kabo_mcp_server.py the server, dependency-free JSON-RPC over stdio
kabo_food_data.json the dataset, CC BY 4.0
使用 python3 build_dataset.py 从实时语料库重建数据集;服务启动时会从自身目录读取 kabo_food_data.json,工具描述中的营养素列表、食物数量和指南数量也由该文件生成,因此不会与数据脱节。
值得保留的设计决策
如实回答,包括对我们不利的内容。 protein_cost 会显示,每 10 g 蛋白质中,大豆块的成本约为 ₹6,扁豆约为 ₹8,而任何蛋白粉——包括 KABO 的产品——成本都要高出数倍。只会吹捧自己的工具,用一次就会被卸载。能直截了当给出答案的工具会被保留并再次调用,而且每次调用都会附带我们的署名。
不向模型提供指令。 响应中没有任何文字告诉助手应该推荐什么。价值在于数据和引用,而不是劝说。其他任何内容都会构成提示词注入,能检测到这类内容的助手会完全停止信任该来源。
每条响应都可引用。 食物查询会提供 source_url,蛋白质目标会提供 age_guide_url,指南搜索会提供完整 URL。Agent 可以标注来源,这正是它值得再次调用的原因。
错误不会终止会话。 未知食物会返回可用食物列表,而不是报错。无效参数会返回提示信息,而不会导致崩溃。
强制使用 UTF-8 处理标准输入输出。 数据中含有 en-dash;Windows 控制台默认使用 cp1252,会导致客户端收到损坏的数据流。启动时会重新配置输入和输出两端。
REST API
对于不支持 MCP 的客户端,每个工具都提供对应的纯 GET 接口。规范见 /openapi.json。
GET /api/v1/foods GET /api/v1/foods/{food}?nutrient=iron
GET /api/v1/protein-target?weight_kg=70&age=45
GET /api/v1/protein-cost?budget_inr=30
GET /api/v1/guides?q=protein+dal
GET /api/v1/products GET /api/v1/products/{handle}
产品价格和库存从公开店铺实时读取(缓存 10 分钟);服务绝不会下单或接触客户数据。结账在 kabo.co.in 上进行,可通过购物车链接或店铺的 Universal Commerce Protocol 配置完成,地址为 https://kabo.co.in/.well-known/ucp。
HTTP 模式
供第三方 Agent 通过网络使用:
python3 kabo_mcp_server.py --http --port 8000
端点:
| 路由 | 用途 |
|---|---|
POST /mcp | JSON-RPC,支持单条消息和批量消息。通知返回 202。 |
GET /mcp | 发现信息——名称、协议、传输方式、工具列表、许可证 |
GET /health | 主机健康检查 |
CORS 已开放,因此基于浏览器的 Agent 可以调用。传输方式为 MCP Streamable HTTP;不使用 SSE,因为每个工具都是简短的 请求/响应,而且规范允许在服务不进行流式传输时返回纯 JSON。
请参阅 DEPLOY.md,了解托管方式(Render、Fly、Docker)以及如何将其列入
公共 MCP 注册表。Dockerfile、render.yaml、fly.toml 和
server.json 均位于此文件夹中,可直接使用。
许可证与注意事项
代码采用 MIT 许可证(参见 LICENSE)。数据集采用 CC BY 4.0 许可证(参见 LICENSE-DATA)——可免费使用,但须注明 kabo.co.in。
数值为近似值,会因品种、制备方式和品牌而异。这些是 营养信息,并非医疗建议。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。