mcpField
H
HasData Amazon

HasData Amazon

远程服务
hasdata.com商业与营销102 周前更新

关于 HasData Amazon

HasData Amazon 是托管式 MCP 服务,可将 Amazon 公开页面的数据以结构化 JSON 提供给 MCP 客户端。它支持搜索商品、读取商品详情、查看卖家资料及浏览卖家商品目录。

主要功能

  1. 01按关键词搜索 Amazon 商品
  2. 02按 ASIN 获取商品详情
  3. 03查看卖家资料与评分区间
  4. 04分页浏览卖家商品目录
  5. 05支持 23 个区域站点

适用场景

  1. 01比较不同 Amazon 站点的商品价格
  2. 02查看商品评价、库存与配送信息
  3. 03调查卖家评分并浏览其商品目录

MCP 相关

这是一个通过 Streamable HTTP 提供工具、提示词和资源的远程 MCP 服务。客户端使用 HasData API key 通过 x-api-key 请求,可查询登录用户可见的公开 Amazon 页面数据。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://mcp.hasdata.com/mcp?apis=amazon
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

全部服务地址
Streamable HTTPhttps://mcp.hasdata.com/mcp?apis=amazon需要授权
安装包
npm@hasdata/amazon-mcp1.0.3
pypihasdata-amazon-mcp1.0.3

工具

2
参数类型必填说明
petsnumber否宠物数量。
neLatnumber否地图边界框东北角的纬度。提供全部四个边界框坐标后,将在框内搜索房源,而不是按位置搜索。
neLngnumber否地图边界框东北角的经度。
swLatnumber否地图边界框西南角的纬度。
swLngnumber否地图边界框西南角的经度。
adultsnumber否成人数量。
checkInstring是房源的入住日期。
infantsnumber否婴幼儿数量。
checkOutstring否房源的退房日期。
childrennumber否子女数量。
locationstring否用于搜索房源的地点。除非提供完整地图边界框(neLat、neLng、swLat、swLng),否则必填。
nextPageTokenstring否用于获取下一页结果的令牌。

详细介绍

Amazon MCP 服务

一款托管的模型上下文协议(MCP)服务,为 Claude、Cursor、Windsurf 和任何其他 MCP 客户端提供四种只读 Amazon 工具。运行关键词搜索、按 ASIN 读取商品、查询卖家,以及分页查看该卖家的库存,所有数据均为结构化 JSON;无需 Amazon 开发者账号,也无需托管任何内容。

它读取已退出登录的访客可查看的 Amazon 公开页面,支持全部 23 个地区域名。

每月 1,000 个免费额度,无需信用卡,按每次 10 个额度计算,可调用 Amazon 100 次。

https://mcp.hasdata.com/mcp?apis=amazon

Glama 评分 工具契约 MCP 工具

目录

所需条件

一个 MCP 客户端,以及一个从控制面板获取的 HasData API 密钥;创建密钥免费且无需信用卡,免费套餐按每次 10 个额度计算,每月约可调用 100 次。这是一个远程服务,因此最简单的接入方式是使用 URL 和 x-api-key 标头,无需运行容器。仅支持 stdio 的客户端可通过一个轻量启动器连接该服务;启动器已发布至 npm,名称为 @hasdata/amazon-mcp,也发布至 PyPI,名称为 hasdata-amazon-mcp,如下所示。

快速开始

所有客户端使用相同的服务 URL。我们在 Claude Code 和 Claude Desktop 中进行了实际运行。其他配置块遵循各客户端文档中针对远程服务的格式。

字段值
URLhttps://mcp.hasdata.com/mcp?apis=amazon
传输方式HTTP,可流式传输
认证标头x-api-key: HASDATA_API_KEY

支持 OAuth 的客户端可以将相同的 URL 添加为连接器,然后登录,无需将密钥放入配置文件。

Claude Code
claude mcp add --transport http amazon "https://mcp.hasdata.com/mcp?apis=amazon" \
  --header "x-api-key: HASDATA_API_KEY"
Claude Desktop

依次选择 Settings、Connectors、Add custom connector,然后粘贴 https://mcp.hasdata.com/mcp?apis=amazon 并登录。

