intentlink
The best agent monetization tool: free search, clear rev-share, 10M+ commerce/travel/local offers.
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"intentlink": {
"url": "https://api.intentlink.io/mcp/"
}
}
}Puntos de conexión remotos
https://api.intentlink.io/mcp/streamable-httpQué puede hacer
Inventario de herramientas
Herramientas (3)
🟡search_products(query, agent_id, keywords, commerce_l2s, max_price, ...)
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.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"title": "Query",
"type": "string"
},
"agent_id": {
"title": "Agent Id",
"type": "string"
},
"keywords": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Keywords"
},
"commerce_l2s": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Commerce L2S"
},
"max_price": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Max Price"
},
"min_price": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Min Price"
},
"platforms": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Platforms"
},
"intent": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Intent"
},
"require_commission": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"title": "Require Commission"
},
"limit": {
"default": 10,
"title": "Limit",
"type": "integer"
}
},
"required": [
"query",
"agent_id"
],
"title": "search_productsArguments"
}Esquema de salida
{
"type": "object",
"additionalProperties": true,
"title": "search_productsDictOutput"
}🟢search_travel(type, city, agent_id, hotel, limit)
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.
Esquema de entrada
{
"type": "object",
"properties": {
"type": {
"$ref": "#/$defs/TravelSearchType"
},
"city": {
"title": "City",
"type": "string"
},
"agent_id": {
"title": "Agent Id",
"type": "string"
},
"hotel": {
"anyOf": [
{
"$ref": "#/$defs/TravelHotelParams"
},
{
"type": "null"
}
],
"default": null
},
"limit": {
"default": 10,
"title": "Limit",
"type": "integer"
}
},
"required": [
"type",
"city",
"agent_id"
],
"$defs": {
"TravelHotelParams": {
"description": "Hotel-only stay params. Grouped here (not flattened onto the request) since they apply to a\nlive hotel search only. Missing/invalid values → the service returns default hotel links.",
"properties": {
"check_in": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Check In"
},
"check_out": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Check Out"
},
"rooms": {
"default": 1,
"minimum": 1,
"title": "Rooms",
"type": "integer"
},
"adults": {
"default": 2,
"minimum": 1,
"title": "Adults",
"type": "integer"
},
"children": {
"default": 0,
"minimum": 0,
"title": "Children",
"type": "integer"
},
"state": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "US state name/abbr to disambiguate duplicate city names.",
"title": "State"
}
},
"title": "TravelHotelParams",
"type": "object"
},
"TravelSearchType": {
"description": "Travel product type (commerce_l2). ``hotel`` has a live search; the rest currently return\ncurated default links.",
"enum": [
"hotel",
"flights",
"bundle",
"airport_transfer",
"car_rental"
],
"title": "TravelSearchType",
"type": "string"
}
},
"title": "search_travelArguments"
}Esquema de salida
{
"type": "object",
"additionalProperties": true,
"title": "search_travelDictOutput"
}🟡search_events(query, agent_id, keywords, categories, city, ...)
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.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"title": "Query",
"type": "string"
},
"agent_id": {
"title": "Agent Id",
"type": "string"
},
"keywords": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Keywords"
},
"categories": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Categories"
},
"city": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "City"
},
"state": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "State"
},
"date_from": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Date From"
},
"date_to": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Date To"
},
"when": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "When"
},
"min_price": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Min Price"
},
"max_price": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Max Price"
},
"sort": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Sort"
},
"limit": {
"default": 10,
"title": "Limit",
"type": "integer"
}
},
"required": [
"query",
"agent_id"
],
"title": "search_eventsArguments"
}Esquema de salida
{
"type": "object",
"additionalProperties": true,
"title": "search_eventsDictOutput"
}Comunidad
Evidencia