AgentSkillsCN

marktguru-grocery-deals

通过 Marktguru CLI/API 查询超市优惠与折扣信息。当用户询问超市折扣、商品价格、当前促销活动,或对比奥地利各大零售商(Hofer、Billa、Spar、Lidl 等)的优惠时,可使用此功能。

SKILL.md
--- frontmatter
name: marktguru-grocery-deals
description: Look up grocery deals and offers via Marktguru CLI/API. Use when user asks about supermarket discounts, product prices, current promotions, or comparing deals across Austrian retailers (Hofer, Billa, Spar, Lidl, etc.).

Marktguru Grocery Deals

Query Austrian grocery deals from Marktguru. Supports raw queries, structured search building, retailer filtering, and ZIP-code location targeting.

Quick Reference

CommandPurpose
search raw <query>Search with raw query string
search buildBuild query from structured flags
search syntaxShow supported query syntax
set-zip <code>Set default ZIP code
configShow current configuration
loginExtract API key from marktguru.at

Setup

Login (HTTP scan)

bash
npx marktguru-cli login

Scans site HTML and boot scripts for embedded API keys. No browser automation required.

Set Default ZIP Code

bash
npx marktguru-cli set-zip 1010
npx marktguru-cli set-zip 8010  # Graz

Check Config

bash
npx marktguru-cli config
npx marktguru-cli config --json

Search Commands

Raw Query Search

bash
npx marktguru-cli search raw "Milch"
npx marktguru-cli search raw "Milch" --limit 5
npx marktguru-cli search raw "Bier" --retailer HOFER
npx marktguru-cli search raw "Brot" --zip 8010
npx marktguru-cli search raw "Cola" --json

Common Options

FlagDescriptionDefault
--limit <n> / -nNumber of results10
--retailer <name> / -rFilter by retailer (e.g., SPAR, BILLA, HOFER)all
--zip <code> / -zZIP code for location-based resultsconfig default
--json / -jOutput JSONfalse

Structured Builder

Build queries from flags instead of raw strings:

bash
npx marktguru-cli search build --term butter --explain
npx marktguru-cli search build --or butter --or margarine --explain
npx marktguru-cli search build --phrase "frische milch" --limit 5
npx marktguru-cli search build --wildcard "jogh*" --retailer SPAR
FlagDescription
--term <value>Add a search term
--phrase <value>Add exact phrase (quoted)
--wildcard <value>Add wildcard term (e.g., kell*)
--or <value>Add term to OR group (repeat for multiple)
--group <value>Add raw parenthesized group
--explainPrint the built query to stderr

Query Syntax

Supported:

  • OR — boolean OR: Milch OR Sahne
  • * — wildcard: Jogh* (matches Joghurt, Joghurtdrink, etc.)
  • "..." — exact phrase: "frische Milch"
  • () — grouping: (Milch OR Sahne) Bio

NOT supported: AND, NOT, ~, ^

Examples

bash
# Simple term
npx marktguru-cli search raw "Butter"

# OR logic
npx marktguru-cli search raw "Käse OR Schinken"

# Wildcard
npx marktguru-cli search raw "Bio*"

# Combined with retailer filter
npx marktguru-cli search raw "Bier" --retailer HOFER --limit 10

# Exact phrase
npx marktguru-cli search raw '"Coca Cola"'

Known Retailers

RetailerNotes
SPAR
INTERSPARLarger SPAR format
SPAR-GourmetPremium SPAR
BILLA
BILLA PLUSLarger BILLA format
HOFERAustrian Aldi
Lidl
PENNY
dm drogerie marktDrugstore (some food items)
BIPADrugstore

JSON Output

bash
npx marktguru-cli search raw "Cola" --limit 3 --json
json
{
  "query": "Cola",
  "total": 23,
  "offers": [
    {
      "title": "Coca-Cola - Cola - oder Fanta 1,5l",
      "price": 1.49,
      "retailer": "Sizin Foods GmbH",
      "expires": "2026-02-11",
      "discountPercent": null
    },
    {
      "title": "Coca-Cola - Cola - Zero / Fanta / Sprite Dose 330ml",
      "price": 0.6,
      "retailer": "Sizin Foods GmbH",
      "expires": "2026-02-11",
      "discountPercent": null
    },
    {
      "title": "Coca-Cola - Cola - div. Sorten 0,33 Liter",
      "price": 0.67,
      "retailer": "BILLA",
      "expires": "2026-02-11",
      "discountPercent": 50,
      "externalUrl": "https://shop.billa.at/produkte/..."
    }
  ]
}
FieldDescription
titleProduct name and brand
priceCurrent offer price (EUR)
retailerStore name
expiresOffer expiration date (YYYY-MM-DD)
discountPercentDiscount percentage (null if not on sale)
externalUrlDirect link to retailer (optional)

Human-Readable Output

code
Found 147 offers for "Milch":

Premium Bergbauern H-Milch [Salzburg Milch]
  💰 €0.99 (was €1.59) -38% · €0.99/l
  📦 3,5% Fett oder 0,5% Fett aus Österreich, 1 Liter
  🏪 SPAR · 20 days left

📍 Retailers: Lidl (33), SPAR (30), PENNY (17), INTERSPAR (16), BILLA PLUS (11)

Config

Credentials and settings stored at ~/.marktguru/config.json.

bash
npx marktguru-cli config --json
json
{
  "apiKey": "pCcm1AVCYa...",
  "apiKeySet": true,
  "zipCode": "1010",
  "configPath": "/Users/.../.marktguru/config.json"
}

Troubleshooting

IssueSolution
Login failsSite structure may have changed. Re-run login or check for CLI updates.
No resultsTry broader terms, wildcards (*), or alternative spellings.
Wrong locationSet ZIP code with set-zip or use --zip flag.
API key expiredRe-run npx marktguru-cli login to refresh.

Usage Tips

  1. Compare prices: Use --json output to programmatically compare across retailers
  2. Find best deals: Look for high discountPercent values
  3. Check availability: Use --zip with local ZIP code for accurate results
  4. Wildcards for variants: Use Jogh* to catch Joghurt, Joghurtdrink, etc.
  5. OR for alternatives: Butter OR Margarine to compare substitutes