Canopy API MCP Server
OfficialProvides tools for accessing Amazon product data, including product information, variants, stock, sales estimates, reviews, search, autocomplete, categories, deals, sellers, and authors via the Canopy API.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Canopy API MCP Serversearch for Sony WH-1000XM4 and show sales estimates"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Canopy API MCP Server
A type-safe MCP (Model Context Protocol) server that provides Amazon product data through the Canopy API. Built with xmcp and deployed on Cloudflare Workers.
Features
12 Amazon Data Tools — product info, variants, stock, sales, reviews, search, autocomplete, categories, sellers, authors, and deals
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-typescriptFlexible Auth — middleware accepts the API key in any of four header formats
CORS Enabled — preflight + custom API key headers allowed
Related MCP server: Amazon MCP Server
Quick Start
You'll need a Canopy API key from canopyapi.co.
npm install
npm run dev # xmcp watcher + wrangler dev (local Workers runtime)
npm run deploy # build + wrangler deploy --env productionTesting
Use the MCP Inspector and connect to http://localhost:8787/mcp (or your deployed URL). Provide the API key as a request header:
npx -y @modelcontextprotocol/inspector@latestOr with curl:
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
The server requires a Canopy API key on every request. Any of these header forms works (checked in this order):
CANOPY-API-KEY: your-api-keyAPI-KEY: your-api-keyX-API-KEY: your-api-keyAuthorization: Bearer your-api-key
A missing key returns HTTP 401 with a JSON-RPC error before the request reaches the MCP transport (see src/middleware.ts).
Available Tools
Product Information
get_amazon_product— product details by ASIN, URL, or GTINget_amazon_product_variants— product variantsget_amazon_product_stock— stock level estimatesget_amazon_product_sales— sales estimates (weekly, monthly, annual)get_amazon_product_reviews— top product reviews
Search & Discovery
search_amazon_products— search with filters and sortingget_amazon_autocomplete— search term suggestionsget_amazon_deals— current deals
Categories
get_amazon_categories— root category taxonomyget_amazon_category— category details with products and subcategories
Entities
get_amazon_seller— seller information and product listingsget_amazon_author— author information and book listings
Project Structure
canopy-api-mcp/
├── 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
├── tsconfig.json
└── package.jsonType Safety
src/types/api.d.ts is generated from the Canopy OpenAPI spec. Regenerate when the API changes:
npm run generateScripts
npm run dev— xmcp watcher +wrangler dev(local Workers runtime)npm run build—xmcp build --cf(emitsworker.jsfor Cloudflare)npm run deploy— build +wrangler deploy --env productionnpm run delete— remove the deployed Workernpm run generate— regenerate API types from the OpenAPI spec
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.
Related
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables interaction with Amazon's Product Advertising API to search for and retrieve product information from Amazon marketplaces. Supports multiple Amazon regions and marketplaces with configurable host, region, and partner credentials.MIT
- FlicenseNot gradedqualityFmaintenanceEnables scraping Amazon product details and searching for products on Amazon through natural language queries. No API keys required as it scrapes publicly available Amazon pages.10
- FlicenseNot gradedqualityDmaintenanceEnables searching Amazon India products, retrieving details, tracking prices, managing favorites, and more with fast caching.
- FlicenseBqualityDmaintenanceProvides tools to access real-time Amazon data, including product details, reviews, offers, influencer profiles, and deals, through a FastMCP-based server.18
Related MCP Connectors
Amazon brand, seller, niche & buy-box intelligence inside your own Claude or ChatGPT.
Hosted Amazon Seller Central and Amazon Ads MCP server for Claude, ChatGPT, Cursor, and agents.
Get recommended by Amazon's AI. Hosted MCP server for Amazon listing compliance & generation.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/canopy-api/canopy-api-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server