Canopy API

co.canopyapi由 canopyapi.co 发布官方发布者v2.1.0更新于 Oct 24, 2026

Amazon product API & MCP server: search, prices, reviews, sellers, deals, and ASIN lookup by Canopy.

已验证Streamable HTTP可网页运行网页搜索与抓取数据与分析商业与电商

概览

AI 生成的概览

Canopy 提供的托管式亚马逊商品数据 MCP 服务器,以结构化 JSON 工具支持商品搜索、价格、报价、评论、卖家、优惠和 ASIN 查询。

可以做什么
  • 按 ASIN、链接或 GTIN 查询商品详情,并获取变体、卖家报价与 Buy Box 信息、库存与销量估算、热门评论
  • 带筛选和排序搜索商品,获取搜索词建议、当前优惠、畅销榜和畅销类目
  • 浏览亚马逊类目体系,查看含商品和子类目的类目详情
  • 获取卖家与作者资料及其商品列表
  • 在 ASIN 与 ISBN、UPC、EAN 等 GTIN 标识之间互相转换
适用场景
适合需要实时亚马逊商品数据的场景:购物比价、价格与报价监控、结合畅销排名和销量估算的选品调研、商品目录补全,或汇总客户评论。
运行要求
使用 mcp.canopyapi.co/mcp 的远程 Streamable HTTP 端点,无需本地安装。每个请求都需凭据:OAuth 2.1 登录(支持的客户端会自动发现),或在 canopyapi.co 申请的 Canopy API 密钥,通过 CANOPY-API-KEY 请求头发送(也接受 API-KEY、X-API-KEY 和 Bearer 形式)。自行部署需要 Node.js 和 Cloudflare Workers 环境。
安装前请注意
17 个工具均为只读,但查询内容和 API 密钥会发送到 Canopy 的托管服务并进一步访问亚马逊数据。API 密钥是计费凭据:不要写入共享的插件或包文件,只在客户端中设置。凭据缺失或无效会返回 HTTP 401。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Canopy API,将其添加到工作区。
  2. 连接 所需的 凭据。它们会被私密存储,绝不会在公开页面上展示。
  3. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/co.canopyapi%2Fmcp/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。 客户端会在首次连接时完成 OAuth 登录。

{
  "mcpServers": {
    "canopy-api": {
      "type": "http",
      "url": "https://mcp.canopyapi.co/mcp"
    }
  }
}

README

Canopy MCP Server — Amazon Product Data API for AI Agents

An Amazon product data API served over the Model Context Protocol. Connect Claude, ChatGPT, Cursor, or any MCP client to real-time Amazon data — an Amazon search API, reviews API, price tracker, ASIN lookup, best sellers, deals, and sales estimates — powered by the Canopy API. No headless browsers, no brittle HTML scraping: typed JSON over standard MCP tools.

Built with xmcp and deployed on Cloudflare Workers. Use the hosted remote MCP server at https://mcp.canopyapi.co/mcp or self-host from this repo. Setup guides and client walkthroughs live on the Amazon MCP server page.

Why an Amazon MCP server?

AI agents and LLM apps increasingly need live e-commerce data. This server gives any MCP-capable assistant or agent framework direct tool access to Amazon:

  • Shopping assistants — an Amazon search API for agents: query products, compare prices and Buy Box offers, surface deals and coupons in chat
  • Price monitoring & competitive intelligence — an Amazon price tracker API for prices, stock estimates, and seller offers on any ASIN
  • Product research & market analysis — an Amazon product research tool with best seller rankings, sales estimates, and category taxonomies
  • Catalog enrichment — ASIN lookup and ASIN ↔ GTIN/UPC/ISBN/EAN conversion, plus images, variants, and specs
  • Review analysis — an Amazon reviews API returning top customer reviews with ratings, helpful votes, and media for summarization

