编程

Open Food Facts API

试用

Interact with the Open Food Facts API to search for packaged food products by barcode and retrieve nutritional information. Use when the user asks to look up...

它能做什么

This skill provides access to the Open Food Facts database - a global, crowd-sourced food products database with strong European coverage.

技能文档

Open Food Facts API Skill

This skill provides access to the Open Food Facts database - a global, crowd-sourced food products database with strong European coverage.

Key Features

  • Global coverage: Products from 150+ countries, with strong European presence
  • No API key required: Free to use for basic queries
  • Barcode lookup: Look up products by EAN/UPC barcode
  • Multi-language support: Product data available in many languages
  • Real-time data: Community-maintained with frequent updates

Important Limitations

Packaged Products Only: Open Food Facts only contains products with barcodes (EAN/UPC). This means:

  • ✅ Packaged foods: soft drinks, chocolate, bread, frozen meals, etc.
  • ❌ Fresh produce without packaging: meat from the butcher, loose vegetables, fresh seafood
  • ❌ Generic ingredients: "apples", "chicken breast", "rice" (unless packaged by a brand)

Data Quality: Since this is crowd-sourced data, accuracy and completeness vary by product. Some products may have incomplete nutritional information.

Rate Limits:

  • 100 requests/minute for product lookups (by barcode)
  • 10 requests/minute for search queries
  • No limits on write operations (contributing data)

Geographic Bias: While global, coverage is strongest in Europe (especially France, where the project started) and North America.

API Usage

All API requests are made to https://world.openfoodfacts.org/api/v2.

Commands

Search Products

Search for food products by name or keyword.

Usage:

./skills/openfoodfacts/scripts/off_search.sh "search query" [page_size]

Parameters:

  • search query (required): Keywords to search for (e.g., "chocolate bar")
  • page_size (optional): Number of results (1-100, default: 10)

Example:

./skills/openfoodfacts/scripts/off_search.sh "chocolate bar"
./skills/openfoodfacts/scripts/off_search.sh "oat milk" 20

Response Format: Returns a formatted table with:

  • Product name
  • Barcode
  • Brand

Get Product by Barcode

Retrieve detailed product information including full nutritional data using a barcode (EAN/UPC).

Usage:

./skills/openfoodfacts/scripts/off_product.sh 

Parameters:

  • barcode (required): The EAN-13 or UPC barcode number (usually 8-13 digits)

Example:

./skills/openfoodfacts/scripts/off_product.sh 5000159325954
./skills/openfoodfacts/scripts/off_product.sh 7622210449283

Response Format: Returns formatted output with:

  • Product name and brand
  • Packaging and quantity
  • Nutritional information per 100g
  • Ingredients (when available)
  • Allergens and labels
  • Nutri-Score (if available)
  • NOVA group (food processing classification)

Finding Barcodes

Barcodes (EAN-13, UPC) are typically found:

  • On the product packaging, below the barcode lines
  • On receipts or invoices
  • In grocery store apps after scanning
  • On product websites

Barcodes are numeric and usually 8-13 digits long.

Error Handling

Common errors:

  • Product not found: Barcode doesn't exist in database
  • Rate limit exceeded: Too many requests - wait before retrying
  • Malformed barcode: Barcode format is invalid

Workflow Examples

Example 1: Find nutrition for a packaged product

  1. Find the barcode on the product packaging (12-13 digit number below the barcode lines)
  2. Lookup the product: ./skills/openfoodfacts/scripts/off_product.sh 5000159325954

Example 2: Search for a product type

  1. Search by name: ./skills/openfoodfacts/scripts/off_search.sh "dark chocolate"
  2. Note the barcode from results
  3. Get full details: ./skills/openfoodfacts/scripts/off_product.sh

Nutri-Score Reference

Products may include a Nutri-Score grade:

  • A (dark green): Best nutritional quality
  • B (light green): Good nutritional quality
  • C (yellow): Average nutritional quality
  • D (orange): Poor nutritional quality
  • E (red): Worst nutritional quality

NOVA Classification

Indicates level of food processing:

  • Group 1: Unprocessed/minimally processed foods
  • Group 2: Processed culinary ingredients
  • Group 3: Processed foods
  • Group 4: Ultra-processed foods

Notes

  • Results are formatted for readability (no raw JSON dumps)
  • Nutritional values are typically per 100g or per serving
  • Ingredients may be listed in multiple languages
  • Some products have photos available via the website

相关技能

以 AI 机器人身份加入视频会议,提供语音、虚拟形象与屏幕共享四种模式。

作者 johnpatternai22 次安装8 星标

把自然语言描述转为结构化 JSON,并由 mcp-diagram-generator MCP 服务生成 Draw.io、Mermaid 或 Excalidraw 图表文件。

作者 nssa.io1.0k 次安装47 星标

从 AdMapix API 拉取广告创意、应用、榜单和收入预估等数据,原样返回结构化 JSON。

作者 fly0pants4.3k 次安装296 星标

诊断生产力系统反复失效的根因,给出最小干预——容量测算、瓶颈定位、可靠的本地记录。

作者 Iván855 次安装69 星标

在本地磁盘以分类纯 Markdown 文件保存需要长期留存的事实,与智能体内置记忆并存。

作者 Iván559 次安装18 星标

patello 的更多技能

浏览全部技能

解析 Avanza 交易 CSV,计算 TWRR 与 Modified Dietz 收益率,并在本地 SQLite 数据库中跟踪组合持仓。

作者 patello25 次安装

Fetch real-time SL (Stockholm public transport) departures and deviation information using a Python CLI tool. Use when checking departures, querying transit delays, or saving favorite sites and routes for quick status checks.

作者 patello16 次安装

Process bank transaction CSV exports (Nordea, ICA), auto-categorize transactions using configurable rules, manage transaction links, and generate analytical database views.

作者 patello10 次安装

Guides users through configuring OpenClaw, Nginx, and GitHub Actions to establish a secure, autonomous GitHub integration pipeline.

作者 patello21 次安装

Log and track daily calorie intake, macronutrients, body weight, and waist measurements locally in a SQLite database. Provides granular statistics, weekly averages, and future calorie budgets.

作者 patello5 次安装

Interact with the USDA FoodData Central (FDC) API to search for foods and retrieve detailed nutritional information. Use when the user asks to look up food n...

作者 patello17 次安装