使用配置文件的方式时,Claude Desktop 仅加载本地(stdio)服务,因此需要通过 stdio 启动器连接远程服务。@hasdata/amazon-mcp 包就是这个启动器,它会从环境变量中读取密钥。将以下内容添加到 claude_desktop_config.json:

{
  "mcpServers": {
    "amazon": {
      "command": "npx",
      "args": ["-y", "@hasdata/amazon-mcp"],
      "env": { "HASDATA_API_KEY": "YOUR_KEY" }
    }
  }
}

如果要使用 Python 而非 Node,请将启动器替换为 PyPI 包;uvx 无需手动安装即可运行该包:

{
  "mcpServers": {
    "amazon": {
      "command": "uvx",
      "args": ["hasdata-amazon-mcp"],
      "env": { "HASDATA_API_KEY": "YOUR_KEY" }
    }
  }
}
Cursor

所有项目共用 ~/.cursor/mcp.json,或为单个项目使用 .cursor/mcp.json:

{
  "mcpServers": {
    "amazon": {
      "url": "https://mcp.hasdata.com/mcp?apis=amazon",
      "headers": { "x-api-key": "HASDATA_API_KEY" }
    }
  }
}
Windsurf

配置文件位于 ~/.codeium/windsurf/mcp_config.json。Windsurf 将字段称为 serverUrl,而不是 url:

{
  "mcpServers": {
    "amazon": {
      "serverUrl": "https://mcp.hasdata.com/mcp?apis=amazon",
      "headers": { "x-api-key": "HASDATA_API_KEY" }
    }
  }
}
VS Code

工作区中的 .vscode/mcp.json:

{
  "servers": {
    "amazon": {
      "type": "http",
      "url": "https://mcp.hasdata.com/mcp?apis=amazon",
      "headers": { "x-api-key": "HASDATA_API_KEY" }
    }
  }
}

提示词示例

以下每条提示词都会调用一个工具;如果第二个工具需要第一个工具返回的标识符,则会依次调用两个工具。

  • 在 Amazon 上查找价格低于 $40 的笔记本电脑支架,并按平均客户评价排序。
  • ASIN B0DHJ7SBDR 现在的价格是多少?还有多少其他卖家在售?
  • 比较此 ASIN 在 amazon.com 和 amazon.de 上的价格。
  • ASIN B0DHJ7SBDR 的卖家是谁?其终身评分是多少?
  • 翻查卖家 ATQQBVXK188KS 的所有商品,并找出打折商品。
  • 搜索可配送到 10001 的无线耳机,并告诉我哪些送达最快。

如果提示词提到的是产品而非 ASIN,就会进行两次调用:先搜索以确定 ASIN,再查询产品以获取信息。如果提示词提到的是品牌而非卖家 ID,就会以相同方式进行两次调用:先查询产品以找到卖家 ID,再查询卖家以获取资料。

工具

工具返回内容
hasdata_amazon_product_getProductDetails标题、品牌、当前价格/标价/优惠价、货币、库存情况、Buy Box 卖家、Prime 资格、要点、A+ 描述、评分和评论数、图片等。每次调用消耗 10 个积分
hasdata_amazon_reviews_getProductReviews每条评论的标题、正文、星级评分、作者姓名和个人资料、评论日期、国家、已验证购买标记、有用投票数、变体/格式属性及附加内容等。每次调用消耗 10 个积分
hasdata_amazon_search_getSearchResults自然搜索结果列表,包含 ASIN、标题、缩略图、产品 URL、价格和标价、货币、星级评分、评论数、Prime/赞助标记和排名等。每次调用消耗 10 个积分
hasdata_amazon_seller_getSellerDetails企业名称、卖家徽标、“关于此卖家”文本、总体反馈评分以及终身/12 个月/90 天/30 天评分明细、反馈数量、企业地址等。每次调用消耗 10 个积分
hasdata_amazon_seller_products_getSellerProducts每条产品记录包含 ASIN、标题、图片、产品 URL、价格和标价、货币、星级评分、评论数及 Prime 标记。每次调用消耗 10 个积分

五个工具,每次成功调用消耗 10 个积分。每个工具都接受 domain 参数来切换商城,共有 23 个取值,从 www.amazon.com 到欧洲、亚洲和其他地区的商城;如果商城提供多种语言,还可使用 language 参数。

