Spree Commerce: open-source B2B and marketplace ecommerce
Open-source B2B and marketplace ecommerce; new stores include an MCP server for AI agents.
Description from the maker (original English)
Unofficial read-only Snappfood & SnappMarket: search food and groceries, compare prices, deals.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
SNAPP_MCP_PROXYYou need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"snapp": {
"command": "uvx",
"args": [
"snapp-mcp"
],
"env": {
"SNAPP_MCP_PROXY": "your-value"
}
}
}
}Run this in your terminal
claude mcp add snapp --env SNAPP_MCP_PROXY=your-value -- uvx snapp-mcpFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"snapp": {
"command": "uvx",
"args": [
"snapp-mcp"
],
"env": {
"SNAPP_MCP_PROXY": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"snapp": {
"type": "stdio",
"command": "uvx",
"args": [
"snapp-mcp"
],
"env": {
"SNAPP_MCP_PROXY": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
SNAPP_MCP_PROXY envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 8, 2026
The registry name was verified with the GitHub account sepehr071, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (0.4.0) reached the registry yesterday.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Python (uv) on your computer.
In the same category: Spree Commerce: open-source B2B and marketplace ecommerce, Stripe MCP, MCP Cn Commerce
Servers in the same category from other makers, sorted by stars.
Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
Open-source B2B and marketplace ecommerce; new stores include an MCP server for AI agents.
Stripe’s official server lets AI view and manage customers, products, payments and invoices. Connect to Stripe’s cloud and sign in with OAuth.
8 read-only MCP platform entries; support is operation-specific; merchant live acceptance pending
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Let your AI agent shop around on Snappfood and SnappMarket (اسنپ‌فود و اسنپ‌مارکت).
An unofficial, read-only MCP server for Snappfood (restaurant delivery) and SnappMarket (groceries) in Iran:
search dishes and groceries, compare real prices across hundreds of restaurants and stores, read menus and reviews, and catch today's flash deals, all from Claude, Cursor or Copilot.
For AI agents · Why · What it can do · Quick start · Tools · How it works · Good to know · FAQ · Configuration · فارسی · Development
uvx snapp-mcp or claude mcp add snapp -- uvx snapp-mcp. Transport: stdio. Needs uv (Python 3.10+).SNAPP_MCP_PROXY to an HTTP proxy that exits in Iran. System proxy settings are ignored.readOnlyHint: true.find_location, reverse_geocode, list_cities, then food_* (9) and market_* (9). Most food and market tools need lat and long (not food_reviews, market_reviews, market_product, list_cities). Typical sequence: find_location -> food_find_cheapest -> food_order_costs (groceries: market_find_cheapest -> market_store_info).rating = not rated); review and description texts are cut to 400 characters (pass full_text: true to food_reviews, market_reviews or market_product for the whole text). Restaurant and store vendor_code values pass between tools. FoodParty and Gem deals only run in time windows.server.json and the iran-mcp catalog (TOOLS.md, servers.json, llms.txt).Snappfood shows you one restaurant at a time. Finding *the cheapest pizza that actually reaches your door* means opening dozens of menus, adding packaging and delivery fees in your head, and checking each restaurant's minimum order. An agent with snapp-mcp does that in seconds:
You: Cheapest pizza delivered to Vanak Square right now, including delivery?
Agent: *calls*
find_location(query="میدان ونک")→food_find_cheapest(query="پیتزا", lat=35.7577, long=51.4095)
| Total | Dish | Restaurant | Breakdown |
|---:|---|---|---|
| 296,400 | پیتزا سوسیس مینی + نوشابه | پیتزاتو (گاندی) | food 296,400 · free delivery |
| 410,000 | پیتزا اسمارت وجی لاور | پیتزا دومینوز (جردن) | food 360,000 + delivery 50,000 |
| 464,000 | پیتزا پپرونی اسلایسی | تله پیتزا (سعادت آباد) | food 315,000 + delivery 149,000 |
The Pizzato combo is cheapest overall. Want me to check its minimum order and coupons with
food_order_costs?
Real tool output from 2026-10-02; prices change all the time. Prices are in Toman.
Example prompts:
You need uv and an Iranian IP address (Snappfood blocks most foreign IPs; see FAQ). No API key or account.
Claude Code
claude mcp add snapp -- uvx snapp-mcp
Claude Desktop
Settings → Developer → Edit Config, then add:
{
"mcpServers": { "snapp": { "command": "uvx", "args": ["snapp-mcp"] } } }
</details>
Cursor
Click Install in Cursor above, or add the Claude Desktop block to ~/.cursor/mcp.json (or .cursor/mcp.json in a project).
VS Code (Copilot agent mode)
Click Install in VS Code above, or add to .vscode/mcp.json:
{
"servers": { "snapp": { "type": "stdio", "command": "uvx", "args": ["snapp-mcp"] } } }
</details>
Codex CLI
codex mcp add snapp -- uvx snapp-mcp
Or in ~/.codex/config.toml:
[mcp_servers.snapp]
command = "uvx" args = ["snapp-mcp"]
</details>
Gemini CLI
Add to ~/.gemini/settings.json:
{
"mcpServers": { "snapp": { "command": "uvx", "args": ["snapp-mcp"] } } }
</details>
Windsurf
Add the Claude Desktop block to ~/.codeium/windsurf/mcp_config.json.
Anything else
It's a standard stdio MCP server: run uvx snapp-mcp, or pip install snapp-mcp and run snapp-mcp.
Every food and grocery tool takes lat / long, because menus, prices and delivery fees depend on the delivery point. The agent gets them from find_location or list_cities first.
Location (3)
| Tool | What it does |
|---|---|
find_location | Address, landmark or street → coordinates |
reverse_geocode | Coordinates → street / neighbourhood names |
list_cities | Every served city with its center point |
Snappfood: restaurants (9)
| Tool | What it does |
|---|---|
food_search | Search dishes by name; price sorts are re-checked against live menus |
food_find_cheapest | Scan nearby menus + FoodParty for the lowest total price (food + packaging + delivery) |
food_restaurants | Restaurants with filters (free delivery, discount, coupon) and sorting |
food_menu | One restaurant's full menu with prices, packaging fees and availability |
food_order_costs | Delivery fee, ETA, minimum order and coupons of one restaurant |
food_reviews | Customer reviews, with what they ordered and the restaurant's reply |
food_party_deals | FoodParty flash deals still in stock, with the deal window |
food_meal_for_one | Single-person meals up to 299k Toman with free delivery |
food_discounted_vendors | Restaurants running discounts now, plus live Gem deals |
SnappMarket: groceries (9)
| Tool | What it does |
|---|---|
market_search | Search a product across stores, grouped by store |
market_find_cheapest | Cheapest in-stock offers for a product, one flat list |
market_stores | Stores delivering to a point, by delivery fee or rating |
market_store_info | Delivery fee, minimum order, opening hours and coupons of a store |
market_store_products | Search inside a store, or browse it by category |
market_categories | Product categories and their ids |
market_product | One product's details and price in a store |
market_party_deals | Market Party flash deals, biggest discount first |
market_reviews | Customer comments on a store |
All 21 tools are annotated readOnlyHint: true and return compact structured JSON, so they don't flood the agent's context.
AI agent (Claude, Cursor, Copilot, ...)
│ │ MCP over stdio ▼ snapp-mcp (runs on your machine, uses your IP) │ │ HTTPS ├──────▶ snappfood.ir restaurants └──────▶ snapp.market groceries
snapp-mcp runs locally and calls the same public endpoints the Snappfood and SnappMarket web apps use, with a Chrome-like TLS and header profile, at most 2 requests at a time and small random delays (150-600 ms). Identical GET requests are cached for 60 seconds, and failed GETs (timeout, network error, 5xx, 429) are retried up to twice with backoff. It only talks to a fixed allowlist of Snapp hosts and caps response bodies at 5 MB. The only POST it makes fetches SnappMarket's anonymous token (the public web-app client credentials), which the store and product endpoints need. There's no hosted server in between, no API key, and nothing about you is sent anywhere else.
rating means not rated yet (null/empty fields are omitted).food_find_cheapest and food_order_costs give the agent every piece of that.food_search price sorts and food_find_cheapest re-rOnly the beginning is shown; read the rest in the repo