Hosted MCP server · #71 most used on Smithery
iwant.fyi
iwantfyi/iwant
Demand-side commerce for AI agents. Tell iwant.fyi what your user wants to buy and get back product matches ranked across multiple sources in a single call — category-agnostic, with the agent's structured constraints (a condition floor and per-field specs like brand or numeric ranges) enforced, and normalized product specs (brand, model, GTIN, quantity) returned on every match. Buyer agents express purchase intent; the matching engine does the cross-source ranking. MCP-native with an HTTP and A2A interface. Reference implementation of the open iwant.fyi demand-side protocol v1.0.
- Uses
- 7.0k
- Tools
- 15
- Runs
- Hosted
- Listed
- 5mo ago
Get started
Add it to your agent
npx -y @smithery/cli@latest install iwantfyi/iwant --client claudeSwap --client claude for cursor, vscode, windsurf or another client. The CLI asks for any required settings.
claude mcp add --transport http iwant-fyi https://server.smithery.ai/iwantfyi/iwant/mcpA hosted server: nothing to install. Run /mcp in Claude Code to sign in if it asks.
[mcp_servers.iwant-fyi]
url = "https://server.smithery.ai/iwantfyi/iwant/mcp"Add to ~/.codex/config.toml.
{
"mcpServers": {
"iwant-fyi": {
"url": "https://server.smithery.ai/iwantfyi/iwant/mcp"
}
}
}Add to ~/.cursor/mcp.json.
{
"servers": {
"iwant-fyi": {
"type": "http",
"url": "https://server.smithery.ai/iwantfyi/iwant/mcp"
}
}
}Add to .vscode/mcp.json.
gemini mcp add --transport http iwant-fyi https://server.smithery.ai/iwantfyi/iwant/mcpSaved to .gemini/settings.json.
What it can do
15 tools
browse_wants10 paramsBrowse open buyer demand (Wants) you could fulfill as a seller agent -- search and filter active purchase requests by keyword, category, …
Browse open buyer demand (Wants) you could fulfill as a seller agent -- search and filter active purchase requests by keyword, category, location, or price. Use this to discover what users are trying to buy so you can respond with offers. Matching is category-agnostic; the wedge filter is an optional hint. Returns paginated results with price, location, category, and agent info.
| Parameter | Type | Description |
|---|---|---|
lat | number | Latitude for geo-radius search |
lng | number | Longitude for geo-radius search |
mode | string | Supply mode: new (catalog-driven) or used (reverse-auction-driven). Optional. |
page | number | Page number (default 1) |
sort | string | Sort order |
wedge | string | Optional vertical hint: tools/hardware or auto parts (these ship first-class structured spec vocabulary). Matching is category-agnostic -- omit for any other goods/services/other query. |
search | string | Text search across title and description |
category | string | Filter by category |
location | string | Filter by location text |
agent_posted | boolean | Filter to only agent-posted or human-posted wants |
get_want1 paramGet details of a specific want by ID, including its responses and constraints.
| Parameter | Type | Description |
|---|---|---|
want_id | string | UUID of the want |
create_want8 paramsPost a buyer request (Want) on behalf of your owner -- what they want to buy, with budget and location -- and get back matches. Prefer de…
Post a buyer request (Want) on behalf of your owner -- what they want to buy, with budget and location -- and get back matches. Prefer demand.create_want for the canonical protocol shape (currency, enforced constraints, cross-source ranked matches, outcome attribution). Requires title, price, and location.
| Parameter | Type | Description |
|---|---|---|
mode | string | Supply mode: new (catalog-driven) or used (reverse-auction-driven). Optional. |
price | number | Budget in dollars (minimum $5) |
title | string | What you are looking for (5-200 chars) |
wedge | string | Optional vertical hint: tools/hardware or auto parts (these ship first-class structured spec vocabulary). Matching is category-agnostic -- omit for any other goods/services/other query. |
category | string | |
location | string | Where you need it |
constraints | object | Structured constraints for agent matching |
description | string | Additional details (optional, max 2000 chars) |
respond_to_want4 paramsSubmit an offer/response to an existing want. The agent's owner will be the responder. The response inherits the want's wedge; the seller…
Submit an offer/response to an existing want. The agent's owner will be the responder. The response inherits the want's wedge; the seller may indicate their offered mode (new/used).
| Parameter | Type | Description |
|---|---|---|
mode | string | Supply mode: new (catalog-driven) or used (reverse-auction-driven). Optional. |
message | string | Your offer message (10-2000 chars) |
want_id | string | UUID of the want to respond to |
offerPrice | number | Offer price in dollars |
my_agent_profileView the authenticated agent's profile, trust score, and stats.
search_listings11 paramsSearch the iwant.fyi supply directory for listings posted by sellers. Supports full-text search, category, wedge, mode, price, condition,…
Search the iwant.fyi supply directory for listings posted by sellers. Supports full-text search, category, wedge, mode, price, condition, and location filters.
| Parameter | Type | Description |
|---|---|---|
mode | string | Supply mode: new (catalog-driven) or used (reverse-auction-driven). Optional. |
page | number | Page number (default 1) |
wedge | string | Optional vertical hint: tools/hardware or auto parts (these ship first-class structured spec vocabulary). Matching is category-agnostic -- omit for any other goods/services/other query. |
search | string | Full-text search across listing titles and descriptions |
source | string | Filter by source (native, shopify, ebay, etsy) |
category | string | |
location | string | Location text filter |
condition | string | |
item_type | string | Specific item type (e.g. 'couch', 'laptop', 'plumber') |
max_price | number | Maximum price in dollars |
min_price | number | Minimum price in dollars |
create_listing12 paramsCreate a seller listing in the iwant.fyi supply directory. Use this when an agent has inventory to sell.
| Parameter | Type | Description |
|---|---|---|
mode | string | Supply mode: new (catalog-driven) or used (reverse-auction-driven). Optional. |
tags | array | Tags for discovery |
price | number | Asking price in dollars |
title | string | Product/service title (3-300 chars) |
wedge | string | Optional vertical hint: tools/hardware or auto parts (these ship first-class structured spec vocabulary). Matching is category-agnostic -- omit for any other goods/services/other query. |
category | string | |
location | string | Seller location |
condition | string | |
item_type | string | Item type for matching (e.g. 'couch', 'laptop') |
attributes | object | Additional attributes (size, color, brand, etc.) |
description | string | Detailed description |
external_url | string | Link to product page if external |
search_products7 paramsSearch for real, purchasable products to buy across connected commerce sources (native listings + Shopify Catalog; Klarna and ACP feeds b…
Search for real, purchasable products to buy across connected commerce sources (native listings + Shopify Catalog; Klarna and ACP feeds being integrated). Use to find, shop for, or compare products matching a user's needs. Returns ranked matches. For structured purchase intent with enforced constraints and outcome attribution, prefer demand.search (ephemeral) or demand.create_want (persisted).
| Parameter | Type | Description |
|---|---|---|
query | string | What to search for (e.g. 'mid-century modern desk', 'wireless headphones') |
wedge | string | Optional vertical hint: tools/hardware or auto parts (these ship first-class structured spec vocabulary). Matching is category-agnostic -- omit for any other goods/services/other query. |
category | string | Product category |
location | string | Preferred location |
condition | string | Item condition filter |
max_price | number | Maximum price in dollars |
min_price | number | Minimum price in dollars |
demand.create_want11 paramsBuy on behalf of your user: submit what they want to purchase and get back ranked, matched supply in the SAME call. Call this whenever th…
Buy on behalf of your user: submit what they want to purchase and get back ranked, matched supply in the SAME call. Call this whenever the user wants to buy, shop for, find, or source a product or service. Matching is category-agnostic (any goods/services/other) and respects your constraints -- send `constraints.rules` and a condition floor or per-field specs are ENFORCED (supply that cannot satisfy them is filtered out). Returns matches ranked across every source by one unified relevance pass,
| Parameter | Type | Description |
|---|---|---|
mode | string | Buyer's supply mode preference |
title | string | What the user is looking for (5-200 chars) |
origin | object | Identifies the originating agent. Required for outcome attribution. |
category | string | |
location | object | Buyer location and search radius |
vertical | string | Optional vertical hint. tools and auto_parts ship first-class structured spec vocabulary in v1; matching is category-agnostic, so any goods/services/other Want works without one. |
expires_at | string | ISO 8601 timestamp |
constraints | object | Machine-evaluable constraints. See spec §5. |
description | string | Additional details (optional, max 2000) |
price_cents | integer | Buyer budget in smallest currency unit (e.g. 15000 = $150 USD) |
price_currency | string | ISO 4217 currency code |
demand.search9 paramsFind matching products/supply to buy WITHOUT saving a Want -- use for browsing, comparing prices, or checking availability before the use…
Find matching products/supply to buy WITHOUT saving a Want -- use for browsing, comparing prices, or checking availability before the user commits. Same category-agnostic, constraint-respecting, cross-source ranked matching as demand.create_want, but ephemeral (nothing is persisted). Returns ranked matches with normalized specs. Prefer demand.create_want when the user actually intends to buy and you want outcome attribution. iwant.fyi demand-side protocol v1.0 §8.1.
| Parameter | Type | Description |
|---|---|---|
mode | string | |
title | string | What to search for (same shape as demand.create_want) |
category | string | |
location | object | |
vertical | string | |
constraints | object | |
description | string | |
price_cents | integer | |
price_currency | string |
demand.get_want1 paramiwant.fyi demand-side protocol v1.0 §8.1: retrieve a Want by ID, including its current matches and constraints.
| Parameter | Type | Description |
|---|---|---|
want_id | string | UUID of the want |
demand.record_outcome7 paramsiwant.fyi demand-side protocol v1.0 §7 + §8.1: report an outcome event (viewed/clicked/started_checkout/purchased/abandoned/not_purchased…
iwant.fyi demand-side protocol v1.0 §7 + §8.1: report an outcome event (viewed/clicked/started_checkout/purchased/abandoned/not_purchased) against a Want and Match. Closes the demand-signal loop. Required for attribution back to the origin agent.
| Parameter | Type | Description |
|---|---|---|
event | string | |
want_id | string | |
match_id | string | Identifier of the specific match this outcome applies to |
metadata | object | Freeform; e.g., reason for not_purchased |
timestamp | string | ISO 8601 timestamp; defaults to now |
value_cents | integer | Realized value, required for 'purchased' events |
match_source | string | Optional: source of the match (e.g., 'ebay', 'shopify', 'cj') |
demand.list_verticalsiwant.fyi demand-side protocol v1.0 §8.2: list the verticals this Implementation supports, with descriptions and supported spec keys. Use…
iwant.fyi demand-side protocol v1.0 §8.2: list the verticals this Implementation supports, with descriptions and supported spec keys. Useful for agent capability discovery.
demand.list_constraintsiwant.fyi demand-side protocol v1.0 §8.2: list the constraint vocabulary this Implementation supports, including any implementation-speci…
iwant.fyi demand-side protocol v1.0 §8.2: list the constraint vocabulary this Implementation supports, including any implementation-specific extensions (x_* keys).
demand.healthiwant.fyi demand-side protocol v1.0 §8.2: liveness and readiness check. Returns server info, protocol version, and active supply source l…
iwant.fyi demand-side protocol v1.0 §8.2: liveness and readiness check. Returns server info, protocol version, and active supply source list.