io.github.codespar/mcp-amazon
io.github.codespar/mcp-amazon · 273 stars · TypeScript · MIT
MCP server MCP server for Amazon Selling Partner API (SP-API) — orders, listings, catalog, inventory, finances
Install
The repo has no one-line install. Follow its README.
Published as
- npm
@codespar/mcp-amazonstdio
From the server's entry in the official MCP Registry.
Configuration
| Name | Set as | What it is |
|---|---|---|
AMAZON_LWA_CLIENT_IDRequired | Env var | Login with Amazon (LWA) client_id from Seller Central > Developer Central (SP-API app). |
AMAZON_LWA_CLIENT_SECRETRequired · Secret | Env var | LWA client_secret paired with AMAZON_LWA_CLIENT_ID. |
AMAZON_REFRESH_TOKENRequired · Secret | Env var | Long-lived seller-authorized refresh_token exchanged for 1-hour LWA access tokens used as x-amz-access-token. |
AMAZON_MARKETPLACE_IDRequired | Env var | Default marketplace id. BR: A2Q3Y263D00KWC, US: ATVPDKIKX0DER, MX: A1AM78C64UM0Y8, CA: A2EUQ1WTGCTBG2. Required by most endpoints; can be overridden per-call. |
AMAZON_REGIONOptional | Env var | SP-API region: 'na' (default — Americas, incl. BR/US/MX/CA), 'eu' (Europe + India + MENA), 'fe' (Far East — JP/AU/SG). |
AMAZON_SELLER_IDOptional | Env var | Default sellerId (merchant token) used by Listings endpoints. Can be overridden per-call. |
Files
@codespar/mcp-amazon
MCP server for the Amazon Selling Partner API (SP-API) — the biggest global marketplace, including Amazon BR, Amazon MX, Amazon US, and all EU/FE marketplaces.
For LatAm sellers, Amazon rounds out the marketplace trio already in this catalog:
- Mercado Libre (
@codespar/mcp-mercadolibre) — dominant in LatAm generally (BR, AR, MX, CO, CL). - Shopee (
@codespar/mcp-shopee) — heavy in Brazil and rapidly growing regionally. - Amazon (this package) — global reach, plus Amazon BR/MX for LatAm sellers and cross-border into Amazon US/EU/JP.
Together these three cover essentially every marketplace where a LatAm merchant transacts meaningful GMV.
Tools (24)
| Tool | Purpose |
|---|---|
list_orders |
List orders from Amazon SP-API. |
get_order |
Get one order by AmazonOrderId (e.g. |
get_order_items |
Get the line items for an order by AmazonOrderId. |
get_listings_item |
Get a single listing item for the seller by SKU. |
put_listings_item |
Create or fully replace a listing item for the seller by SKU. |
delete_listings_item |
Delete a listing item for the seller by SKU. |
search_catalog_items |
Search the Amazon catalog for reference product data (ASIN, title, brand, images) by identifiers or keywords. |
get_inventory_summary |
Get FBA inventory summaries (fulfillable, inbound, reserved, researching, unfulfillable quantities) for the... |
create_report |
Request an SP-API report. |
get_report |
Get a report's status and (when DONE) its reportDocumentId, which can then be fetched from the Reports docu... |
list_financial_events |
List financial events (shipment, refund, service fee, adjustment, etc.) for reconciliation. |
get_order_shipment_status |
Get shipment status for a shipment id via the Shipping API (Amazon Shipping / Buy Shipping labels). |
create_subscription |
Create a Notifications API subscription for a given notificationType (webhook-equivalent for SP-API events,... |
patch_listings_item |
Partially update a listing item for the seller by SKU using a JSON Patch list of operations. |
confirm_shipment |
Confirm shipment of an order's items (Orders API v0). |
update_shipment_status |
Update the shipment status of an order (Orders API v0). |
list_reports |
List reports the seller has requested. |
cancel_report |
Cancel a report that is IN_QUEUE and has not yet started processing. |
create_feed |
Submit a feed to SP-API (e.g. |
get_feed |
Get a feed's status and (when DONE) its resultFeedDocumentId — fetch the result from the Feed Document API... |
list_financial_events_by_order |
List financial events scoped to a single order (shipment, refund, service fee, adjustment). |
get_my_fees_estimate_for_asin |
Estimate referral fee + FBA fees for selling an ASIN at a given price. |
list_subscriptions |
Get the current subscription for a notificationType (one subscription per notificationType per app). |
get_marketplace_participations |
List all marketplaces the seller is registered to sell in (Sellers API). |
Install
npm install @codespar/mcp-amazon@alpha
Environment
AMAZON_LWA_CLIENT_ID="amzn1.application-oa2-client....." AMAZON_LWA_CLIENT_SECRET="..." AMAZON_REFRESH_TOKEN="Atzr|..." # long-lived, seller-authorized AMAZON_MARKETPLACE_ID="A2Q3Y263D00KWC" # BR; ATVPDKIKX0DER=US, A1AM78C64UM0Y8=MX AMAZON_REGION="na" # na | eu | fe (default na) AMAZON_SELLER_ID="A3..." # optional; default for Listings tools
Marketplace ids (common)
| Marketplace | Id | Region |
|---|---|---|
| Brazil | A2Q3Y263D00KWC |
na |
| United States | ATVPDKIKX0DER |
na |
| Mexico | A1AM78C64UM0Y8 |
na |
| Canada | A2EUQ1WTGCTBG2 |
na |
| Spain | A1RKKUPIHCS9HS |
eu |
| United Kingdom | A1F83G8C2ARO7P |
eu |
| Germany | A1PA6795UKMFR9 |
eu |
| Japan | A1VC38T7YXB528 |
fe |
Authentication
SP-API uses a dual-step Login with Amazon (LWA) flow:
- Exchange refresh token → access token (1-hour lifetime). The server POSTs to
https://api.amazon.com/auth/o2/tokenwithgrant_type=refresh_tokenand yourclient_id/client_secret/refresh_token. The result is cached in memory until ~1 minute before expiry. - Call SP-API with the regional base URL and header
x-amz-access-token: <token>plusContent-Type: application/json.
AWS Signature v4 request signing was the historical requirement for SP-API. Amazon removed the SigV4 requirement in 2023 for most tenants, so this server uses LWA-only auth. If your seller is still flagged as requiring SigV4, you will need to wrap amazonRequest with a signer (@aws-sdk/signature-v4) — not included here.
Regional base URLs
- NA (Americas, including BR/US/MX/CA):
https://sellingpartnerapi-na.amazon.com - EU (Europe + India + MENA):
https://sellingpartnerapi-eu.amazon.com - FE (Far East — Japan, Australia, Singapore):
https://sellingpartnerapi-fe.amazon.com
Select with AMAZON_REGION. Brazil and the Americas use na.
Run
# stdio (default — Claude Desktop, Cursor, etc) npx @codespar/mcp-amazon # HTTP (server-to-server testing) MCP_HTTP=true MCP_PORT=3000 npx @codespar/mcp-amazon
Notifications
create_subscription is webhook-equivalent for SP-API. Amazon does not push HTTP webhooks directly — instead, you create a destination (SQS queue or EventBridge bus) via POST /notifications/v1/destinations first, then attach subscriptions to that destination. This package covers subscription creation; destination provisioning is a one-time setup typically done via the AWS Console or a deploy script.
Status
0.1.0-alpha.1 — SP-API has 30+ product sections and this package covers the commerce-relevant subset (orders, listings, catalog, inventory, reports, finances, shipping, notifications). Endpoint paths and auth flow are implemented to the published spec; tool contracts should be integration-tested against real seller tokens before production use. The LWA refresh flow and x-amz-access-token header usage are confirmed against current SP-API docs.
Enterprise
Need governance, budget limits, and audit trails for agent payments? CodeSpar Enterprise adds policy engine, payment routing, and compliance templates on top of these MCP servers.
License
MIT
Facts
- Kind
- MCP server
- Group
- Uncategorized
- Stars
- 273
- License
- MIT
- Language
- TypeScript
- Last push
- 2026-09-27
- Forks
- 50
- MCP Registry
- io.github.codespar/mcp-amazon
- Homepage
- codespar.dev/servers
- Topics
- agentic-commerce, ai-agents, brazil, claude, fintech, latin-america, llm-tools, mcp, model-context-protocol, nfe, open-finance, payments, pix
- 1REAio.github.morluto/reaReverse engineer anything from your terminal or agent with one CLI and MCP server.125.3k
- 2com.browser-use/browser-usecom.browser-use/browser-useControl a real Chrome browser to complete any task: fill forms, extract data, book flights.117.7k
- 3World Monitorapp.worldmonitor/mcpLive markets, conflicts, country risk, chokepoints, energy, and China decision signals. 93 tools.88.3k
- 4Scrapling MCP Serverd4vinci/scrapling🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl! Don't be shy, join here: https://discord.gg/EMgGbDceNQ and follow here for daily tips and tricks: https://x.com/Scraplingdev86.9k
- 5Everythingmodelcontextprotocol/serversThis MCP server attempts to exercise all the features of the MCP protocol. It is not intended to be a useful server, but rather a test server for builders of MCP clients. It implements prompts, tools, resources, sampling, and more to showcase MCP capabilities.85.8k
- 6Fetchmodelcontextprotocol/serversA Model Context Protocol server that provides web content fetching capabilities. This server enables LLMs to retrieve and process content from web pages, converting HTML to markdown for easier consumption.85.8k