etsy-mcp-server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ETSY_SHOP_ID | No | Optional. Defaults the shop_id argument on shop tools. | |
| MCP_READ_ONLY | No | Set to 1 to refuse anything that changes state. | 1 |
| ETSY_KEYSTRING | No | Your Etsy API keystring. Required for all modes. | |
| ETSY_SHARED_SECRET | No | Your Etsy shared secret. Required for seller mode to access all operations. | |
| MCP_NO_DESTRUCTIVE | No | Set to 1 to allow writes but refuse deletes. | 1 |
| ETSY_CREDENTIALS_FILE | No | Path to the credentials file used in seller mode (e.g., ~/.etsy-mcp-credentials). |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| etsy_list_operationsA | Browse all 105 operations in the Etsy Open API v3. Every one is reachable — Etsy's API is entirely seller-facing. Each entry names the OAuth scope it needs, which is what turns a 403 into something you can act on. Use this to find an operation id for etsy_call. |
| etsy_callB | Call any Etsy operation by id. If it returns 403, check the scope it needs with etsy_check_scopes — Etsy's scope refusals read like permission errors. |
| etsy_check_scopesA | Which OAuth scopes the Etsy API needs, and what each one unlocks. Useful before authorising an app, and the fastest way to understand a 403. Pass an operation id to see what one call needs; pass held=true to ask Etsy what your token actually carries. The two together are what turn a 403 into a fix. |
| etsy_get_meA | The authenticated Etsy user, including their user_id and shop_id. |
| etsy_list_listingsC | Listings in a shop, filtered by state. |
| etsy_get_listingB | One listing in full. Public — works without a seller token. |
| etsy_list_receiptsC | Orders in a shop. Needs transactions_r. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 7 tools
Most tools map cleanly to distinct actions: list operations, call an operation, check scopes, get the user, list listings, get a listing, list receipts. The three API-introspection tools (etsy_list_operations, etsy_call, etsy_check_scopes) are adjacent in purpose but their roles—discover, execute, diagnose—are reasonably clear.
All tools share the etsy_ prefix and almost all follow an etsy_verb_noun pattern: list_operations, check_scopes, get_me, list_listings, get_listing, list_receipts. etsy_call is the only mild deviation since it is a bare verb, but it remains readable and consistent with the overall style.
Seven tools is well-scoped for an API wrapper: three plumbing tools handle operation discovery, execution, and scope diagnosis, while four convenience tools cover the most common seller-facing reads. The generic etsy_call prevents the surface from needing hundreds of individual endpoint tools.
The etsy_call tool can invoke any of the 105 Etsy Open API v3 operations, and etsy_list_operations makes those operations discoverable, so there are no unavoidable dead ends. The named convenience tools cover frequent read workflows, while writes and less common operations remain reachable through the generic dispatcher.