关于 indian-food-nutrition-mcp
indian-food-nutrition-mcp 是供 AI 助手记录印度饮食并查询营养的 MCP 服务,数据采用 IFCT 2017 和 USDA。它支持文字或照片记录、印度家常计量单位,并将数据保存在本机 SQLite 与 CSV 文件中。
主要功能
- 01搜索 IFCT 与 USDA 食物
- 02按家常单位记录餐食
- 03查询每日营养总量
- 04按日期范围查看摄入历史
- 05编辑或删除记录
- 06从图片链接获取餐食照片
适用场景
- 01记录印度家常餐食与份量
- 02查询当天蛋白质和热量摄入
- 03回顾一周饮食数据以辅助指导
- 04通过餐食照片记录饮食
MCP 相关
作为 MCP 服务,它向客户端提供食物搜索、餐食记录、每日与历史查询、记录编辑和图片获取工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
indian-food-nutrition-mcp
你的 AI 助手终于能正确计算印度食物的热量了。
一个 MCP 服务,让你通过 Claude(很快也将支持 ChatGPT)用自然语言记录餐食:“2 张烙饼和一碗扁豆汤”,也可以直接上传餐盘照片。热量和宏量营养素数据来自印度官方食物成分数据(IFCT 2017,国家营养研究所),其他食物则来自 USDA,而非那些把烙饼当成玉米饼的以美国为中心的数据库。
为什么要做这个项目
所有热门的热量数据库都基于 USDA 数据。对于家常印度菜,这些数据并不准确:油用错了,烹饪方式不对,没有小碗计量单位,也没有蒸米糕。那款印度食物数据库很出色的应用却把数据锁在订阅服务后面,而且没有 API。与此同时,印度政府已经公布了真实数据。本项目将这些数据接入你已经在使用的 AI,并让 AI 记住你实际吃过什么。
- 准确涵盖印度食物: IFCT 2017,由海得拉巴 NIN 对六个印度地区进行测量。包括酥油、全麦粉、扁豆和地区品种。
- 也涵盖其他食物: 7,800 多种 USDA 食物和饮料(公有领域)。
- 家用计量单位: 可按碗、盘、个、杯记录。必须填写数量;模型会询问,而不是猜测份量。
- 照片记录: 给 Claude 查看你的餐盘照片(通过
fetch_image上传或提供 URL)。 - 让 AI 拥有记忆:
get_history会返回你的真实摄入量,让模型根据数据而非感觉为你提供指导(“你在训练日的蛋白质摄入偏低”)。 - 本地优先且注重隐私: 数据存储在你设备上的 SQLite 中,并始终同步到
~/.nutrition-mcp/meals.csv。无需账户、无需云端、无遥测。
快速开始(Claude Desktop)
npm install -g indian-food-nutrition-mcp
在 claude_desktop_config.json 中添加配置(Settings → Developer → Edit Config):
{
"mcpServers": {
"nutrition": {
"command": "indian-food-nutrition-mcp"
}
}
}
重启 Claude Desktop,然后直接对话:
“记录早餐:3 个蒸米糕和一小碗桑巴汤” “我今天摄入了多少蛋白质?” “这是我的午餐照片,帮我记录一下” “看看我上周的饮食,告诉我有哪些问题”
工具
| 工具 | 功能 |
|---|---|
search_food | 搜索 8,300 多种食物(IFCT + USDA),显示每 100 克的热量、蛋白质、碳水化合物、脂肪和纤维 |
log_meal | 记录食物项目,数量和家用计量单位为必填项;宏量营养素数据来自数据库 |
get_day | 查看某一天的记录和总摄入量 |
get_history | 查看一段时间内每天的总摄入量,为 AI 提供指导所需的上下文 |
edit_entry / delete_entry | 更正错误,让历史记录保持准确 |
fetch_image | 从 URL 获取食物照片,让模型查看并记录 |
数据与许可
代码采用 AGPL-3.0-or-later 许可。随附数据:IFCT 2017 + USDA SR Legacy(公有领域)。代码支持 INDB 熟食数据集(扁豆汤、薄饼、蒸米糕等菜品及其份量),但在作者授予许可前,不会重新分发该数据集;个人可使用 npm run build:indb 在本地生成。完整来源信息:DATA_SOURCES.md。
托管版本(ChatGPT、移动设备、零配置)
此本地服务目前可与 Claude Desktop 搭配使用。即将推出托管版本,可作为 ChatGPT 连接器使用,并在多台设备间同步。提交标题为“hosted”的议题,或关注版本发布,以便尽早体验。
存储
~/.nutrition-mcp/nutrition.db(SQLite,WAL)+ ~/.nutrition-mcp/meals.csv(自动维护的镜像文件)。可通过 NUTRITION_DB_PATH / NUTRITION_CSV_PATH 覆盖。
致谢
- 《印度食物成分表 2017》,海得拉巴国家营养研究所(通过
@nodef/ifct2017包提供,采用 AGPL 许可) - USDA FoodData Central,SR Legacy
- 印度营养素数据库(Jaacks Lab):代码已支持,数据许可待定
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。