Recall Kitchen

io.github.adamdecaf由 GitHub 帳號 adamdecaf 發布v1.0.1更新於 Oct 27, 2026

US recalls MCP: free API key/signup or x402 $0.025 Base; some tools need key; verify↑limits

已驗證Streamable HTTP可網頁執行網頁搜尋與抓取資料與分析商業與電商

概覽

AI 產生的概覽

Recall Kitchen 讓助理查詢美國產品與車輛召回資訊、以 UPC 或照片辨識產品,並追蹤關注規則與庫存。

可以做什麼
  • 搜尋與閱讀召回:以關鍵字搜尋並可依來源、日期、地區篩選,依 UPC、批號、型號、品名或 VIN 查詢,取得含批號、聯絡資訊與圖片的完整公告
  • 辨識產品:UPC/EAN 查詢、商品目錄與 USDA 品牌食品資訊,以及從公開圖片網址或 base64 圖片進行的測試版拍照搜尋
  • 追蹤產品:新增、列出與移除關注規則及庫存項目,並與目前收錄的召回比對
  • 管理通知:列出召回通知、標記已讀或未讀,並向團隊回報意見
  • 管理帳戶金鑰:以電子郵件註冊,建立、列出與撤銷 API 金鑰
適用情境
適合讓助理確認某項商品、食品、批號或車輛是否有美國召回,或對自己使用或販售的產品維持長期關注。適用於消費安全、零售與庫存類問題,而非一般網頁搜尋。
執行需求
遠端 streamable HTTP 端點,無需本機安裝。可透過 signup 工具或應用程式建立免費 API 金鑰,並以 X-API-Key 或 Authorization: Bearer 傳送。也可匿名使用 x402,在 Base 上以 USDC 按次付費,需 EVM 私鑰。帳戶類工具必須有金鑰;未驗證帳戶約每小時 60 次呼叫,驗證登入後約 600 次。
安裝前請注意
API 金鑰屬於憑證,請勿放入共用設定。匿名 x402 呼叫會按次花費 Base 上的 USDC,並需要 EVM 私鑰,該私鑰同樣敏感。帳戶類工具會寫入資料:新增或移除關注規則與庫存、變更通知已讀狀態、建立或撤銷 API 金鑰,撤銷目前金鑰會導致後續呼叫失敗。註冊需本人確認年齡並接受條款。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Recall Kitchen,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/io.github.adamdecaf%2Frecall-kitchen/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "recall-kitchen": {
      "type": "http",
      "url": "https://app.recallkitchen.com/mcp"
    }
  }
}

README

[Rk Mcp on AI Agents Listing] [Recall Kitchen on mcprush]

rk-mcp

Go client and examples for Recall Kitchen MCP.

Recall Kitchen searches U.S. CPSC, FDA food, FDA MedWatch, USDA, and NHTSA vehicle recalls.

Hosted MCP

Public streamable HTTP: https://app.recallkitchen.com/mcp. Client config: .mcp.json. Docs: recallkitchen.com/docs.

  • Free with API key — mint a key via MCP signup or Integrations. Send X-API-Key: rk_... (required for Grok) or Authorization: Bearer rk_... (Claude/Cursor). Env placeholder: RECALL_KITCHEN_API_KEY.
  • Anonymous x402 — USDC on Base at $0.025/call, no signup.
  • Account tools (watches, inventory, notifications) need a key.
  • Rate limits — about 60 tool calls/hour unverified vs about 600/hour after verified sign-in at app.recallkitchen.com.

Local: http://localhost:8080/mcp. Server card: https://app.recallkitchen.com/.well-known/mcp/server-card.json.

Tool reference: recallkitchen.com/docs/#mcp. Implementation notes: docs/mcp.md.

Auth

Two ways to call tools:

  1. API key (recommended) — free, higher limits. Create a key in the app under Integrations. Send X-API-Key: rk_... (required for Grok) or Authorization: Bearer rk_... (Claude Code, Cursor).
  2. x402 — anonymous USDC on Base (~$0.025 / call). Set X402_EVM_PRIVATE_KEY. Watch, inventory, and notification tools still need an API key.

Grok's HTTP MCP client treats Authorization: Bearer as OAuth. Use X-API-Key for Grok.