获取 Amazon 搜索结果

hasdata_amazon_search_getSearchResults

某个关键词的一页搜索结果。

参数类型必填说明
qstring是搜索词
domainstringMarketplace,默认为 www.amazon.com
pagenumber结果页码,从 1 开始
sortBystringfeatured、priceLowToHigh、priceHighToLow、avgCustomerReview、newestArrivals 或 bestSellers
deliveryZipstring邮政编码,会影响商品可用性和送达日期
shippingLocationstring配送地址所在国家/地区的两位字母代码
languagestringMarketplace 语言代码

返回 productResults、包含赞助展示位的 ads 数组,以及包含 totalResults、currentPage、nextPageUrl 和 otherPageUrls 的 pagination。每条结果都包含 position、asin、title、url、isSponsored、price 对象、image、包含 rating 和 totalReviews 的 reviews、badges 对象、boughtInPastMonth 和 deliveryInfo。

搜索结果有意保持精简。这里不包含品牌、功能、变体、图片和卖家信息;这些信息由下方的商品工具提供。先确定 ASIN,再读取商品详情。

{
  "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"
}
获取 Amazon 商品详情

hasdata_amazon_product_getProductDetails

通过 ASIN 获取单个商品的完整信息。

参数类型必填说明
asinstring是Amazon 标准识别号
domainstringMarketplace,默认为 www.amazon.com
otherSellersboolean同时收集竞品报价。除基础费用外另需 10 个积分,总计 15 个,而不是 10 个
deliveryZipstring邮政编码,会影响商品可用性和送达日期
shippingLocationstring配送地址所在国家/地区的两位字母代码
languagestringMarketplace 语言代码

返回一个 product 对象,包含 asin、url、title、brand、isAvailable、condition、price 对象、primaryFeatures 和更全面的 features 映射、featureBullets、description、variants、breadcrumbs、whatIsInTheBox、图片和视频集合、specification、reviewsInfo、送达预估,以及当前的 seller 和 sellerUrl。

price 对象包含 currentPrice、商品打折时的 beforePrice、discount、priceFrom 和 otherOfferQuantity。最后一个字段表示竞品报价的数量;基础调用会报告该数量,但不会获取这些报价。只有在需要查看报价本身时才请求 otherSellers,因为这会使费用增加一半。

{
  "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"
}
获取 Amazon 卖家详情

hasdata_amazon_seller_getSellerDetails

某个卖家的公开店铺资料。

参数类型必填说明
sellerIdstring是卖家 ID,商品响应会在 sellerUrl 中返回该 ID
domainstringMarketplace,默认为 www.amazon.com
languagestringMarketplace 语言代码

返回一个 seller 对象,包含 sellerId、url、storefrontUrl、name、businessName、businessAddress、about 内容块,以及四个评分时间段:oneMonthRatings、threeMonthRatings、twelveMonthRating 和 lifetimeRating。每个时间段都包含 totalVotes、averageRating,以及按星级划分的明细,其中同时列出 votes 和 percent。

这四个时间段正是这个工具值得调用的原因。终身平均评分为 4.5、基于 2,701 票,与一个月平均评分为 2、基于 4 票,描述的是截然不同的卖家;只有结合这两项,才能看出评分正在下滑。

{
  "sellerId": "ATQQBVXK188KS",
  "name": "Expercom - Apple Premier Partner",
  "businessName": "Expercom of Utah, Inc",
  "lifetimeRating": { "totalVotes": 2701, "averageRating": 4.5 },
  "oneMonthRatings": { "totalVotes": 4, "averageRating": 2 }
}
获取 Amazon 卖家商品

hasdata_amazon_seller_products_getSellerProducts

某个卖家所售商品的分页列表。

参数类型必填说明
sellerIdstring是卖家 ID
domainstringMarketplace,默认为 www.amazon.com
pagenumber结果页码,从 1 开始
languagestringMarketplace 语言代码

返回 productResults 和 pagination,结构与搜索工具的输出相同。每个条目包含 position、asin、title、url、price、image、reviews、badges、boughtInPastMonth、deliveryInfo 和 colorUrls。请通过遍历 pagination 获取目录中的其他商品,而不是猜测页码。

