
Pepesto Mcp
io.github.pepesto-solutions由 GitHub 帳號 pepesto-solutions 發布v1.7.0更新於 Oct 28, 2026
MCP server for the Pepesto grocery shopping API — recipe-to-cart across European supermarkets.
概覽
Pepesto MCP 把食譜連結、文字或照片轉換成涵蓋 26 家歐洲超市、附即時價格的配對購物籃。
- 可以做什麼
- 從連結、純文字或圖片解析食譜,取得結構化食材
- 在 Pepesto 食譜庫中搜尋菜色靈感
- 把食材對應到真實超市商品並附上價格,可將多份食譜合併成一個購物籃
- 一次完成食譜到購物車,並回傳結帳連結
- 產生免費的延遲購物清單連結,讓使用者在手機上開啟
- 查詢剩餘額度,以及匯出某家超市的完整商品目錄
- 適用情境
- 適合讓助理協助規劃餐點、在歐洲超市建立附價格的購物籃、比較不同超市的購物籃總價,或把購物清單交到使用者手機上。它只做到附價格的配對購物籃,下單需在 Pepesto 應用程式或超市網站完成。
- 執行需求
- 以 npm 套件形式透過 npx 在本機執行,需要 Node.js。多數工具需要 PEPESTO_API_KEY 中的 Pepesto API 金鑰,金鑰來自付費的按量計費額度包,並透過 /link 端點一次性產生。predirect 工具不需金鑰。需要連線至 Pepesto API 的網路。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Pepesto Mcp,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
Pepesto MCP Server
MCP server for the Pepesto API — give your agent the ability to turn any recipe (a URL, plain text, or a photo) into a matched basket of real supermarket products with live prices, across 26 European supermarkets. The MCP covers the recipe → matched cart half of the workflow (parse / search / map ingredients to SKUs / check catalogs); placing the actual order is a separate step — see Where checkout actually happens.
Quick install
Claude Desktop
Add to claude_desktop_config.json:
Claude Code
Getting an API key
Most tools need a key, but
pepesto_predirectis public and free — it works with no key at all (the end user pays when they check out in the app).
-
Start with a pay-as-you-go credit pack — see https://www.pepesto.com/pricing/.
-
Mint an API key by calling
/linkwith the email you used at checkout. The key is returned only once — store it immediately. -
Set the key in your environment:
Tools
The MCP stops at "matched cart with prices" — see Where checkout actually happens for how users finish the order. /session, /checkout, and /link are intentionally not wrapped; see Roadmap for what's planned.
Example conversations
Quick: recipe URL → matched cart
The fastest path. One tool call returns a matched cart and a checkout link.
User: Use the BBC Good Food pizza margherita recipe to build a Tesco cart, and also add sparkling water and olive oil.
Assistant: [Uses
pepesto_oneshotwithcontent_urls,content_text,supermarket_domain: "tesco.com"]Assistant: Cart matched at Tesco. Checkout link:
<redirect_url>.
Free, deferred handoff → end user pays (pepesto_predirect)
When the API client doesn't want to pay for matching and a deferred deep link is acceptable. pepesto_predirect is free and needs no API key: it returns instantly with a link, and parsing + product matching happen lazily once the user opens it. The user is charged when they proceed to checkout in the Pepesto app (if the app isn't installed, they're sent to the app store first and the list is preserved).
Who this is for:
pepesto_predirectis an end-user / agent-facing tool, not a developer-integration endpoint. It's the right fit when a person is chatting with an assistant (Claude Desktop, ChatGPT, etc.) and wants to hand their shopping list off to their own phone — the agent returns a link, the user finishes (and pays) in the app. If you're a developer building a product on top of Pepesto, you'll usually wantpepesto_oneshot(matched cart up front, you pay) instead. Got a developer use case forpredirectanyway? Tell us — we'd love to hear it.
Use pepesto_predirect when the cost should fall on the end user; use pepesto_oneshot when the client wants the basket matched up front (with prices) and is willing to pay for it.
User: Here's my weekly shopping list — just give me a link I can open on my phone to finish in the Pepesto app.
Assistant: [Uses
pepesto_predirectwithshopping_list: "2 avocados\n1 loaf of bread\n500 g tomatoes\n..."]Assistant: Done — 🛒 Open your shopping list in Pepesto → Free to open · 3 items ready · you only pay at checkout in the app. Open it on your phone (on a computer it'll show a QR code to scan).
The tool returns this as ready-to-show Markdown — one tappable, labeled link plus a short caption — so the long redirect_url is never dumped as raw text.
Browse the recipe graph → pick → matched cart
For "find me something to cook" prompts, where the agent searches Pepesto's recipe graph first and returns matched products with prices.
User: Find me a vegan pasta recipe for two.
Assistant: [Uses
pepesto_suggestwithquery: "vegan pasta dinner for two"]Assistant: Three options: Creamy Cashew Penne, Lemon Garlic Spaghetti, Roasted Veg Rigatoni. Which would you like?
User: Go with the first one. Shop it at Coop (coop.ch).
Assistant: [Uses
pepesto_productswith the chosen recipe'skg_tokenandsupermarket_domain: "coop.ch"]Assistant: Matched 8 ingredients at Coop — cashews CHF 4.20, penne CHF 1.95, ... — total CHF 18.40.
Parse a specific recipe → matched cart
When the user already has a recipe URL or text in mind. The MCP returns the matched product list — what to do with it is up to you.
User: Parse this and break out the ingredients: https://www.bbcgoodfood.com/recipes/pizza-margherita-4-easy-steps
Assistant: [Uses
pepesto_parsewithrecipe_url]Assistant: Pizza Margherita in 4 easy steps — 8 ingredients: strong bread flour, fast-action yeast, ...
User: Now match those to Sainsbury's products.
Assistant: [Uses
pepesto_productswith the returnedkg_tokenandsupermarket_domain: "sainsburys.co.uk"]Assistant: Matched 8 ingredients at Sainsbury's — total £6.40.
Weekly meal plan → one merged matched cart
Multiple kg_tokens through pepesto_products in a single call — Pepesto merges duplicated ingredients across recipes.
User: Plan 5 keto dinners for the week and match them at Delhaize.
Assistant: [Uses
pepesto_suggestwithquery: "keto dinner low carb high protein", num_to_fetch: 5]Assistant: Five dinners: Steak & Kale, Salmon Avocado Bowl, Zucchini Lasagna, Cauliflower Risotto, Chicken Caesar.
User: Build one shopping list that covers the whole week.
Assistant: [Uses
pepesto_productswith all fivekg_tokensandsupermarket_domain: "delhaize.be"]Assistant: Combined match: 24 unique ingredients (some shared across recipes), estimated total €68.40 at Delhaize.
Compare prices across two supermarkets
Run the same recipe through pepesto_products for each market and compare totals.
User: Parse this Sunday lunch recipe.
Assistant: [Uses
pepesto_parse]Assistant: Got it: Italian Sunday Lunch, 12 ingredients.
User: Show me the cart at both Esselunga and Conad so I can compare.
Assistant: [Uses
pepesto_productstwice —supermarket_domain: "spesaonline.esselunga.it", thensupermarket_domain: "spesaonline.conad.it"]Assistant: Esselunga: €34.20. Conad: €31.50. Conad is €2.70 cheaper, mostly on pasta and tomatoes.
Catalog dump for market analysis
Only on explicit request, and cache aggressively — see Pricing & best practices below.
User: I'm building a price-comparison dashboard. Pull the full Plus NL catalog.
Assistant: Heads up —
pepesto_catalogis the most expensive call here. I'll only run it once; you should cache the result for at least a day. Confirm?User: Yes.
Assistant: [Uses
pepesto_catalogwithsupermarket_domain: "plus.nl"]Assistant: Catalog dumped: 1,847 SKUs across 23 categories.
Supported supermarkets
Need a supermarket that isn't on this list? Contact Pepesto.
Where checkout actually happens
This MCP stops at "matched cart with prices." It does not automate placing the order on the supermarket's website. Two ways to finish the trip:
- Pepesto app (recommended). Open the
redirect_urlreturned bypepesto_oneshotin a browser, or hand the user the matched-product list frompepesto_productsand tell them to recreate it in the Pepesto app — that's where the hosted checkout flow lives, including login, basket review, and (for some markets) payment. - The supermarket's own site. The user can take the matched product list from
pepesto_productsand add the SKUs directly on tesco.com / coop.ch / etc. Slower, but no Pepesto account needed.
Pricing & best practices
Pepesto runs on simple pay-as-you-go credits — you only pay for what your agents actually use, and credits never expire, so a top-up is yours until you spend it. We also offer discounts for students and early-stage teams, so say hi if that sounds like you. Full per-call pricing and volume tiers live at https://www.pepesto.com/pricing/.
A few tips to get the most out of every credit:
pepesto_creditsis free — call it any time for a quick balance read-out.pepesto_predirectis free and needs no API key — it defers matching and bills the end user at checkout, so it costs the API client nothing.pepesto_oneshot,pepesto_parse,pepesto_suggest, andpepesto_productsare the everyday calls (match a recipe, plan a week, compare baskets) and are priced for routine agent use.pepesto_catalogdoes a full SKU dump for a supermarket and is the heaviest call. It's the right tool for genuine market analysis or price-comparison dashboards — just cache the result for at least a day per supermarket. Not sure you need it? Tell us about your use case and we'll usually point you to a cheaper path.
Roadmap
Planned to follow:
pepesto_session— wrap/sessionso an agent can build a Pepesto-side checkout session from selected SKUs.pepesto_checkout— wrap/checkout, the turn-by-turn browser-automation loop that drives the supermarket's own site (login, add-to-basket, prompt-for-CAPTCHA, etc.). This is the missing piece for fully autonomous shopping.- Hosted-checkout handoff — surface the Pepesto-app deep link as a structured tool result (instead of free text), so MCP clients can render it as a button instead of a URL.
If any of these would unblock you, tell us — it'll move them up the queue.
Development
Run the inspector against the local build:
License
The Pepesto MCP server in this repository is licensed under the MIT License.
Deploy
- Deploy the Pepesto MCP on Glama.
來源:README.md,提交 94e5c2d
工具
0版本歷史
1- v1.7.0最新Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分