Works as a Claude MCP server (Desktop, Code, and the claude.ai connectors directory), a ChatGPT MCP connector (Apps SDK, with rich product widgets), in Cursor and the MCP Inspector, and with any agent built on the MCP SDK, LangChain, or the OpenAI Agents SDK.

Features

  • 17 Amazon Data Tools — product info, variants, offers, stock, sales, reviews, search, autocomplete, categories, best sellers, sellers, authors, deals, and ASIN/GTIN lookup
  • Streamable HTTP transport at /mcp (current MCP spec)
  • File-based tools — one file per tool under src/tools/
  • Type Safety — TypeScript types generated from the Canopy OpenAPI spec via openapi-typescript
  • Flexible Auth — OAuth 2.1 sign-in (Supabase authorization server, dynamic client registration) or an API key in any of four header formats
  • CORS Enabled — preflight + custom API key headers allowed

Quick Start

Use the hosted server (no install)

Add the remote MCP server to your client and sign in with OAuth, or supply a Canopy API key:

https://mcp.canopyapi.co/mcp

Claude and other OAuth-capable MCP clients will walk you through sign-in automatically. Get an API key at canopyapi.co, and see the Amazon MCP server guide for per-client setup instructions.

Install as an Agent Plugin

This repository is an Agent Plugin (specification 1.0.0). The plugin root is the repository root. A compatible client reads plugin.json, loads skills from skills/, and connects to the MCP server declared in mcp.json.

text
canopy-api-mcp/├── plugin.json          # Agent Plugins 1.0.0 manifest├── mcp.json             # hosted Streamable HTTP server└── skills/    └── amazon-product-research/        ├── SKILL.md        └── references/tools.md

mcp.json points at the same hosted endpoint as above:

json
{  "mcpServers": {    "canopy": {      "type": "streamable-http",      "url": "https://mcp.canopyapi.co/mcp"    }  }}

Authorization stays in the client. OAuth-capable clients discover sign-in from the server. The plugin does not embed an API key: Agent Plugins treats headers as public package data, not a place for secrets. If a client only supports a static header, set CANOPY-API-KEY in that client.

Cursor. After the plugin is listed, install it from Customize or the Cursor Marketplace. To try the directory before it is listed, copy this repository to ~/.cursor/plugins/local/canopy-api-mcp (a symlink that points outside that folder is ignored), reload the window, and confirm the Canopy server and the amazon-product-research skill in Customize.

Other Agent Plugins clients. Load this directory. The client needs Agent Plugins 1.0.0 and the streamable-http transport. There is no archive and no registry protocol in the specification: the package is this directory.

server.json is unchanged. It is the MCP Registry server card, a separate format from plugin.json. npm install, npm run dev, and npm run deploy are unchanged.

Validate the package against the published schemas:

bash
npm run validate:plugin

Run it yourself

You'll need a Canopy API key from canopyapi.co.

bash
npm installnpm run dev      # xmcp watcher + wrangler dev (local Workers runtime)npm run deploy   # build + wrangler deploy --env production

Testing

Run npm test to build the worker and run the regression suite. Output-schema tests use mocked REST responses to verify that null-valued fields (unavailable prices, coupons, ratings) are stripped before reaching MCP clients, that responses match the advertised JSON Schema, and that malformed values are still rejected. These tests do not require a real Canopy API key.

Use the MCP Inspector and connect to http://localhost:8787/mcp (or your deployed URL). Provide the API key as a request header:

bash
npx -y @modelcontextprotocol/inspector@latest

Or with curl:

bash
curl -X POST http://localhost:8787/mcp \  -H "Content-Type: application/json" \  -H "Accept: application/json, text/event-stream" \  -H "CANOPY-API-KEY: $CANOPY_API_KEY" \  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'

Authentication

Every request must carry credentials. Two modes are supported:

1. OAuth 2.1 (recommended for MCP clients). OAuth-capable clients discover the flow automatically: an unauthenticated request returns 401 with WWW-Authenticate: Bearer resource_metadata="https://mcp.canopyapi.co/.well-known/oauth-protected-resource". Supabase is the authorization server (dynamic client registration supported); consent lives at canopyapi.co. The verified user's Canopy API key is resolved server-side.

