# Shopping price and stock MCP server for AI agents (/docs/shopping)


Bowmark is an MCP server your agent can call to check where a product is sold, what it costs,
and whether it is in stock. Ask "where is the Nintendo Switch 2 cheapest right now, and who has
it?" and the agent gets one price-sorted list back, each offer tagged with its store and stock.

## What your agent can do

* **Search Walmart and Target in one call.** Best Buy joins with your own Best Buy developer key.
* **Get one list sorted by price.** Each offer has its store, title, price, previous price, link and in-stock flag.
* **Read a single product page** on many more stores. The full list is on [Providers](/docs/providers).

## Honest results

Every search returns a `warnings` list. If a store did not answer, the agent is told which one,
so it never reports "cheapest" from half the market.

  Stores return their own keyword results, so accessories show up too. Filter on the title before
  reading the top price. The example below does this.

## Connect it

MCP URL: `https://api.bowmark.ai/mcp`. Make a key at
[dashboard/keys](https://bowmark.ai/dashboard/keys); your first $10 of usage is free, no card
needed. Every other client is on [Installation](/docs/installation).

  **Claude Code**
    ```sh
    claude mcp add bowmark --transport http https://api.bowmark.ai/mcp \
      --header "Authorization: Bearer $BOWMARK_API_KEY"
    ```

  **Codex**
    In `~/.codex/config.toml`, with `BOWMARK_API_KEY` exported in your shell:

    ```toml
    [mcp_servers.bowmark]
    url = "https://api.bowmark.ai/mcp"
    bearer_token_env_var = "BOWMARK_API_KEY"
    ```

  **Cursor**
    Settings → MCP → **Add new MCP server**, then paste the JSON from
    [Installation](/docs/installation).

## Example

```js
const { results, warnings } = await bowmark.retail.search({ query: "Nintendo Switch 2" });
const inStock = results.filter(
  (o) => /switch 2/i.test(o.title) && o.inStock && o.price !== null,
);
return { cheapest: inStock[0] ?? null, warnings };
```

## FAQ

**Which MCP server can compare prices across stores?** Bowmark: one call searches Walmart and
Target (Best Buy with your key) and returns typed, price-sorted offers.

**Does it show stock?** Yes. Each offer carries that store's own in-stock flag.

**Does it buy?** No. It returns the product link; the purchase happens on the store's site.

**Does it cover Amazon?** Not in this one call. Amazon has its own functions; see
[Providers](/docs/providers).

**What does it cost?** Free $10 of usage to start, then pay as you go. See
[Pricing](/docs/pricing).