提示词和资源

该服务提供一个提示词,即一个现成的工作流,客户端可以直接提供给用户,而不必让用户自行编写工具调用。

提示词功能
amazon_product_research按价格、评分和评论数比较某件商品在 Amazon 上的报价。

此外,该服务还提供 9 个资源,每个资源对应一个取值为固定列表的参数。读取资源比因调用被拒而学习相关词汇更省事,而且不消耗额度。每个 URI 的格式为 hasdata://amazon/<parameter>。

参数值的数量用途
domain23要使用的 Amazon 域名。默认为 www.amazon.com。
language22可选的 Amazon 语言代码。支持的值取决于所选域名。
shippingLocation238用于指定收货地址所在国家/地区的两位字母国家/地区代码。
reviewerType2用于筛选的评论者类型。
stars8用于筛选评论的星级。
format2用于筛选评论的格式类型。可包含任意商品格式/变体的评论,也可仅包含当前格式/变体的评论。
mediaType2用于筛选评论的媒体类型。
sortBy2用于对评论排序的条件。
sortBy6用于对结果排序的参数

两份列表均无需 API 密钥即可获取,因此客户端可以在用户注册前读取它们。

错误和失败情况

请针对以下情况做好准备,不要假设请求总能成功。

搜索无匹配结果时,会成功返回一个空的 productResults 数组,而不是报错。requestMetadata.status 仍为 ok。请先检查数组长度,再进行迭代。

所选 Marketplace 上不存在的 ASIN 会返回错误,而不是空商品。 同一个 ASIN 往往在某个域名上存在、在另一个域名上不存在,因此在 www.amazon.de 上失败并不意味着 ASIN 有误。

卖家 ID 也受 Marketplace 限制。 从 www.amazon.com 上某件商品返回的 ID 无法在其他域名上解析。

在售商品可能没有价格。 缺货、仅由其他卖家销售或受促销限制的商品,返回时可能没有可用的 currentPrice。比较价格前,请先读取 isAvailable。

deliveryZip 和 shippingLocation 不只会改变配送信息,也会改变查询结果。 可售情况、价格和卖家构成都可能随目的地变化,因此跨邮编比较时必须保持其他所有参数不变。

包含数据的结果也会包含 requestMetadata.id,在联系支持时可引用该 ID。

定价、免费额度和限制

每次成功调用 Amazon 工具会消耗 10 个积分。开启 otherSellers 会让产品调用额外消耗 5 个积分,即 15 个而不是 10 个,除非你关注的是竞品报价,否则请保持关闭。响应大小不会影响价格。

免费额度为每月 1,000 个积分,无需绑定银行卡,按基础费率可调用 Amazon 100 次。额度会随计费周期续期,因此低调用量的 Agent 可以一直使用免费额度。

付费套餐起价为每月 $59,包含 200,000 个积分,可调用 20,000 次。调用量越大,单价越低:入门套餐为每 1,000 次调用 $1.48,Basic 为 $0.60,Growth 各档为 $0.41。最新价格请查看定价页面。

套餐还决定并发数。免费额度允许同时发起 1 个请求,Startup 为 5 个,Basic 为 15 个,Growth 各档则为 50 到 500 个。对于无人值守的任务,遇到 429 时请使用退避策略重试,因为会分散查询多个 ASIN 的 Agent 会比你更早触及上限。

未返回 200 状态码的请求不会计费。成功调用但未找到任何结果,仍会计为一次调用。

工具选择

大多数情况下,遵循两条规则即可。

根据提示词提供的信息选择工具。关键词使用搜索工具,ASIN 直接使用产品工具,卖家 ID 则使用两个卖家工具之一。已有 ASIN 时再花费一次搜索调用来查找它,是最常见的浪费。

然后根据所需深度选择。搜索和卖家商品工具返回相同的精简商品信息,适合对多个商品进行排序、筛选和价格扫描。只有产品工具会返回品牌、特性、变体、图片和卖家信息,因此只有在问题涉及单个商品时才值得调用。

对比

Amazon 自己的 Product Advertising API 是获取这些数据的官方途径,但它是另一种工具。

