FoodChecker

Is this food healthy? A 0-100 score from nutrition, additives and processing (Open Food Facts).

我該用這個嗎

品質與安全性

A
說明品質
90%
結構描述完整度
92%
命名品質
95%
汙染風險
100%
權限相符程度
100%
協定合規性
100%

根據工具定義與協定合規性的自動化分析。

上下文成本

~1,175Token(工具定義)
~2.1 KB典型回應大小
中等的注意力影響(128k 上下文的 0.92%)

這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。

安裝

一鍵安裝

將以下內容加入你的 `claude_desktop_config.json` 檔案:

{
  "mcpServers": {
    "foodchecker": {
      "url": "https://foodchecker-ebon.vercel.app/mcp"
    }
  }
}

遠端端點

https://foodchecker-ebon.vercel.app/mcpstreamable-http

它能做什麼

工具清單

工具(4)

🟢 唯讀🟡 寫入🔴 刪除⚪ 未知
🟢check_food(barcode, query, country)

Looks up a packaged food or drink in Open Food Facts (3M+ products) by barcode or by name and returns a 0-100 health score (Excellent / Good / Poor / Bad) with the reasons: nutrition (Nutri-Score), additives and their risk level, and how processed it is. For questions such as whether a product is healthy. A barcode gives the most precise match.

輸入結構描述

{
  "type": "object",
  "properties": {
    "barcode": {
      "description": "EAN/UPC barcode digits, e.g. 3017620422003.",
      "type": "string"
    },
    "query": {
      "description": "Product name, ideally with the brand, e.g. 'Nutella hazelnut spread'. Used when there is no barcode.",
      "type": "string"
    },
    "country": {
      "description": "Optional country to prefer when searching by name, e.g. 'united-states', 'france', 'united-kingdom'.",
      "type": "string"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢analyze_label(product_name, brand, ingredients_text, nutrition, is_drink, ...)

Scores a food from its label: the ingredient list and/or the nutrition facts, for example from a photo of the packaging or pasted text, including products that aren't in the database. Most accurate with the ingredient list exactly as printed, including E-numbers and words in brackets. Nutrition values can be per 100 g or per serving (with the serving size). Returns the same 0-100 score and reports any missing data.

輸入結構描述

{
  "type": "object",
  "properties": {
    "product_name": {
      "type": "string"
    },
    "brand": {
      "type": "string"
    },
    "ingredients_text": {
      "description": "The full ingredient list exactly as printed.",
      "type": "string"
    },
    "nutrition": {
      "type": "object",
      "properties": {
        "basis": {
          "type": "string",
          "enum": [
            "per_100g",
            "per_serving"
          ],
          "description": "What the numbers refer to. EU labels are usually per 100 g/ml; US Nutrition Facts are per serving."
        },
        "serving_size": {
          "description": "Serving size in g (or ml for drinks). Required when basis is per_serving.",
          "type": "number",
          "exclusiveMinimum": 0
        },
        "calories_kcal": {
          "type": "number",
          "minimum": 0
        },
        "energy_kj": {
          "type": "number",
          "minimum": 0
        },
        "total_fat_g": {
          "type": "number",
          "minimum": 0
        },
        "saturated_fat_g": {
          "type": "number",
          "minimum": 0
        },
        "trans_fat_g": {
          "type": "number",
          "minimum": 0
        },
        "carbohydrates_g": {
          "type": "number",
          "minimum": 0
        },
        "sugars_g": {
          "description": "Total sugars.",
          "type": "number",
          "minimum": 0
        },
        "added_sugars_g": {
          "type": "number",
          "minimum": 0
        },
        "fiber_g": {
          "type": "number",
          "minimum": 0
        },
        "protein_g": {
          "type": "number",
          "minimum": 0
        },
        "salt_g": {
          "type": "number",
          "minimum": 0
        },
        "sodium_mg": {
          "description": "Sodium in milligrams (US labels). Use salt_g instead if the label shows salt.",
          "type": "number",
          "minimum": 0
        }
      },
      "required": [
        "basis"
      ],
      "description": "The nutrition facts table, copied exactly."
    },
    "is_drink": {
      "description": "True for beverages (milk and plant drinks included). Values are then per 100 ml.",
      "type": "boolean"
    },
    "category": {
      "description": "Nutri-Score family. Use fat_oil_nuts_seeds for oils, butter, nuts and nut butters; cheese for cheese; red_meat for beef, pork or lamb products.",
      "type": "string",
      "enum": [
        "general",
        "beverage",
        "water",
        "cheese",
        "fat_oil_nuts_seeds",
        "red_meat"
      ]
    },
    "fruit_veg_percent": {
      "description": "% of fruit, vegetables and legumes, if the label states it.",
      "type": "number",
      "minimum": 0,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢find_healthier_alternatives(barcode, country, limit)

Finds similar products in the same Open Food Facts category that score clearly higher than the given product, best first, each with its score.

輸入結構描述

{
  "type": "object",
  "properties": {
    "barcode": {
      "type": "string",
      "description": "Barcode of the product to beat."
    },
    "country": {
      "description": "Only suggest products sold in this country, e.g. 'united-states'.",
      "type": "string"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10
    }
  },
  "required": [
    "barcode"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢explain_additive(additive)

Explains what a food additive is, what it does, and its risk level with sources, by E-number (E250) or name (sodium nitrite, Red 40, carrageenan).

輸入結構描述

{
  "type": "object",
  "properties": {
    "additive": {
      "type": "string",
      "description": "E-number or name, e.g. 'E471' or 'Red 40'."
    }
  },
  "required": [
    "additive"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

社群

為此伺服器評分

證據

近期觀測

已驗證未記錄版本4 個工具