Agent skill

Open Supermarkets

by abracadabra50 in abracadabra50/open-supermarkets

Searches, compares and fills baskets across supermarkets in several countries, with delivery slots, checkout and nutrition data, as a CLI, MCP server or skill.

MITAuto-check passedProductivity & Automation

Install Open Supermarkets

skills CLI
$ npx skills add abracadabra50/open-supermarkets --skill open-supermarkets -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install abracadabra50/open-supermarkets open-supermarkets --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
open-supermarkets
GitHub stars
118
Used in
1 other repo
Token cost
~1.4k tokens
SKILL.md length
290 words
Files
91 (incl. scripts)
Skills in repo
2
Repo updated
First seen
Licence
MIT

At a glance

Searches, compares and fills baskets across supermarkets in several countries, with delivery slots, checkout and nutrition data, as a CLI, MCP server or skill.

  • Comparing grocery prices across several supermarkets
  • SKILL.md covers Per-Supermarket Skills, Quick Start, MCP Tools Reference and When to Use This Skill, plus 2 more sections
  • Calls npm, npx and node
  • Building a shopping basket from a list of items

What it does

This skill automates online grocery shopping across supermarkets in the UK, Netherlands, Belgium, Spain, Hungary, the US and Canada. It can search products, compare prices across stores, manage a basket, list and book delivery slots and run checkout, and it enriches products with Open Food Facts nutrition and allergen data. It works as a command-line tool, an MCP server over stdio or an agent skill, with a dedicated skill file per supermarket.

The MCP tools cover login and status, search, compare, basket view, add, remove, update and clear, delivery slots, booking, checkout, orders, favourites, categories and browsing, and checkout defaults to a dry run. Coverage differs by retailer: the Ocado file notes that slot booking and checkout are not covered, and the Hungarian Tesco file covers search and basket only. Setup uses npm install and a Playwright Chromium install, and the compatibility note asks for Node.js 18 or newer and TypeScript, with Playwright only for providers that need browser login.

When your agent uses it

  • Comparing grocery prices across several supermarkets
  • Building a shopping basket from a list of items
  • Finding and booking a delivery slot
  • Checking nutrition and allergens for a product
  • Reviewing past grocery orders or favourites

Example prompts

  • “Compare the price of semi-skimmed milk at Tesco and Sainsbury's.”
  • “Add the items on my shopping list to my Sainsbury's basket.”
  • “Show the available delivery slots for this week.”
  • “Run a dry-run checkout of my current basket.”

Requirements

  • Node.js 18 or newer and TypeScript
  • Playwright with Chromium, for providers that need browser login
  • An account with each supermarket you want to use
  • Compatibility (from SKILL.md): Node.js 18+, TypeScript. Playwright only for browser-auth providers. Delivery areas vary by retailer.
  • Pre-approved tools (allowed-tools): Bash({baseDir}/node:*), Bash(supermarket:*), Bash(npm:run:supermarket:*)

What it can do on your machine

Read from SKILL.md and the folder at commit aff6880. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Bash({baseDir}/node:*)
    • Bash(supermarket:*)
    • Bash(npm:run:supermarket:*)

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/, which the agent can run.

    Shell commands in SKILL.md call:

    • npm
    • npx
    • node

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use npm and npx, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    Node.js 18+, TypeScript. Playwright only for browser-auth providers. Delivery areas vary by retailer.

    From compatibility in the SKILL.md frontmatter.

Context cost

Open Supermarkets loads about 1.4k tokens when it runs. Until then it costs about 74 tokens; SKILL.md has 290 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~74
When it runs · the whole SKILL.md, loaded when a task matches
~1.4k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from abracadabra50/open-supermarkets at commit aff6880, republished under its MIT licence (© abracadabra50). 290 words, ~1,354 tokens.