toml
# ~/.grok/config.toml[mcp_servers.recall-kitchen]url = "https://app.recallkitchen.com/mcp"enabled = true
[mcp_servers.recall-kitchen.headers]X-API-Key = "rk_..."
bash
export RK_API_KEY=rk_...

Tools

Public (API key or x402)

ToolUse
search_product_recallsKeyword search. Optional source, since/until (YYYY-MM-DD), location, offset, limit (1–100, default 3).
search_recalls_by_identifierExact UPC, product name, or vehicle make and model.
search_product_recalls_by_upcLook up a UPC and match extracted recall UPCs. found=false if unknown.
lookup_productCatalog / USDA branded-food info. Does not search recalls.
search_product_recalls_from_imagePhoto search (beta). Public HTTPS URL, data:image/...;base64 URI, or MCP image content. No local file paths.
get_product_recallFull description and lot codes as printed in the notice, UPCs, models, locations, contacts, image URLs.

Search results truncate descriptions and cap extracted products at 5. Call get_product_recall for the full notice.

location is ANDed with the query. CA matches California / "northern california". United States matches U.S. notices, not Canada/Ontario.

Account (API key required)

list_watch_patterns, add_watch_pattern, remove_watch_pattern, list_inventory, add_inventory_product, remove_inventory_product, check_tracked_products, list_recall_notifications.

Watch patterns use the same syntax as the search box: words are AND, OR is or, -term excludes, "quoted phrase" is a phrase.

Prompts: check_product, check_upc, scan_image (photo, beta), list_vin_campaigns (lists NHTSA campaigns by model year and make; it does not check a specific vehicle). Resources: recall://docs/tools, recall://docs/sources.

Go client

go
cc, err := rkmcp.NewClient(rkmcp.Config{    ServerURL: "https://app.recallkitchen.com/mcp",    APIKey:    os.Getenv("RK_API_KEY"),})recalls, err := cc.SearchProductRecalls(ctx, "contamination", 3)detail, err := cc.GetProductRecall(ctx, recalls[0].ID)hits, err := cc.SearchRecallsByIdentifier(ctx, rkmcp.IdentifierOptions{UPC: "012345678905"})

APIKey is also read from RK_API_KEY or RECALL_KITCHEN_API_KEY. The client sends X-API-Key. Anonymous clients can set EVMPrivateKey / X402_EVM_PRIVATE_KEY instead.

Module: github.com/Recall-Kitchen/rk-mcp/go.

Examples

bash
git clone https://github.com/Recall-Kitchen/rk-mcp.gitcd rk-mcp/examples/goexport RK_API_KEY=rk_...go run ./search_product_recalls -query "spinach" -location Iowago run ./get_product_recall            # searches, then fetches full textgo run ./search_by_identifier -name "infant formula"

See examples/go.

Other clients

  • Grok: X-API-Key header (see above).
  • Claude Code: claude mcp add --transport http recall-kitchen https://app.recallkitchen.com/mcp --header "Authorization: Bearer ${RK_API_KEY}"
  • Cursor: copy .mcp.json (X-API-Key + RECALL_KITCHEN_API_KEY). Authorization: Bearer also works.

Support

[email protected]

來源:README.md,提交 bd5195a

工具

20

add_inventory_product

Add a product to this API key's inventory. Optional category is food, beverage, baby, household, electronics, vehicle, medical_device, drug, cosmetics, pet, or other. Requires a verified account (sign in at https://app.recallkitchen.com with the signup email). Unverified signup keys cannot add inventory.

輸入參數skuname必填brandcategory

add_watch_pattern

Add a recall watch pattern for this API key. Same websearch syntax as search_product_recalls (AND, OR, -exclude, quoted phrases). New matches show up in Recall Kitchen. Requires an API key.

輸入參數weightpattern必填

check_tracked_products

Check this API key's watch patterns and inventory against current indexed recalls (including historical notices). Does not create notifications. Generic patterns such as food or hazard only match in titles. Requires an API key.

輸入參數limitoffset

create_api_key

Create an additional API key for this account. Requires an existing API key. Unverified accounts may have only one key; verified accounts may have three. Usage is counted per account, not per key.

輸入參數kindname

get_product_recall

Get a recall by id, including extracted lots, UPCs, model numbers, locations, contact info, and product photo URLs

輸入參數idrecall_id

give_feedback

