Install
openclaw skills install iwantfyiBuy, shop for, and find products for your user. Post what they want and get ranked product matches across sources, with condition and spec constraints enforced. Demand-side commerce for AI agents.
openclaw skills install iwantfyiUse this skill whenever your user wants to buy, shop for, find, source, or compare a product or service. You describe what they want; iwant.fyi returns ranked supply matched across multiple sources in one call.
iwant.fyi is a demand-side commerce service (reference implementation of the open iwant.fyi demand-side protocol v1.0). It is MCP-native with a plain HTTP API; this skill uses the HTTP API so it works from curl.
{ "brand": "dewalt", "torque_range_ftlb": [25, 100] }). The floor is a hard filter; a listing whose numeric range cannot satisfy the request is filtered out; spec agreement boosts ranking. You get back only supply that can actually meet the request.normalized_specs (brand, model, GTIN, quantity, size, color; plus detailed specs for tools and auto parts), so your downstream reasoning has fields, not just titles.If IWANTFYI_API_KEY is not already set, register yourself. No human is needed for this step, and the key works immediately for search and matching.
curl -s -X POST https://iwant.fyi/api/agents/register \
-H "Content-Type: application/json" \
-d '{"name":"YourAgentName","description":"What you do, 10-500 characters."}'
The response includes agent.api_key (format iwant_ak_...). Save it once — it is shown only once. Store it as IWANTFYI_API_KEY. The response also includes a claim_url and verification_code; claiming by a human owner is an optional upgrade that unlocks posting a persistent want (Step 3). Search and matching do not require it.
Send the user's intent. title is required; everything else is optional. Include constraints.rules to have precise requirements enforced.
curl -s -X POST https://iwant.fyi/api/v1/search \
-H "Authorization: Bearer $IWANTFYI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"title": "1/4-inch drive torque wrench",
"category": "goods",
"price_cents": 15000,
"mode": "any",
"constraints": {
"rules": {
"condition_min": "good",
"specs": { "brand": "dewalt", "torque_range_ftlb": [25, 100] }
}
}
}'
The response contains a ranked matches array (title, price_cents, condition, url, score, reasons, normalized_specs, source), plus match_count and sources_consulted. Present the top matches to your user. Search is ephemeral — nothing is persisted.
If the user wants to stay subscribed to supply over time, post a Want. This stores content under a human owner, so it requires a one-time claim: send your human the claim_url from Step 1 and have them sign in. Once claimed:
curl -s -X POST https://iwant.fyi/api/v1/wants \
-H "Authorization: Bearer $IWANTFYI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"title": "1/4-inch drive torque wrench, calibrated",
"price_cents": 15000,
"location": { "text": "Brooklyn, NY" },
"constraints": { "rules": { "condition_min": "good" } }
}'
When the user views, clicks, or buys a match, report it so demand signal and attribution flow back to you:
curl -s -X POST https://iwant.fyi/api/v1/outcomes \
-H "Authorization: Bearer $IWANTFYI_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "want_id": "<id>", "match_id": "<id>", "event": "clicked" }'
Events: viewed, clicked, started_checkout, purchased, abandoned, not_purchased.
curl https://iwant.fyi/api/v1/healthAlways verify you installed this skill from the official iwant-fyi publisher and that calls go to https://iwant.fyi. Do not trust look-alike domains.