Download SKILL.mdSave it as .claude/skills/open-supermarkets/SKILL.md (or your agent's skills folder). This skill also uses 90 other files; get the full folder from GitHub.
name
open-supermarkets
description
Grocery automation across ten retailers in seven countries — UK, Netherlands, Belgium, Spain, Hungary, the US and Canada. Search, compare, basket, delivery slots and checkout, plus Open Food Facts nutrition and allergen enrichment. Available as CLI, MCP server, or agent skill.
allowed-tools
Bash({baseDir}/node:*), Bash(supermarket:*), Bash(npm:run:supermarket:*)
compatibility
Node.js 18+, TypeScript. Playwright only for browser-auth providers. Delivery areas vary by retailer.
license
MIT
metadata.author
zish
metadata.version
3.0.0
metadata.repository
https://github.com/abracadabra50/open-supermarkets
metadata.tags
groceries, supermarket, sainsburys, ocado, tesco, tesco-hu, hungary, albert-heijn, mercadona, kroger, instacart, uk, netherlands, belgium, spain, usa…

UK Grocery CLI - Agent Skills

Unified grocery automation across UK supermarkets. Use via CLI, MCP server, or as agent skills.

Location: {baseDir}


Per-Supermarket Skills

Each supermarket has a dedicated skill file with provider-specific commands, authentication, and API details:

SupermarketSkill FileStatus
Sainsbury'sskills/sainsburys.mdFull coverage
Tescoskills/tesco.mdFull coverage + staples
Ocadoskills/ocado.mdFull coverage except slot booking/checkout (AWS WAF)
Tesco Magyarországskills/tesco-hu.mdSearch and basket; no slots/checkout

Quick Start

bash
cd {baseDir}
npm install
npx playwright install chromium
CLI Usage
bash
# Search any supermarket
npm run groc -- --provider sainsburys search "milk"
npm run groc -- --provider tesco search "milk"
npm run groc -- --provider ocado search "milk"

# Compare across all stores
npm run groc compare "organic eggs" --json

# Provider is a flag - all commands work the same way
npm run groc -- --provider <store> basket
npm run groc -- --provider <store> add <id> --qty 2
npm run groc -- --provider <store> slots
npm run groc -- --provider <store> checkout --dry-run
MCP Server Usage
bash
# Start MCP server (stdio transport)
npx tsx src/mcp-server.ts
# Or after build:
node dist/mcp-server.js

Claude Desktop config (claude_desktop_config.json):

json
{
  "mcpServers": {
    "uk-grocery": {
      "command": "node",
      "args": ["/path/to/uk-grocery-cli/dist/mcp-server.js"]
    }
  }
}

MCP Tools Reference

All tools accept a provider parameter (sainsburys, ocado, tesco). Default: sainsburys.

Core Tools (all providers)
ToolDescription
grocery_loginLogin to supermarket account
grocery_statusCheck login status across all providers
grocery_searchSearch products
grocery_compareCompare prices across all stores
grocery_basket_viewView basket contents
grocery_basket_addAdd product to basket
grocery_basket_removeRemove from basket
grocery_basket_updateUpdate item quantity
grocery_basket_clearClear basket
grocery_slotsList delivery slots
grocery_book_slotBook delivery slot
grocery_checkoutCheckout (dry_run=true by default)
grocery_ordersView order history
grocery_favouritesFavourite / frequently-bought products (Sainsbury's, Ocado)
grocery_favourites_searchSearch within favourites (Sainsbury's, Ocado)
grocery_categoriesList browse categories (Sainsbury's, Ocado)
grocery_browseBrowse products in a category (Ocado)
grocery_providersList providers and login status
Provider-Specific Tools
ToolDescription
tesco_staplesView, update, or auto-add repeat-purchase staples
ocado_regularsList Ocado recurring-shopping ("Regulars") definitions

When to Use This Skill

Trigger when users:

  • Want to plan meals or order groceries
  • Ask about product prices or availability
  • Want to compare prices across supermarkets
  • Need to manage a shopping basket
  • Want to book delivery slots or checkout
  • Ask about weekly shop, meal prep, or grocery budget

Example Agent Workflows

Meal Planning
bash
# Search ingredients across stores
npm run groc compare "chicken breast" --json
npm run groc compare "basmati rice" --json

# Add to cheapest provider
npm run groc -- --provider tesco add PRODUCT_ID --qty 1
npm run groc -- --provider tesco basket --json
npm run groc -- --provider tesco checkout --dry-run
Restock Staples (Tesco)
bash
npm run groc -- --provider tesco staples --add
npm run groc -- --provider tesco basket --json
npm run groc -- --provider tesco checkout --dry-run
Price Comparison
bash
npm run groc compare "organic milk" --json
# Returns results from all providers with prices

Documentation

© abracadabra50, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 90 other files (scripts) in the repository root of abracadabra50/open-supermarkets.

  • SKILL.md
  • .dockerignore
  • .github/ISSUE_TEMPLATE/bug-report.yml
  • .github/ISSUE_TEMPLATE/provider-request.yml
  • .github/PULL_REQUEST_TEMPLATE.md
  • .github/workflows/ci.yml
  • .gitignore
  • AGENTS.md
  • API-REFERENCE.md
  • CONTRIBUTING.md
  • Dockerfile
  • LICENSE
  • README.md
  • SECURITY.md
  • docs/API.md
  • docs/SMART-SHOPPING.md
  • docs/providers
  • … and 74 more

Open the folder on GitHubat commit aff6880

Used in 1 other repository

We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in abracadabra50/open-supermarkets, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Open Supermarkets next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Open Supermarkets compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Open Supermarkets this skillabracadabra50/open-supermarkets1181 repos~1.4kAutomated safety check: PassMIT
Skillredf0x1/camofox-mcp117—~3.1kAutomated safety check: PassMIT
Project Pull Requestswimmwatch/cloakbrowser-mcp164—~1kAutomated safety check: PassMIT
Project Releaseswimmwatch/cloakbrowser-mcp164—~1.9kAutomated safety check: PassMIT
Project Docs Maintainerswimmwatch/cloakbrowser-mcp164—~569Automated safety check: PassMIT
Zerotoken OpenclawAMOS144/ZeroToken4551 repos~2.9kAutomated safety check: PassMIT

Similar skills

  • Skill

    redf0x1/camofox-mcp

    Anti-detection browser automation MCP skill for OpenClaw agents with 47 tools for navigation, interaction, observation, extraction, downloads, profiles, sessions, and stealth web search.

    117 GitHub stars~3.1k tokensUpdated 1 mo ago
    Productivity & AutomationAuto-check passed
  • Project Pull Request

    swimmwatch/cloakbrowser-mcp

    Create, update, prepare, or review a cloakbrowser-mcp GitHub Pull Request only when the user explicitly requests PR work.

    164 GitHub stars~1k tokensUpdated 2 days ago
    DevelopmentAuto-check passed
  • Project Release

    swimmwatch/cloakbrowser-mcp

    Prepare, publish, verify, or recover a cloakbrowser-mcp release only when the user explicitly requests release work.

    164 GitHub stars~1.9k tokensUpdated 2 days ago
    Agent WorkflowsAuto-check passed
  • Project Docs Maintainer

    swimmwatch/cloakbrowser-mcp

    Maintain, organize, consolidate, or audit the cloakbrowser-mcp documentation set only when the user explicitly requests project documentation maintenance or an authorized public change requires it.

    164 GitHub stars~569 tokensUpdated 2 days ago
    DevelopmentAuto-check passed
  • Zerotoken Openclaw

    AMOS144/ZeroToken

    A skill your agent uses when using ZeroToken MCP via OpenClaw for browser automation, trajectory recording and low-token replay, especially for recurring or scheduled browser tasks.

    455 GitHub starsUsed in 1 repo~2.9k tokens
    Productivity & AutomationAuto-check passed
  • AIPex Browser Control

    AIPexStudio/AIPex

    Lets an agent drive Chrome through the AIPex extension and its MCP bridge: navigation, clicking, form filling, screenshots, tab management and downloads.

    1.3k GitHub stars~1.8k tokensUpdated 1 mo ago
    Productivity & AutomationAuto-check passed

More from abracadabra50/open-supermarkets

  • Grocery Basket Assistant

    abracadabra50/open-supermarkets

    Searches Sainsbury's groceries and favourites, then adds, updates or removes basket items through a local HTTP API wrapper, always confirming before changes.

    118 GitHub stars~634 tokensUpdated 11 days ago
    Auto-check passed

Questions about Open Supermarkets

What does Open Supermarkets do?

Searches, compares and fills baskets across supermarkets in several countries, with delivery slots, checkout and nutrition data, as a CLI, MCP server or skill. This skill automates online grocery shopping across supermarkets in the UK, Netherlands, Belgium, Spain, Hungary, the US and Canada. It can search products, compare prices across stores, manage a basket, list and book delivery slots and run checkout, and it enriches products with Open Food Facts nutrition and allergen data.

When should I use Open Supermarkets?

Open Supermarkets fits situations like: comparing grocery prices across several supermarkets; building a shopping basket from a list of items; finding and booking a delivery slot; checking nutrition and allergens for a product.

How do I install Open Supermarkets in Claude Code?

Run `npx skills add abracadabra50/open-supermarkets --skill open-supermarkets -a claude-code`. Or copy the skill folder (the abracadabra50/open-supermarkets repository) into .claude/skills/open-supermarkets in your project. Claude Code loads it when a task matches its description.

How do I install Open Supermarkets in Codex?

Run `npx skills add abracadabra50/open-supermarkets --skill open-supermarkets -a codex`. Or copy the skill folder (the abracadabra50/open-supermarkets repository) into .agents/skills/open-supermarkets in your project. Codex loads it when a task matches its description.

Can I use Open Supermarkets in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add abracadabra50/open-supermarkets --skill open-supermarkets -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/open-supermarkets, .gemini/skills/open-supermarkets, .github/skills/open-supermarkets and .opencode/skills/open-supermarkets in your project.

What does Open Supermarkets need to run?

Going by SKILL.md and its folder, Open Supermarkets needs the command-line tools its instructions call (npm, npx and node). Our summary lists: Node.js 18 or newer and TypeScript; Playwright with Chromium, for providers that need browser login; An account with each supermarket you want to use. Its frontmatter pre-approves these tools: Bash({baseDir}/node:*), Bash(supermarket:*), Bash(npm:run:supermarket:*). Compatibility (from SKILL.md): Node.js 18+, TypeScript. Playwright only for browser-auth providers. Delivery areas vary by retailer..

Does Open Supermarkets access the network?

SKILL.md contains no URLs. Its commands use npm and npx, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Open Supermarkets safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Open Supermarkets use?

Open Supermarkets is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Open Supermarkets use?

About 1.4k tokens (SKILL.md is roughly 5.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Open Supermarkets?

Skills that share tags, products or a category with Open Supermarkets: Skill (redf0x1/camofox-mcp, 117 stars), Project Pull Request (swimmwatch/cloakbrowser-mcp, 164 stars), Project Release (swimmwatch/cloakbrowser-mcp, 164 stars) and Project Docs Maintainer (swimmwatch/cloakbrowser-mcp, 164 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Open Supermarkets?

abracadabra50 (a GitHub user) maintains it in abracadabra50/open-supermarkets, which has 118 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on September 29, 2026.

Source: abracadabra50/open-supermarkets on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.