Amazon MCP Server
Búsqueda de palabras clave de Amazon, detalles de productos, perfiles de vendedores y catálogos de vendedores, como JSON estructurado.
Documentación
Amazon MCP Server
Un servidor de Protocolo de Contexto de Modelo (MCP) alojado que le brinda a Claude, Cursor, Windsurf y cualquier otro cliente MCP cuatro herramientas de solo lectura para Amazon. Ejecute una búsqueda por palabra clave, lea un producto por su ASIN, consulte un vendedor y recorra lo que ese vendedor ofrece, todo como JSON estructurado, sin cuenta de desarrollador de Amazon y sin nada que alojar.
Lee páginas públicas de Amazon que un visitante sin sesión puede ver, en cualquiera de los 23 dominios regionales.
1,000 créditos gratuitos cada mes, sin necesidad de tarjeta, lo que equivale a 200 llamadas a Amazon a la tarifa de 5 créditos.
https://mcp.hasdata.com/api/mcp?apis=amazon
Contenido
- Lo que necesitas
- Inicio rápido
- Ejemplos de indicaciones
- Herramientas
- Errores y rutas de fallo
- Precios, nivel gratuito y límites
- Selección de herramientas
- Cómo se compara
- Preguntas frecuentes
- Enlaces de HasData
- Desarrollo
- Contribuciones
- Licencia
Lo que necesitas
Un cliente MCP y una clave de API de HasData desde el panel de control, que se crea gratis sin tarjeta, y el nivel gratuito cubre aproximadamente 200 llamadas al mes a la tarifa de 5 créditos. Este es un servidor remoto, por lo que la ruta más simple es una URL y un encabezado x-api-key, sin contenedor que ejecutar. Un cliente que solo habla stdio lo alcanza a través de un lanzador ligero, publicado como @hasdata/amazon-mcp en npm y hasdata-amazon-mcp en PyPI, como se muestra a continuación.
Inicio rápido
La URL del servidor es la misma para todos los clientes. Lo ejecutamos de forma práctica en Claude Code y Claude Desktop. Los demás bloques siguen el formato documentado de cada cliente para un servidor remoto.
| Campo | Valor |
|---|---|
| URL | https://mcp.hasdata.com/api/mcp?apis=amazon |
| Transporte | HTTP, transmisible |
| Encabezado de autenticación | x-api-key: HASDATA_API_KEY |
Los clientes con soporte OAuth pueden agregar la misma URL como conector e iniciar sesión sin poner una clave en un archivo de configuración.
Claude Code
claude mcp add --transport http amazon "https://mcp.hasdata.com/api/mcp?apis=amazon" \
--header "x-api-key: HASDATA_API_KEY"
Claude Desktop
Configuración, luego Conectores, luego Agregar conector personalizado, luego pegue https://mcp.hasdata.com/api/mcp?apis=amazon e inicie sesión.
Para la ruta de archivo de configuración, Claude Desktop solo carga servidores locales (stdio), por lo que alcanza un servidor remoto a través de un lanzador stdio. El paquete @hasdata/amazon-mcp es ese lanzador, y lee la clave del entorno. Agregue esto a claude_desktop_config.json:
{
"mcpServers": {
"amazon": {
"command": "npx",
"args": ["-y", "@hasdata/amazon-mcp"],
"env": { "HASDATA_API_KEY": "YOUR_KEY" }
}
}
}
Para Python en lugar de Node, cambie el lanzador por el paquete de PyPI, que uvx ejecuta sin instalación manual:
{
"mcpServers": {
"amazon": {
"command": "uvx",
"args": ["hasdata-amazon-mcp"],
"env": { "HASDATA_API_KEY": "YOUR_KEY" }
}
}
}
Cursor
~/.cursor/mcp.json para cada proyecto, o .cursor/mcp.json para uno solo:
{
"mcpServers": {
"amazon": {
"url": "https://mcp.hasdata.com/api/mcp?apis=amazon",
"headers": { "x-api-key": "HASDATA_API_KEY" }
}
}
}
Windsurf
~/.codeium/windsurf/mcp_config.json. Windsurf llama al campo serverUrl, no url:
{
"mcpServers": {
"amazon": {
"serverUrl": "https://mcp.hasdata.com/api/mcp?apis=amazon",
"headers": { "x-api-key": "HASDATA_API_KEY" }
}
}
}
VS Code
.vscode/mcp.json en el espacio de trabajo:
{
"servers": {
"amazon": {
"type": "http",
"url": "https://mcp.hasdata.com/api/mcp?apis=amazon",
"headers": { "x-api-key": "HASDATA_API_KEY" }
}
}
}
Ejemplos de indicaciones
Cada una de estas aterriza en una herramienta, o en dos en secuencia cuando la segunda necesita un identificador que la primera devuelve.
- Encuentra soportes para portátiles de menos de $40 en Amazon y ordénalos por reseña promedio de clientes.
- ¿Cuánto cuesta el ASIN B0DHJ7SBDR ahora mismo, y cuántos otros vendedores lo ofrecen?
- Compara el precio de este ASIN en amazon.com y amazon.de.
- ¿Quién es el vendedor detrás del ASIN B0DHJ7SBDR, y cuál es su calificación de por vida?
- Recorre todo lo que el vendedor ATQQBVXK188KS ofrece y extrae los artículos con descuento.
- Busca auriculares inalámbricos con entrega a 10001 y dime cuáles llegan más rápido.
Una indicación que nombra un producto en lugar de un ASIN requiere dos llamadas: una búsqueda para resolver el ASIN y una consulta de producto para leerlo. Una indicación que nombra un vendedor por marca en lugar de por ID de vendedor tiene la misma forma: una consulta de producto para encontrar el ID del vendedor y una consulta de vendedor para leer el perfil.
Herramientas
Cuatro herramientas, 5 créditos por llamada exitosa. Cada herramienta acepta domain para cambiar el mercado, uno de 23 valores, www.amazon.com a través de los mercados europeos, asiáticos y otros regionales, y language donde el mercado ofrece más de uno.
Obtener resultados de búsqueda de Amazon
hasdata_amazon_search_getSearchResults
Una página de resultados de búsqueda para una palabra clave.
| Parámetro | Tipo | Requerido | Notas |
|---|---|---|---|
q | string | sí | El término de búsqueda |
domain | string | Mercado, por defecto www.amazon.com | |
page | number | Página de resultados, comenzando en 1 | |
sortBy | string | featured, priceLowToHigh, priceHighToLow, avgCustomerReview, newestArrivals o bestSellers | |
deliveryZip | string | Código postal, que cambia la disponibilidad y las fechas de entrega | |
shippingLocation | string | Código de país de dos letras para la dirección de entrega | |
language | string | Código de idioma del mercado |
Devuelve productResults, un ads array de ubicaciones patrocinadas, y pagination con totalResults, currentPage, nextPageUrl y otherPageUrls. Cada resultado lleva position, asin, title, url, isSponsored, un objeto price, image, reviews con rating y totalReviews, un objeto badges, boughtInPastMonth y deliveryInfo.
Un resultado de búsqueda es deliberadamente delgado. La marca, las características, las variantes, las imágenes y el vendedor no están aquí; provienen de la herramienta de producto a continuación. Resuelva el ASIN primero, luego lea el producto.
{
"position": 1,
"asin": "B077B9W343",
"title": "Nulaxy Ergonomic Adjustable Laptop Stand for Desk, Dual Foldable Computer Riser...",
"isSponsored": false,
"price": { "symbol": "$", "currentPrice": 15.99, "beforePrice": 17.99 },
"image": "https://m.media-amazon.com/images/I/61jtA8kHq9L.jpg",
"reviews": { "totalReviews": 16800, "rating": 4.7 },
"badges": { "amazonChoice": true, "amazonPrime": false, "bestSeller": false },
"boughtInPastMonth": "10K+",
"deliveryInfo": { "freeDelivery": "Join Prime", "fastestDelivery": "Mon, Sep 14" },
"url": "https://www.amazon.com/dp/B077B9W343"
}
Obtener detalles del producto de Amazon
hasdata_amazon_product_getProductDetails
Un producto completo, por su ASIN.
| Parámetro | Tipo | Requerido | Notas |
|---|---|---|---|
asin | string | sí | El Número de Identificación Estándar de Amazon |
domain | string | Mercado, por defecto www.amazon.com | |
otherSellers | boolean | También recopila ofertas competidoras. Cuesta 5 créditos además de la base, 10 en lugar de 5 | |
deliveryZip | string | Código postal, que cambia la disponibilidad y las fechas de entrega | |
shippingLocation | string | Código de país de dos letras para la dirección de entrega | |
language | string | Código de idioma del mercado |
Devuelve un objeto product con asin, url, title, brand, isAvailable, condition, un objeto price, primaryFeatures y un mapa más amplio features, featureBullets, description, variants, breadcrumbs, whatIsInTheBox, colecciones de imágenes y videos, specification, reviewsInfo, las estimaciones de entrega, y el seller actual con sellerUrl.
El objeto price contiene currentPrice, beforePrice cuando el artículo está con descuento, discount, priceFrom y otherOfferQuantity. Ese último campo es un conteo de ofertas competidoras, que la llamada base informa sin obtenerlas. Solicite otherSellers solo cuando las ofertas en sí sean necesarias, porque duplica el precio de la llamada.
{
"asin": "B0DHJ7SBDR",
"title": "Apple iPhone 16 Pro Max, 1TB, Desert Titanium",
"brand": "Apple",
"condition": "Refurbished - Excellent",
"price": {
"symbol": "$",
"currentPrice": 974,
"beforePrice": 949.99,
"discount": "-11%",
"otherOfferQuantity": 11
},
"seller": "WirelessSource",
"deliveryIsoDate": "2026-09-11T00:00:00.000Z"
}
Obtener detalles del vendedor de Amazon
hasdata_amazon_seller_getSellerDetails
El perfil público de la tienda de un vendedor.
| Parámetro | Tipo | Requerido | Notas |
|---|---|---|---|
sellerId | string | sí | El ID del vendedor, que una respuesta de producto devuelve en sellerUrl |
domain | string | Mercado, por defecto www.amazon.com | |
language | string | Código de idioma del mercado |
Devuelve un objeto seller con sellerId, url, storefrontUrl, name, businessName, businessAddress, un bloque about, y cuatro ventanas de calificación llamadas oneMonthRatings, threeMonthRatings, twelveMonthRating y lifetimeRating. Cada ventana lleva totalVotes, averageRating y un desglose por estrella con tanto votes como percent.
Las cuatro ventanas son lo que hace que esta herramienta valga una llamada. Un promedio de por vida de 4.5 sobre 2,701 votos y un promedio de un mes de 2 sobre 4 votos describen vendedores muy diferentes, y solo el par muestra una disminución en progreso.
{
"sellerId": "ATQQBVXK188KS",
"name": "Expercom - Apple Premier Partner",
"businessName": "Expercom of Utah, Inc",
"lifetimeRating": { "totalVotes": 2701, "averageRating": 4.5 },
"oneMonthRatings": { "totalVotes": 4, "averageRating": 2 }
}
Obtener productos del vendedor de Amazon
hasdata_amazon_seller_products_getSellerProducts
Una página de lo que un vendedor ofrece.
| Parámetro | Tipo | Requerido | Notas |
|---|---|---|---|
sellerId | string | sí | El ID del vendedor |
domain | string | Mercado, por defecto www.amazon.com | |
page | number | Página de resultados, comenzando en 1 | |
language | string | Código de idioma del mercado |
Devuelve productResults y pagination, con la misma forma que la salida de la herramienta de búsqueda. Cada artículo lleva position, asin, title, url, price, image, reviews, badges, boughtInPastMonth, deliveryInfo y colorUrls. Recorra pagination para llegar al resto del catálogo en lugar de adivinar números de página.
Errores y rutas de fallo
Planifique estos en lugar de asumir un camino feliz.
Una búsqueda sin coincidencias devuelve un resultado exitoso con un array productResults vacío, no un error. requestMetadata.status sigue siendo ok. Pruebe la longitud del array antes de iterar.
Un ASIN que no existe en el mercado elegido responde con un error, no con un producto vacío. El mismo ASIN a menudo existe en un dominio y no en otro, por lo que un fallo en www.amazon.de no significa que el ASIN sea incorrecto.
Un ID de vendedor también está limitado al mercado. El ID que un producto en www.amazon.com devuelve no se resolverá en otro dominio.
Un precio puede estar ausente en una lista en vivo. Los artículos que están agotados, vendidos solo a través de otros vendedores, o bloqueados detrás de una promoción vuelven sin un currentPrice utilizable. Lea isAvailable antes de comparar precios.
deliveryZip y shippingLocation cambian la respuesta, no solo la línea de entrega. La disponibilidad, el precio y la mezcla de vendedores cambian con el destino, por lo que una comparación entre códigos postales tiene que mantener todos los demás parámetros fijos.
Los resultados que llevan datos también llevan un requestMetadata.id que vale la pena citar en soporte.
Precios, nivel gratuito y límites
Cada herramienta de Amazon cuesta 5 créditos por llamada exitosa. Activar otherSellers agrega 5 créditos a la llamada de producto, 10 en lugar de 5, así que déjelo apagado a menos que las ofertas competidoras sean el punto. El tamaño de la respuesta no cambia el precio.
El nivel gratuito es 1,000 créditos cada mes sin tarjeta, lo que equivale a 200 llamadas a Amazon a la tarifa base. Se renueva con el ciclo de facturación, por lo que un agente de bajo volumen funciona en el nivel gratuito indefinidamente.
Los planes de pago comienzan en $49 al mes por 200,000 créditos, lo que equivale a 40,000 llamadas. El precio unitario baja con el volumen, desde $1.23 por 1,000 llamadas en el plan de entrada hasta $0.50 en Business, $0.42 en Growth y $0.37 en los planes de alto volumen más grandes.
Su plan también establece la concurrencia. El nivel gratuito permite 1 solicitud a la vez, Startup 15, Business 30, Growth 50, y los planes de alto volumen van de 200 a 1,500. Reintente en el 429 con retroceso en cualquier cosa desatendida, porque un agente que se expande a través de ASINs alcanzará el techo antes que usted. Una solicitud que devuelve un estado distinto de 200 no se factura. Una llamada exitosa que no encuentra nada sigue siendo una llamada.
Selección de herramientas
Dos reglas cubren la mayor parte de los casos.
Empieza por lo que te da el prompt. Una palabra clave va a la herramienta de búsqueda, un ASIN va directamente a la herramienta de producto, y un ID de vendedor va a una de las dos herramientas de vendedor. Gastar una llamada de búsqueda para llegar a un ASIN que ya tienes es el desperdicio más común.
Luego elige por profundidad. Las herramientas de búsqueda y de productos del vendedor devuelven la misma forma de elemento reducida, útil para clasificar, filtrar y hacer barridos de precios entre muchos productos. La herramienta de producto es la única que devuelve marca, características, variantes, imágenes y el vendedor, y es la única que vale la pena llamar cuando la pregunta es sobre un solo artículo.
Cómo se compara
La propia Product Advertising API de Amazon es la ruta oficial a estos datos, y es un instrumento diferente.
| Product Advertising API | Este servidor | |
|---|---|---|
| Elegibilidad | Una cuenta de Associates aprobada con ventas que califican | Una clave de API |
| Configuración | Registro de Associates, etiqueta, firma de solicitudes | Un encabezado |
| Alcance | Artículos que estás aprobado para promocionar | Cualquier página de listado público |
| Escaparates de vendedores | No se devuelven | Dos herramientas dedicadas |
| Ordenamiento de búsqueda | Conjunto limitado | Los seis pedidos que Amazon muestra a un comprador |
| Costo | Gratis, cuando calificas | De pago más allá del nivel gratuito, 5 créditos por llamada |
La fila que lo decide es la elegibilidad. La Product Advertising API está diseñada para afiliados y su acceso depende de las ventas que ya has realizado, lo que la descarta para investigación, monitoreo y cualquier cosa que un agente haga en tu nombre. Cuando sí calificas y solo necesitas artículos promocionables, la API oficial es la mejor opción.
Preguntas frecuentes
¿Existe un servidor MCP oficial de Amazon?
Amazon no publica uno. Este es mantenido por HasData y lee páginas públicas de Amazon.
¿Qué es un servidor MCP de Amazon?
Un servidor MCP expone herramientas que un cliente de IA puede llamar. Este convierte los resultados de búsqueda de Amazon, las páginas de producto y los escaparates de vendedores en JSON sobre el que un agente puede razonar, sin un navegador o una biblioteca de scraping en tu stack.
¿Necesito una cuenta de Amazon o una clave de API?
No. La única credencial es tu clave de HasData.
¿Qué mercados están cubiertos?
Los 23 dominios que acepta la API, desde www.amazon.com hasta los mercados europeos y asiáticos. Pasa domain para cambiar. Los precios, la disponibilidad y la mezcla de vendedores difieren por mercado, así que una comparación entre dominios es una comparación real en lugar de una conversión de moneda.
¿Por qué un resultado de búsqueda no tiene marca o características?
Amazon no los pone en la página de resultados. La herramienta de búsqueda devuelve lo que muestra la página, y la herramienta de producto devuelve la página del artículo. Esa división es la razón por la que las dos herramientas cuestan lo mismo y devuelven profundidades diferentes.
¿Qué significa otherOfferQuantity?
El número de otros vendedores que ofrecen el mismo artículo, según lo informa la página del producto. Llega con la llamada base. Las ofertas en sí necesitan otherSellers, que cuesta 5 créditos más.
¿Puedo usar esto junto con otras APIs de HasData?
Sí. Una clave cubre todo, y un endpoint las sirve a todas a través del parámetro apis. Apunta un cliente a ?apis=amazon,google_serp para obtener ambos conjuntos de herramientas en una conexión, o a mcp.hasdata.com/api/mcp para el catálogo completo.
¿Está HasData afiliada con Amazon?
No. HasData es un servicio independiente y no está afiliado, respaldado ni patrocinado por Amazon. Amazon es una marca comercial de su respectivo propietario. Las herramientas funcionan solo con datos disponibles públicamente, y eres responsable de usar los resultados de acuerdo con los términos de Amazon y la ley que te aplica.
Cumplimiento y datos personales
Los perfiles de vendedores llevan un nombre comercial y una dirección comercial, que Amazon publica en la página del escaparate. Trátalos como registros comerciales en lugar de datos de forma libre, y verifica tus propias obligaciones antes de almacenarlos.
Enlaces de HasData
- Amazon Scraper API, los endpoints REST detrás de estas herramientas
- Documentación de la API
- Documentación del servidor MCP
- Precios
- Panel de control
Otros servidores MCP de HasData: Google Search, Google Maps, Google Trends, Google Flights, DuckDuckGo, YouTube, TikTok, Instagram, Zillow, Airbnb, Booking.com, Indeed.
Desarrollo
El lanzador es un puente stdio delgado hacia el servidor remoto, así que no hay nada que compilar.
npm install
HASDATA_API_KEY=your_key_here npm test
Las pruebas en test/ verifican el contrato de herramientas, la parte que puede romperse sin un commit aquí. Comprueban que ?apis=amazon devuelve el número esperado de herramientas, que ningún nombre cambió, que cada herramienta todavía declara su parámetro requerido y lleva una descripción, y que la clave en uso realmente es aceptada. Esa última verificación llama a una herramienta de verdad y cuesta 5 créditos, que es el precio de un canario que puede fallar por la razón correcta.
Una prueba más cubre una herramienta que este README no documenta. El servidor también lista una herramienta de reseñas cuyo endpoint upstream está retirado y responde con un error, así que documentarla enviaría a los lectores a un callejón sin salida. La prueba fija ese estado en lugar de ignorarlo, y falla el día que el endpoint regrese o el día que el servidor elimine la herramienta, que es cuando este README necesita una decisión.
El conjunto de pruebas del contrato también se ejecuta semanalmente en un horario, porque la lista de herramientas upstream puede cambiar sin que nadie toque este repositorio.
Contribuciones
Una tabla de herramientas, una muestra de respuesta o un comportamiento documentado que no coincide con la realidad merece un issue. Hay una plantilla exactamente para eso. Las pull requests son bienvenidas para lo mismo, y para cualquier cosa en el lanzador.
Licencia
MIT, ver LICENSE.