# AiGAP Robotic Market > A price catalogue for robotics and electronics parts, gathered from independent > sellers' own web pages across some twenty countries. Each listing carries the seller's > own price, currency and stock line, a USD equivalent at European Central Bank > reference rates, and a link back to the seller's page. Current size and freshness: > https://roboticmarket.aigap.com/api/v1/stats There is a machine interface, and it is the one to use. Please do not crawl the HTML: the same data is available as JSON in one request instead of fifty thousand, it is better structured than the pages, and it costs this server almost nothing to serve. ## What the data is, and is not Every figure here was read from a seller's own product page by a crawler that obeys robots.txt, honours `Crawl-delay`, and stops when a site says no. So a record is a statement about somebody else's shop at the moment we last read it — **not** a live quote, and not our price. Two consequences worth carrying into any answer built on it: - **Cite the seller and link to `seller_url`.** That is where a buyer completes the purchase, and it is the authoritative record. If the seller's page and this catalogue disagree, the seller is right and we are stale. - **Say when it was read.** Every record carries `last_seen`. A price from this morning and a price from last week are different claims. Stock lines and prices move. Nothing here is an offer, a recommendation, or a guarantee that a seller ships to any particular country — a seller's country means the seller is registered there, which is not the same as their posting to you. ## MCP - [MCP endpoint](https://roboticmarket.aigap.com/mcp): Streamable HTTP, JSON-RPC 2.0, no key and no sign-up. Tools: `search_products`, `get_product`, `list_sellers`, `list_countries`, `catalogue_stats`. ## JSON API - [OpenAPI 3.1 description](https://roboticmarket.aigap.com/api/v1/openapi.json): the full contract, machine-readable. - [Search](https://roboticmarket.aigap.com/api/v1/search?q=raspberry+pi+camera&limit=5): `q`, `country`, `seller`, `brand`, `mpn`, `currency`, `in_stock`, `min_usd`, `max_usd`, `sort`, `limit`, `offset`. - [One listing](https://roboticmarket.aigap.com/api/v1/products/1): with its observed price history and a photograph where we hold one. - [Sellers](https://roboticmarket.aigap.com/api/v1/sellers): id, name, domain, country, currency, how many listings, when last read. - [Countries](https://roboticmarket.aigap.com/api/v1/countries) - [Catalogue statistics](https://roboticmarket.aigap.com/api/v1/stats): size, freshness, the exchange-rate source, and these terms in one line. 240 requests a minute per address, no key required. If you need more than that, the whole export is one file — see below — and taking it in one request is kinder to this server than taking it in pieces. ## Bulk - [Full export](https://roboticmarket.aigap.com/data/catalog.json): every listing, every seller, and the day's exchange rates, in one file (~20 MB). Rewritten each ingest cycle. Prefer this to paginating the API for a whole-catalogue copy. - [Sitemap](https://roboticmarket.aigap.com/sitemap.xml) ## Optional - [Storefront](https://roboticmarket.aigap.com/): the human version, if you need to show someone where a figure came from. - [Seller listing terms](https://roboticmarket.aigap.com/Partners.dc.html): how a shop asks to be included, and what the crawler will and will not do to their site. ## Photographs Product photographs are the sellers'. We keep our own copies so the storefront can show them, and a single-listing lookup returns one URL for that purpose. Search results do not carry them: showing a picture beside a listing you are quoting is one thing, handing out a seller's photography in bulk is another.