Skip to main content
Glama
yifei-ding

my-grocery-mcp

by yifei-ding
README.md
# my-grocery-mcp

Personal MCP server for Swiss grocery product search, price comparison and
weekly promotions (Migros, Coop, Aldi, Denner, Lidl, Farmy, Volgshop, Otto's).

## Origin and license

Forked from [nicktcode/swissgroceries-mcp](https://github.com/nicktcode/swissgroceries-mcp)
at **v0.7.4**, the last release under the MIT License. Later upstream releases
use different licenses; no code from them is included here. This project stays
under MIT — see [LICENSE](LICENSE). The original README is kept as
[UPSTREAM-README.md](UPSTREAM-README.md) for reference on tools and setup.

Not affiliated with any of the retailers. It calls their publicly reachable
app/web endpoints; those can change without notice.

## Changes since the fork

See `git log`. Highlights:

- Migros: promotions with a minimum quantity ("40% Ab 2 Stück") are detected.
- Migros: `get_promotions` reads the full weekly list and honours `query`.
- Migros: `search_products` keeps promotion data.
- Migros: default region is Zürich (`2`), overridable via `MIGROS_REGION`.

## Run locally

```bash
npm install
npm test
npm run build
```

Claude Desktop (`~/Library/Application Support/Claude/claude_desktop_config.json`):

```json
{
  "mcpServers": {
    "my-grocery": {
      "command": "node",
      "args": ["/absolute/path/to/my-grocery-mcp/dist/index.js"]
    }
  }
}
```

TDQS

A4.2/5.0

Scored across 7 tools

Disambiguation5/5

Each tool targets a distinct resource and action: store discovery, product search, product detail, promotions, per-store stock, adapter diagnostics, and multi-item trip planning. The only mild conceptual overlap (search_products vs plan_shopping) is clearly separated by scope—single-product search versus multi-item itinerary optimization.

Naming Consistency5/5

All seven tools follow a consistent snake_case verb_noun pattern (find_stores, search_products, get_product, get_promotions, find_stock, plan_shopping), with health_check being the only noun-ish exception but still readable and idiomatic.

Tool Count5/5

Seven tools is well-scoped for a Swiss grocery comparison server, covering discovery, search, detail, promotions, stock, diagnostics, and planning without redundancy. Each tool earns its place in the workflow.

Completeness4/5

The surface covers the core lifecycle: find stores, search products, inspect details, check promotions and stock, and plan trips, plus a health check for adapter issues. Minor gaps exist—no explicit chain/capability listing beyond health_check, no store-detail-by-ID tool, and no price history—but these are workable around.

Maintenance

ActivityMaintained
ResponsivenessNo issues