2. API key headers. Any of these forms works (checked in this order):

  • CANOPY-API-KEY: your-api-key
  • API-KEY: your-api-key
  • X-API-KEY: your-api-key
  • Authorization: Bearer your-api-key

A missing or invalid credential returns HTTP 401 with a JSON-RPC error before the request reaches the MCP transport (see src/middleware.ts).

Available Tools

All 17 tools are read-only (readOnlyHint: true) and annotated with a title.

Product Information

  • get_amazon_product — product details by ASIN, URL, or GTIN
  • get_amazon_product_variants — product variants
  • get_amazon_product_offers — seller offers and Buy Box info
  • get_amazon_product_stock — stock level estimates
  • get_amazon_product_sales — sales estimates (weekly, monthly, annual)
  • get_amazon_product_top_reviews — top customer reviews (title, body, rating, helpful votes, images/videos)

Search & Discovery

  • search_amazon_products — search with filters and sorting
  • get_amazon_autocomplete — search term suggestions
  • get_amazon_deals — current deals, optionally filtered by category
  • get_amazon_bestsellers — best-selling products for a category
  • get_amazon_bestseller_categories — best seller category list

Categories

  • get_amazon_categories — root category taxonomy
  • get_amazon_category — category details with products and subcategories

Entities

  • get_amazon_seller — seller information and product listings
  • get_amazon_author — author information and book listings

Identifiers

  • get_amazon_asin_from_gtin — ASIN lookup by ISBN/UPC/EAN
  • get_amazon_gtin_from_asin — GTIN lookup by ASIN

Project Structure

canopy-api-mcp/├── plugin.json                 # Agent Plugins 1.0.0 manifest├── mcp.json                    # MCP server declaration (Streamable HTTP)├── skills/│   └── amazon-product-research/│       ├── SKILL.md│       └── references/tools.md├── server.json                 # MCP Registry server card (separate from plugin.json)├── LICENSE                     # MIT License├── src/│   ├── tools/                  # one file per tool (auto-discovered by xmcp)│   │   ├── get-amazon-product.ts│   │   └── ...│   ├── lib/│   │   └── api-key.ts          # reads API key from extra.authInfo│   ├── middleware.ts           # auth middleware (lifts header → authInfo.token)│   ├── api-client.ts           # type-safe Canopy REST client│   └── types/│       └── api.d.ts            # generated from OpenAPI├── xmcp.config.ts              # xmcp config (endpoint, CORS, paths)├── wrangler.jsonc              # Cloudflare Workers config├── worker-entry.ts             # Workers entry (unchanged)├── tsconfig.json└── package.json

Type Safety

src/types/api.d.ts is generated from the Canopy OpenAPI spec. Regenerate when the API changes:

bash
npm run generate

Scripts

  • npm run dev — xmcp watcher + wrangler dev (local Workers runtime)
  • npm run build — xmcp build --cf (emits worker.js for Cloudflare)
  • npm run deploy — build + wrangler deploy --env production
  • npm run delete — remove the deployed Worker
  • npm run generate — regenerate API types from the OpenAPI spec
  • npm run validate:plugin — check plugin.json, mcp.json, and skills/ against Agent Plugins 1.0.0

Migration from v1.x

v2.0 replaces ModelFetch with xmcp. The MCP endpoint moved from /sse/mcp (deprecated SSE transport mount) to /mcp (current Streamable HTTP convention). Update any clients accordingly.

License

This project is released under the MIT License. Copyright (c) 2026 Canopy API.

Related

来源:README.md,提交 5adb656

工具

0
该服务器需要登录,因此 SourceWeft 无法在没有账号的情况下读取其工具,也未收录。已连接账号所能看到的内容可能因账号及其权限而异。

版本历史

1
  1. v2.1.0最新Sep 16, 2026

评分

已满足适用检查项的 85%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分