@mcpengine/etsy
Provides comprehensive tools for the Etsy API v3, enabling management of listings, shops, orders, payments, reviews, taxonomy, and more.
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., "@@mcpengine/etsylist my active listings"
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.
@mcpengine/etsy — The Most Comprehensive Etsy MCP Server
The most complete Model Context Protocol (MCP) server for the Etsy API v3, featuring 50+ tool modules covering virtually the entire Etsy API surface.
Features
50+ tools across every Etsy API domain
Full Etsy API v3 coverage
Zod-validated input schemas on every tool
readOnlyHinton all GET/list operationsdestructiveHinton all delete operationsCursor/offset pagination on all list tools
Axios-based client with OAuth bearer token support
TypeScript with 0 compilation errors
Related MCP server: Etsy MCP Server
Tools Index
Listings (Core)
Tool | Description |
| List active listings with filters |
| Get a single listing |
| Batch-fetch listings by IDs |
| List all listings in a shop |
| Create a new listing |
| Update a listing |
| Delete a listing |
| Get featured listings |
Listing Images
Tool | Description |
| List images for a listing |
| Get a specific image |
| Upload an image via URL |
| Delete an image |
| Reorder listing images |
Listing Videos
Tool | Description |
| List videos |
| Get a specific video |
| Upload/attach a video |
| Remove a video |
Listing Inventory
Tool | Description |
| Get inventory (variations, prices, quantities) |
| Update inventory |
Listing Properties
Tool | Description |
| List properties |
| Get a property |
| Update a property |
| Delete a property |
Digital Files
Tool | Description |
| List digital download files |
| Get a file |
| Upload a digital file |
| Delete a file |
Translations
Tool | Description |
| List translations |
| Get a translation |
| Create translation |
| Update translation |
Variation Images
Tool | Description |
| Get variation images |
| Update variation images |
Shops
Tool | Description |
| Get a shop |
| Update a shop |
| Get shops by user |
| Search shops by name |
Shop Sections
Tool | Description |
| List sections |
| Get a section |
| Create a section |
| Update a section |
| Delete a section |
Shop About, Production Partners, Return Policies
Tool | Description |
| Get shop About page |
| List production partners |
| Create partner |
| Update partner |
| Delete partner |
| List return policies |
| Get a policy |
| Create policy |
| Update policy |
| Delete policy |
Shipping Profiles
Tool | Description |
| List profiles |
| Get a profile |
| Create profile |
| Update profile |
| Delete profile |
| List destinations |
| Create destination |
| Update destination |
| Delete destination |
| List upgrades |
| Create upgrade |
| Update upgrade |
| Delete upgrade |
| List shipping carriers |
Orders & Receipts
Tool | Description |
| List orders/receipts |
| Get a receipt |
| Update receipt (ship, note) |
| List transactions |
| Get a transaction |
| Transactions for a receipt |
| List shipments |
| Add tracking |
| Receipt transactions in shop |
| Listing transactions |
Payments & Finance
Tool | Description |
| List payments |
| Get a payment |
| Payments for a receipt |
| List ledger entries |
| Get a ledger entry |
| Get payment account |
| List ledger entries (alt) |
| Get ledger entry |
| Payment for ledger entry |
| List payouts |
| Get a payout |
Reviews
Tool | Description |
| Shop reviews |
| Listing reviews |
Users & Addresses
Tool | Description |
| Get a user |
| Get authenticated user |
| List addresses |
| Get an address |
| Delete an address |
Taxonomy & Discovery
Tool | Description |
| List seller taxonomy |
| Get a taxonomy node |
| List taxonomy properties |
| Get properties for node |
| List buyer taxonomy |
| Get buyer taxonomy node |
| Global listing search |
| Search within a shop |
| Listings by section |
Favorites
Tool | Description |
| List favorited listings |
| Check if listing is favorited |
| Favorite a listing |
| Unfavorite a listing |
| List favorited shops |
| Check if shop is favorited |
| Favorite a shop |
| Unfavorite a shop |
Images, Media & Icons
Tool | Description |
| Upload image from URL |
| Set image display rank |
| Update image alt text |
| Get shop icon |
| Delete shop icon |
| Get shop banner |
| Delete shop banner |
Listing Lifecycle & Content
Tool | Description |
| List draft listings |
| Create a draft |
| Publish a draft |
| Renew an expired listing |
| List expired listings |
| List inactive listings |
| Get listing stats |
| Get view count |
| Bulk listing stats |
| List featured listings |
| Set featured rank |
| Feature a listing |
| Unfeature a listing |
| Get listing tags |
| Replace tags |
| Add tags |
| Get materials |
| Replace materials |
| Add materials |
| Get occasion |
| Set occasion |
| Update styles |
Shop Analytics
Tool | Description |
| Shop-level stats |
| Order summary |
| Payment account summary |
Products & Offerings
Tool | Description |
| Get a product offering |
| Get a product variant |
Setup
1. Get an Etsy API Key
Visit Etsy Developer Portal
Click Create a New App
Note your API Key (Keystring)
For write operations, set up OAuth 2.0 and obtain an access token
2. Install
npm install
npm run build3. Configure
cp .env.example .env
# Edit .env with your credentialsETSY_API_KEY=your_etsy_api_key_here
ETSY_ACCESS_TOKEN=your_oauth_access_token_here # Optional: for write operations4. Run
npm startOr with npx:
ETSY_API_KEY=<key> node dist/main.jsMCP Client Configuration
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"etsy": {
"command": "node",
"args": ["/path/to/etsy-mcp/dist/main.js"],
"env": {
"ETSY_API_KEY": "your_api_key_here",
"ETSY_ACCESS_TOKEN": "your_access_token_here"
}
}
}
}Cursor
Add to .cursor/mcp.json in your project:
{
"mcpServers": {
"etsy": {
"command": "node",
"args": ["./dist/main.js"],
"env": {
"ETSY_API_KEY": "your_api_key_here"
}
}
}
}Authentication
The Etsy API uses two forms of authentication:
Operation | Auth Required |
Public listing search | API Key only |
Read shop data | API Key only |
Write/update operations | OAuth 2.0 Access Token |
Financial data | OAuth 2.0 Access Token |
API Key: Pass as ETSY_API_KEY env var
OAuth Token: Pass as ETSY_ACCESS_TOKEN env var
For OAuth setup, see Etsy's OAuth 2.0 Guide.
Architecture
src/
├── main.ts # Entry point, env validation
├── server.ts # MCP server class, tool loader
├── client.ts # Axios-based Etsy API v3 client
├── types.ts # TypeScript interfaces
└── tools/ # One file per API domain (47 modules)
├── listings.ts
├── listing_images.ts
├── ...
└── listing_occasion.tsDevelopment
npm run dev # ts-node (no build step)
npm run build # TypeScript compile → dist/
npm run lint # ESLintLicense
MIT — see LICENSE
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- 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/BusyBee3333/etsy-mcp-2026-complete'
If you have feedback or need assistance with the MCP directory API, please join our Discord server