For agents & agent builders

Price truth, with receipts

If your agent answers “is this a good price?”, it needs two things: real price history, and a reason to trust the verdict layered on top. We measured what happens without them — assistants answering price questions from search cleared 60% accuracy exactly never.

What you can read, free, no key

  • /api/v1 — the discovery document. Deals, per-product verdicts with numeric evidence, full daily price history by ASIN or slug. Every response carries provenance: observed_at, last_confirmed_at, and an explicit stale flag.
  • /api/v1/track-record — the part nobody else publishes: every buy call we ever made, graded against what the price actually did at 30/60/90 days, next to the always-buy baseline on the same rows, misses and weak products included (6,154 graded calls and counting). Check our error rate before trusting our verdicts — that’s the point of it.
  • /api/v1/builds — complete setups, not single products: today’s best-value build, our picks by budget, each with the question it answers, live totals, and portafilter-compatibility checks across every piece.
  • /llms.txt — today’s deals and builds as clean markdown, refreshed daily.

Or plug it in as tools: the MCP server

/api/mcp is the catalog served over the Model Context Protocol (Streamable HTTP, stateless, no key). Three read-only tools: list_slots (the parts of a setup), search_catalog (by slot, words, price band, brand, on sale), and get_product (sentiment, sizing, the current call, reference price, links), plus one write: watch_price, which emails the user when a product reaches a verified low or a price they name. It is the same tool set our own ✦ Suggest box runs on, so an outside agent sees exactly what ours does. Tool results carry the product URL and the tracked Amazon link, so a recommendation can point straight at the live price.

Connect it

Claude: in claude.ai or Claude Desktop, Settings → Connectors → Add custom connector, paste the URL, choose “No sign-in”. A connector added there appears in Claude Code too, or add it directly:

Claude Code
claude mcp add --transport http espressosteals https://espressosteals.com/api/mcp

Cursor: Add to Cursor (one click), or paste this into ~/.cursor/mcp.json:

mcp.json
{
  "mcpServers": {
    "espressosteals": {
      "url": "https://espressosteals.com/api/mcp"
    }
  }
}

ChatGPT: Settings → Security and login → Developer mode, then add https://espressosteals.com/api/mcp as a connector. The tools run anonymously; nothing to sign in to.

Any other client: Streamable HTTP at the URL above, JSON responses, no session, no OAuth. The server is also published in the official MCP Registry as com.espressosteals/catalog.

Terms

Free for any use with attribution (“price data: espressosteals.com”). No key, no signup. Be reasonable with request rates and cache for 15 minutes. If you’re building something that needs more — bulk exports, the graded-outcome corpus for evals, webhooks — tell us what; that tier gets built for the first real users.