食品分析服务

一个基于FastAPI的云托管微服务,用于分析食品成分与用户饮食需求的匹配度,适用于健康应用和自动化工具。

  • by pleytj
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 pleytj/mcp-food-analyzer

使用说明

🧠 MCP服务器-配置文件分析器工具

该项目是一个基于FastAPI构建的云托管、兼容MCP的微服务。它暴露了一个端点,可以根据用户的饮食情况分析食品,非常适合与以下工具一起使用 n8n聊天机器人或健康应用程序。


🚀 这有什么作用

此服务公开一个端点:

POST /mcp/profile_analyzer

它接收一个结构化的JSON正文,其中包含:

  • 用户的饮食概况(过敏、饮食、健康目标、不喜欢)
  • 成分ID列表
  • 每100克的营养价值

它返回:

  • A. score (0–100)
  • flags 表示问题(例如“含有花生”、“高糖”)
  • 总结和解释
  • 智能建议和产品替代方案

🛠️ 使用的工具

工具 目的
快速 API Web API框架
乌维科恩 ASGI服务器运行FastAPI
派丹蒂克 输入/输出数据验证
GitHub 源代码管理
铁路 云托管平台
船员工具 (可选) 用于未来的多代理扩展

🔗 实时网址

目的 URL
✅ Swagger UI(文档/测试界面) https://mcp-food-analyzer-production.up.railway.app/docs
📬 API端点 https://mcp-food-analyzer-production.up.railway.app/mcp/profile_analyzer

🔄 示例请求

POST /mcp/profile_analyzer
Content-Type: application/json
{
  "user_profile": {
    "allergies": ["peanut"],
    "diet": ["vegan"],
    "dislikes": [],
    "health_goals": ["reduce sugar"]
  },
  "ingredients": [
    { "id": "peanut" },
    { "id": "cocoa" }
  ],
  "nutrition_per_100g": {
    "sugars": 18.0
  }
}

🧠 为什么使用MCP?

使用MCP(模型控制协议)结构使我们能够:

  • 将人工智能工具模块化为可调用的API
  • 跨工作流和平台重用相同的逻辑
  • 无需前端更改即可交换模型或提示
  • 稍后扩展到更高级的工具(如GPT-4 Vision或CrewAI代理)

📁 项目结构

/main.py                   # Starts the FastAPI app
/tools/
  └── profile_analyzer.py  # Core analysis logic
/requirements.txt          # Python dependencies

📝 后续步骤

  • 添加更多工具(例如。, /mcp/label_reader)
  • 将此API连接到n8n工作流
  • 为基于GPT的工具添加OpenAI集成
  • 如果需要,使用API密钥保护端点