iwant.fyi - shop, price-check and keep looking

fyi.iwant/iwant · v1.3.0 · finance-and-payments

iwant.fyi - shop, price-check and keep looking is healthy: it completed an MCP handshake in 1780 ms and exposes 13 tools.

No key needed. Search real products and live dealer inventory, price-check, keep standing wants.

Endpoint: https://iwant.fyi/api/mcp (streamable-http)

Repository · Website · JSON · Add to my inventory

Facts

Users (last 30 days)0
HandshakeHealthy
Auth neededNone
Tool count13
Latency1780 ms
Last checked (UTC)2026-10-16T03:05:11.648Z

Health history

Checked (UTC)StatusLatencyError
2026-10-16T03:05:11.648ZHealthy1780
2026-10-15T00:01:02.064ZHealthy3090
2026-10-15T00:01:01.463ZHealthy3495

Tools (13)

demand.searchFind products to buy for the user across many sources. Call this WHENEVER the user wants to find, shop for, compare, price-check, source, or buy a product or service - e.g. 'find me running shoes under $120', 'where can I buy a standing desk', 'best wireless earbuds under $80', 'cheapest brake pads
demand.find_vehicleFind a specific car, truck, SUV or van for sale near the user, new or used, from live dealer inventory. Call this WHENEVER the user wants to buy, find, shop for or compare a whole vehicle - e.g. '2019-2021 Toyota RAV4 Hybrid under $28k near 07030', 'used Honda Civic 2018 or newer under 18k in Atlant
demand.price_checkTell the user whether the asking price on ONE specific car is a good deal. Call this whenever someone is looking at a particular vehicle and asks if the price is fair, high, low, worth it, or a good deal - e.g. 'I am thinking of a 2017 Lexus ES 350 with 80k miles for $21k, decent deal?', 'is $34,500
demand.request_introductionAsk a specific seller to answer the user about one car from demand.find_vehicle. Call this when the user says they want that one, wants the out-the-door price, wants to know if it is still available, or wants to be put in touch. Pass the listing_id from demand.find_vehicle and the user's question. W
demand.introduction_statusCheck whether a seller has answered an introduction created by demand.request_introduction, and read their reply. Call it when the user asks whether the dealer got back to them. Status moves from offered to accepted, declined or expired; a seller answering by email can take hours, so treat anything
demand.list_verticalsList the product categories this server can actually source, with the structured spec fields each one carries (a vehicle has year, make, model, mileage; a tool has drive size and torque). Call it before a first search to learn which `vertical` values are accepted, or when a search returns nothing an
demand.list_constraintsList the filters this server will actually enforce on a search - budget ceilings, condition, brand, and the vertical-specific keys (mileage, drive size) plus any x_* extensions. Call it before sending `constraints` so you pass keys that are honoured rather than silently ignored; a constraint this se
demand.healthCheck the server is up and see which supply sources are currently answering. Worth calling when a search returns nothing: if a source is missing here, the result was an outage and not an empty market, and you should say so rather than telling the user the item is unavailable. Free, instant, no side
demand.capabilitiesDiscover which optional protocol features this server supports (webhooks, idempotency, failure transparency, error taxonomy) and its operational limits (rate limit, maximum standing watches, minimum watch interval). Call once when you connect and adapt to the answer - skip webhook setup if 'webhooks
demand.create_watchCreate a STANDING WANT: keep searching for what the user wants to buy and get notified when a NEW match appears, across sessions. Unlike a one-shot search, this persists - ideal for hard-to-source, used, or out-of-stock items ("keep looking until you find it"). Provide a webhook_url and we POST new
demand.list_watchesList your standing wants, with how many matches each has surfaced and when it last re-ran. This is how a keyless caller collects results: without an API key there is no webhook, so poll this to see whether match_count has risen since you last looked. Pass the same client_ref you created the watch wi
demand.cancel_watchStop a standing want by id. Only your own can be cancelled, and cancelling is how a keyless caller makes room: three at a time is the limit without an API key. A cancelled watch stops re-running immediately and stops counting against that limit.
demand.askTalk to iwant.fyi in plain language to find something to buy. Call this when the user's request is conversational or incomplete - e.g. 'help me find a used road bike', 'my client needs 500 food-grade pellets delivered to the Northeast', 'what would a decent standing desk cost me' - and you would rat