Report a bug, missing capability, bad search result, or confusing schema to the Recall Kitchen team. Use this instead of silently working around a problem. message is required and should include the MCP tool names you called, the actions you took, the query or identifiers, and any recall_id. Do not send API keys, photos, or PII. Optional category: bad_result, tool_error, missing_capability, confusing_schema, docs, other. Optional severity: blocked, workaround, annoyance. No API key or x402 required. Does not count against search quotas.

輸入參數message必填categoryseverity

list_api_keys

List this account's API keys (id, name, prefix, created). Secrets are not shown. Requires an API key.

無需輸入參數。

list_inventory

List this API key's tracked inventory products. Requires an API key.

輸入參數limitqueryoffset

list_recall_notifications

List recall notifications for this API key. unread defaults to true (unread only); pass false for all. New matches show up in Recall Kitchen. Empty for new accounts until a new matching recall is published; not a backfill of check_tracked_products. message is a short plain-text summary. Requires an API key.

輸入參數limitoffsetunread

list_watch_patterns

List this API key's recall watch patterns. Requires an API key.

無需輸入參數。

lookup_product

Look up a product by UPC/EAN. Returns found=false when unknown. Does not search recalls.

輸入參數upc必填

mark_notification_read

Mark a recall notification as read (default) or unread. Requires an API key.

輸入參數readrecall_id必填

remove_inventory_product

Remove a product from this API key's inventory by id. Requires an API key.

輸入參數id必填

remove_watch_pattern

Remove a recall watch pattern for this API key. Requires an API key.

輸入參數pattern必填

revoke_api_key

Revoke an API key by key_id from list_api_keys. Requires an API key. Revoking the current key will fail subsequent calls.

輸入參數key_id必填

search_product_recalls

Search product recalls by query. Query uses websearch syntax: unquoted words are AND, OR is or, -term excludes, quoted phrases match as a unit (example: Generac Generator -Portable). Optional filters: source (cpsc, fdafoodsafety, FDAMedWatch, usda, nhtsa, canada, openfda), since/until (YYYY-MM-DD), location (country, region, or place, ANDed with the query), offset, limit. Descriptions are truncated and extracted products are capped; use get_product_recall for the full text.

輸入參數limitquerysinceuntilyearsoffsetsourcesourceslocation

search_product_recalls_by_upc

Search recalls by UPC/EAN or a barcode image URL/data URI/MCP image content. Matches extracted recall UPCs first. Returns found=false when the UPC is unknown.

輸入參數upcurllimitoffsetbarcodeimage_url

search_product_recalls_from_image

Photo (beta): identify products in a public HTTPS image URL, data:image/...;base64 URI, or MCP image content part. Local files are not supported. Each product includes match (upc, model, text, category) and confidence. Category matches omit recalls unless include_category_matches=true. Requires an API key or x402; not included in the free anonymous per-IP quota.

輸入參數urllimitimage_urlinclude_category_matches

search_recalls_by_identifier

Search recalls by extracted UPC, lot code, model number, product name, or VIN. Multiple identifiers are AND-matched on the same product. VIN lookup lists NHTSA campaigns for the decoded year and make; confirm your vehicle on nhtsa.gov/recalls. lot_code matches extracted lot codes after normalizing spaces, case, and punctuation; if lots were not extracted, also searches notice title and description — verify against the notice. product_name falls back to the same full-text search as search_product_recalls when no exact extracted name matches, and returns a hint if still empty.

輸入參數upcvinlimitoffsetlot_codemodel_numberproduct_name

signup

Create a Recall Kitchen account and API key from an email. No API key or x402 payment required. Set accept_terms true only after you ask the person and they confirm they are 13 or older and accept the Terms (https://recallkitchen.com/terms), Privacy Policy (https://recallkitchen.com/privacy) and API Terms (https://recallkitchen.com/api-terms); never set it automatically or on the person's behalf. The key is returned once. Unverified accounts have lower rate limits (60 tool calls/hour, 400/day, one key) and can add a few watch patterns. Sign in at https://app.recallkitchen.com with the same email to verify, raise limits, and add inventory. Does not re-issue a key if the email already has an account.

輸入參數nameemail必填accept_terms必填

版本歷史

1
  1. v1.0.1最新Sep 16, 2026

評分

已滿足適用檢查項的 100%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分