etsy-mcp-server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ETSY_API_KEY | Yes | Your Etsy API key from developer account | |
| ETSY_SHOP_ID | No | Your Etsy shop ID | |
| ETSY_API_SECRET | Yes | Your Etsy API shared secret | |
| ETSY_ACCESS_TOKEN | No | OAuth access token (obtained after authorization) | |
| ETSY_TOKEN_EXPIRY | No | OAuth token expiry timestamp (obtained after authorization) | |
| ETSY_REFRESH_TOKEN | No | OAuth refresh token (obtained after authorization) |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_meA | Get authenticated Etsy user info including user_id and shop_id. Use this first to find your ETSY_SHOP_ID. |
| get_shopA | Get full details of your Etsy shop (name, announcement, policies, stats). |
| update_shopA | Update shop info: title, announcement, sale message, or digital sale message. |
| list_listingsB | List all listings in your shop. Filter by state: active, draft, inactive, expired, sold_out. |
| get_listingB | Get full details of a single listing by ID. |
| create_listingA | Create a new draft listing. For digital products (PDF, etc.) set type='download'. Returns the new listing_id. |
| update_listingC | Update an existing listing. Only provide fields you want to change. |
| publish_listingA | Publish a draft listing (make it active/visible). Requires at least one image already uploaded. |
| delete_listingA | Permanently delete a listing. This cannot be undone. |
| list_listing_imagesC | List all images attached to a listing. |
| upload_listing_imageB | Upload an image to a listing from a local file path. Supported formats: JPEG, PNG, GIF (max 10MB). |
| delete_listing_imageC | Remove an image from a listing. |
| list_listing_filesC | List all digital files attached to a listing. |
| upload_listing_fileA | Upload a digital file (PDF, ZIP, etc.) to a listing. The listing type must be 'download'. |
| delete_listing_fileC | Remove a digital file from a listing. |
| get_inventoryA | Get inventory (products, offerings, prices, quantities) for a listing. |
| update_inventoryA | Update the full inventory for a listing. You must provide ALL products (replaces entire inventory). Get current state with get_inventory first, then modify only what you need. |
| list_sectionsA | List all sections in your shop (used to organize listings into categories). |
| create_sectionB | Create a new section in your shop. |
| update_sectionC | Rename an existing shop section. |
| delete_sectionB | Delete a shop section. Listings in this section will become unsectioned. |
| get_taxonomy_nodesA | Get the full Etsy seller taxonomy tree. Use this to find the right taxonomy_id for create_listing. Search the results for your product category (e.g. 'art print', 'digital download', 'guide'). |
| get_taxonomy_propertiesA | Get available properties (attributes) for a specific taxonomy node. Use this to know what attributes you can set when creating a listing. |
| suggest_tagsA | Search taxonomy nodes by keyword to help build relevant SEO tags for a listing. Returns matching category names you can use as tags. |
| list_ordersC | List shop orders (receipts). Filter by status: open, unshipped, unpaid, completed, processing. |
| get_orderA | Get full details of a single order (receipt) including buyer info, items, and totals. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- 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/DColl/etsy-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server