Product Advertising API此服务
资格要求已获批准且有符合要求销售额的 Associates 账户API 密钥
设置注册 Associates、设置标签、对请求签名一个标头
范围获准推广的商品任何公开的商品页面
卖家店铺不返回两个专用工具
搜索排序有限选项Amazon 向购物者展示的六种排序方式
费用符合资格时免费超出免费额度后付费,每次调用 10 个积分

决定性因素是资格要求。Product Advertising API 面向联盟营销者,其访问权限取决于你已经完成的销售额,因此不适用于研究、监控以及 Agent 代表你执行的任何任务。如果你符合资格且只需要可推广的商品,官方 API 会更合适。

常见问题

Amazon 有官方 MCP 服务吗?

Amazon 没有发布官方服务。此服务由 HasData 维护,并读取 Amazon 的公开页面。

什么是 Amazon MCP 服务?

MCP 服务会提供 AI 客户端可调用的工具。此服务会将 Amazon 搜索结果、商品页面和卖家店铺转换为 JSON,供 Agent 分析,无需在你的技术栈中使用浏览器或抓取库。

我需要 Amazon 账户或 API 密钥吗?

不需要。唯一需要的凭证是你的 HasData 密钥。

覆盖哪些站点?

API 支持的全部 23 个域名,从 www.amazon.com 到欧洲和亚洲站点。传入 domain 即可切换。不同站点的价格、库存情况和卖家构成都不同,因此跨域名比较是实质性的比较,而不仅仅是货币换算。

为什么搜索结果没有品牌或特性?

Amazon 不会在搜索结果页面上显示这些信息。搜索工具会返回页面上展示的内容,产品工具则会返回商品页面的信息。这种划分正是两个工具价格相同但返回的信息深度不同的原因。

otherOfferQuantity 是什么意思?

商品页面所报告的、提供同一商品的其他卖家数量。它会随基础调用一起返回。获取具体报价需要使用 otherSellers,这会额外消耗 10 个额度。

我可以将它与其他 HasData API 一起使用吗?

可以。一个密钥即可访问所有 API,并且通过 apis 参数即可使用同一个端点。将客户端指向 ?apis=amazon,google_serp,即可在一个连接中获取两组工具;也可以指向 mcp.hasdata.com/mcp 获取完整目录。

HasData 是否隶属于 Amazon?

不隶属于。HasData 是一项独立服务,与 Amazon 没有关联,也未获得 Amazon 的认可或赞助。Amazon 是其各自所有者的商标。这些工具仅处理公开可用的数据,你有责任按照 Amazon 的条款和适用法律使用结果。

合规与个人数据

卖家资料包含企业名称和企业地址,这些信息由 Amazon 发布在店铺页面上。请将其视为企业记录,而不是自由格式数据;存储这些信息前,请先确认自身的义务。

HasData 链接

其他 HasData MCP 服务:Google Search、Google Maps、Google Trends、Google Flights、DuckDuckGo、YouTube、TikTok、Instagram、Zillow、Airbnb、Booking.com、Indeed。

开发

启动器是连接到远程服务的轻量级 stdio 桥接,因此无需构建。

npm install
HASDATA_API_KEY=your_key_here npm test

test/ 中的测试会验证工具契约,也就是可能在本仓库未提交任何更改时发生变动的部分。测试会检查 ?apis=amazon 是否返回预期的工具数量、名称是否有变、每个工具是否仍声明了必需参数并附带描述,以及正在使用的密钥是否确实有效。最后一项检查会实际调用一个工具,并消耗 10 个额度;这是为了一次可能因正确原因而失败的探测所付出的代价。

还有一项测试涵盖了本文档未介绍的工具。服务还会列出一个评论工具,但其上游端点已停用并会返回错误,因此介绍它只会让读者陷入死胡同。该测试会固定这一状态,而不是忽略它;如果端点恢复,或服务移除该工具,测试就会失败,届时本文档也需要做出相应决定。

契约测试套件还会按计划每周运行一次,因为上游工具列表可能在无人改动此仓库的情况下发生变化。

贡献

如果工具表、响应示例或文档描述的行为与实际情况不符,欢迎提交 issue。我们提供了专门用于此类问题的模板。也欢迎针对这些内容以及启动器的任何部分提交拉取请求。

许可证

MIT,详见 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。