io.github.voicearc/splitbasket-prices

Official registry Search and web

Cached US grocery prices, age disclosed on every row - search, compare across banners, coverage.

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

Remote (streamable-http)
Claude Code
claude mcp add --transport http splitbasket-prices 'https://api.splitbasket.shop/v1/mcp' --header 'Authorization: <Bearer sk_live_... - free API keys from team@splitbasket.shop (closed beta, human-issued)>'
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "splitbasket-prices": {
            "type": "http",
            "url": "https://api.splitbasket.shop/v1/mcp",
            "headers": {
                "Authorization": "<Bearer sk_live_... - free API keys from team@splitbasket.shop (closed beta, human-issued)>"
            }
        }
    }
}

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. SplitBasket Grocery Prices — MCP server & data API
  2. Connect over MCP
  3. Or plain HTTP
  4. Tools
  5. Coverage, honestly
  6. What this deliberately is not

SplitBasket Grocery Prices — MCP server & data API

Cached US grocery prices for developers and agents, from the price panel behind SplitBasket. Every price carries its observation date; the API tells you what it can answer at a location before you ask, and returns found: false rather than a plausible wrong number.

Connect over MCP

Endpoint: https://api.splitbasket.shop/v1/mcp (Streamable HTTP, bearer auth)

Claude Code:

claude mcp add --transport http splitbasket \
  https://api.splitbasket.shop/v1/mcp \
  --header "Authorization: Bearer sk_live_..."

Any MCP client that speaks Streamable HTTP works the same way — point it at the endpoint with the Authorization header.

Or plain HTTP

curl "https://api.splitbasket.shop/v1/compare_price?q=whole+milk&zip=94110" \
  -H "Authorization: Bearer sk_live_..."

Tools

toolwhat it does
search_productsFind products near a location, with the price each nearby store last showed
get_priceThe cached price of one exact product (banner + product_id) at one place
compare_priceBest match at each banner for one query, ranked on canonical unit price
coverageWhat the API can actually answer at a location — call this first in an unfamiliar area
live_checkFetch from the retailer right now (paid tier); returns a job id + measured ETA
live_check_statusPoll a live_check job

Coverage, honestly

Two layers (measured weekly — 2026-08-09; coverage is the runtime source of truth):

  • National layer — six banners: Walmart, Costco, Whole Foods, Sprouts, Sam's Club, Aldi. 51 states (incl. DC) with at least one priced, 2+ banner comparison in 50, 3+ in 46 (measured 2026-08-11). These stores are priced weekly against a ~43-item staples basket.
  • Deep metros — San Francisco, Fresno, Phoenix, Austin: 7–17 banners with full shopping catalogs.

Prices are cached observations, not live quotes. Exact-match rate by cache age, measured over 275k observation pairs: 99.6% under a day, 93.8% at a week, 79.9% at 30 days. Every row carries price_as_of and price_age_days; pass max_age_days to enforce what your use case tolerates.

What this deliberately is not

  • No basket optimizer. To estimate a basket, call compare_price per item and sum it yourself.
  • No state-level answers where prices measurably don't hold state-wide. Chain-wide for target, smartandfinal, bashas, frys, foodsco — and per-state where a chain is bimodal: Costco in ten measured states, Whole Foods in CA and NV. Measured, not assumed; the demote list tracks the weekly panel.
  • No blended accuracy score. Price staleness is bimodal: a stale price is either exactly right or meaningfully wrong, so we disclose age instead of averaging it away.

Operated by VoiceArc Inc. Not affiliated with or endorsed by any retailer; retailer names identify where a price was observed.

Frequently asked questions

What is io.github.voicearc/splitbasket-prices?

Cached US grocery prices, age disclosed on every row - search, compare across banners, coverage.

How do I install io.github.voicearc/splitbasket-prices?

It runs as a remote server. In Claude Code: claude mcp add --transport http splitbasket-prices 'https://api.splitbasket.shop/v1/mcp' --header 'Authorization: <Bearer sk_live_... - free API keys from team@splitbasket.shop (closed beta, human-issued)>'. For other clients, paste the JSON configuration from this page into their MCP settings.

Does io.github.voicearc/splitbasket-prices need an API key?

Yes. It expects Authorization, which you set in its configuration.

Is io.github.voicearc/splitbasket-prices open source?

Its code is public on GitHub, but the repository does not declare a standard license.

Who maintains io.github.voicearc/splitbasket-prices?

It is published by voicearc. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.