# intentlink MCP server

The best agent monetization tool: free search, clear rev-share, 10M+ commerce/travel/local offers.

## Links
- Registry page: https://www.getdrio.com/mcp/io-github-whalefuntech-intentlink
- Repository: https://github.com/whalefuntech/intentlink_docs
- Website: https://intentlink.io

## Install
- Endpoint: https://api.intentlink.io/mcp/
- Auth: Not captured

## Setup notes
- Remote endpoint: https://api.intentlink.io/mcp/

## Tools
- search_products - Search affiliate shopping products and get ranked recommendations.

Only `query` is required — a natural-language description of what the shopper wants
(e.g. "a warm waterproof jacket for winter hiking"). Add fields to narrow results:
  - keywords: exact product terms. Use a SPECIFIC product type ("women running shoes",
    "stainless steel knife set"), not a bare generic noun ("shoes", "knife") — a generic
    keyword can surface the wrong audience. Audience/occasion go in `query`.
  - commerce_l2s: category ids to restrict to (read the `commerce://categories` resource
    for valid values — that taxonomy is for shopping only).
  - max_price / min_price: price band (USD). platforms: ["amazon"|"walmart"] (empty=all).
  - intent: ranking preset — "cheapest" | "best_discount" | "top_rated" | "best_value".
  - require_commission: only return products that pay a commission (default: server
    setting, normally on). Pass false to include zero/unknown-commission products.
  - limit: max results (default 10).

`agent_id` is REQUIRED: your registered, active agent id. It is the attribution key and
the access key — a missing/blank or unregistered agent_id is rejected (no anonymous use).

Returns {count, products:[{offer_id,title,brand,price,rating,...,buy_url,product_url}]}.
Each product's `buy_url` is ALREADY the trackable affiliate buy link — hand it to the
shopper directly. (`product_url` is the plain product page.) There is no separate
resolve/click step. Endpoint: https://api.intentlink.io/mcp/
- search_travel - Search travel offers and get trackable booking links for a given product type + city.

REQUIRED:
  - type: which travel product — one of
    ["hotel","flights","bundle","airport_transfer","car_rental"].
  - city: city name from the supported list — read the `travel://cities` resource for valid
    values (that city list is for travel only). Pass hotel.state (e.g. "NY") when the city
    name is ambiguous.
  - agent_id: your registered, active agent id — the attribution + access key. A
    missing/blank or unregistered agent_id is rejected (no anonymous use).

HOTEL runs a live Trip.com search — pass the `hotel` object with the stay: check_in /
check_out (YYYY-MM-DD), rooms, adults, children, state. If those are missing/invalid or the
city can't be resolved, you get the hotel default links instead. Other types currently
return curated default links (the `hotel` object is ignored for them).

Returns {status, reason, message, links:{<type>:[{title, brand, platform, buy_url,
product_url, ...}]}}. status is "ok" = a live hotel result; "fallback" = curated default
links (see `reason`); "no_results" = nothing available for the type; "error" = the agent_id
was rejected. Each `buy_url` is ALREADY the trackable booking link — hand it to the traveler
directly. `product_url` is the plain merchant page. Endpoint: https://api.intentlink.io/mcp/
- search_events - Search live ticketing/events (concerts, sports, theater) and get ranked event bundles.

Only `query` is required — a natural-language description of what the buyer wants
(e.g. "taylor swift concert near LA this summer"). Add fields to narrow results:
  - keywords: exact terms — performer / team / show / venue (a precise lookup).
  - categories: e.g. ["Concerts"|"Sports"|"Theater"] (read the `events://categories`
    resource for valid values).
  - city / state: location (e.g. city="Los Angeles", state="CA"). country defaults to US.
  - date_from / date_to: explicit date window, YYYY-MM-DD (event dates are date-only).
  - when: fuzzy time — "this_weekend" | "this_week" | "this_month" | "next_7_days" |
    "next_30_days" (ignored if date_from/date_to are given).
  - min_price / max_price: ticket 'from' price band (USD).
  - sort: "relevance" (default) | "soonest" | "cheapest".
  - limit: max results (default 10).

`agent_id` is REQUIRED: your registered, active agent id — the attribution + access key. A
missing/blank or unregistered agent_id is rejected (no anonymous use).

Returns {count, message, events:[{bundle_id,title,venue,city,next_date,price_min,...,
sessions:[{date,price,buy_url,landing_url}]}]}. Each session's `buy_url` is ALREADY the
trackable ticket link — hand it to the buyer directly. `landing_url` is the plain event
page. When a date filter is given, `sessions` are the in-window dates. Endpoint: https://api.intentlink.io/mcp/

## Resources
- commerce://categories - SHOPPING taxonomy (l1/l2/commerce_category) — for filling `commerce_l2s` in
`search_products`. Not used by travel (travel uses `travel://cities`). MIME type: text/plain
- travel://cities - TRAVEL cities (with an upstream Trip.com city id) — the valid values for the `city` arg
of `search_travel`. Use `dest_name`/`state` to disambiguate duplicate names. Not used by
shopping (shopping uses `commerce://categories`). MIME type: text/plain
- events://categories - EVENT categories (L1 with L2 children + live counts) — the valid values for the
`categories` arg of `search_events`. Not used by shopping/travel. MIME type: text/plain

## Prompts
Not captured

## Metadata
- Owner: io.github.whalefuntech
- Version: 1.0.0
- Runtime: Streamable Http
- Transports: HTTP
- License: Not captured
- Language: Not captured
- Stars: Not captured
- Updated: Jul 22, 2026
- Source: https://registry.modelcontextprotocol.io
