etsy
Etsy MCP Server - Upload Listings, Edit Listings, All via an LLM through MCP!
claude mcp add --transport stdio georgejeffers-etsy-mcp-server npm run dev \ --env ETSY_API_KEY="YOUR_ETSY_API_KEY" \ --env ETSY_MCP_HOST="localhost" \ --env ETSY_CLIENT_SECRET="YOUR_ETSY_CLIENT_SECRET" \ --env ETSY_MCP_OAUTH_PORT="3003" \ --env SHIPPING_PROFILE_ID="YOUR_DEFAULT_SHIPPING_PROFILE_ID" \ --env ETSY_MCP_REDIRECT_URI="http://localhost:3003/oauth/callback"
How to use
This Etsy MCP Server provides a set of MCP tools to interact with the Etsy V3 API, including authentication via OAuth2 (PKCE), listing management, shop details retrieval, shipping profile handling, and image uploads. After starting the server, clients can invoke tools such as authenticate() to begin the OAuth flow, set_default_shop() to select a default shop, get_listings() to fetch current listings, get_shop_details() to retrieve shop data, and actions to manage shipping profiles and upload images. The server exposes these capabilities over the MCP interface so tools and automation can manage Etsy data without direct API calls.
To use it from an MCP client (for example Cursor IDE), configure the server with the command npm run dev (or npm start for production) and supply necessary environment variables like ETSY_API_KEY and ETSY_CLIENT_SECRET. You will typically authenticate first, then set a default shop, after which most tools will operate against that shop unless you explicitly provide a shop_id. Ensure your redirect URI matches what you configured in your Etsy app and that your tokens are stored securely as configured by the server.
How to install
Prerequisites
- Node.js 18.0.0 or higher
- npm (comes with Node.js) or yarn
Manual Installation
- Clone the repository and navigate to the project directory:
git clone <your-repository-url>
cd etsy-mcp
- Install dependencies:
npm install
Or with yarn:
yarn install
- Configure environment variables: Copy the example env file and fill in credentials:
cp .env.example .env
Then edit .env to include:
ETSY_API_KEY=YOUR_ETSY_APP_API_KEY
ETSY_CLIENT_SECRET=YOUR_ETSY_APP_CLIENT_SECRET
# Optional: override host/port for OAuth callback
# ETSY_MCP_HOST=localhost
# ETSY_MCP_OAUTH_PORT=3003
# ETSY_MCP_REDIRECT_URI=http://localhost:3003/oauth/callback
# Optional: token/log paths
# ETSY_MCP_TOKEN_PATH=/path/to/tokens
# ETSY_MCP_LOG_PATH=/path/to/logs
# Optional: default shipping profile
# SHIPPING_PROFILE_ID=YOUR_DEFAULT_SHIPPING_PROFILE_ID
Note: The REDIRECT_URI must match one of your Etsy app's configured redirect URIs.
- Run the service in development or production mode:
# Development with auto-reload
npm run dev
To run in production (build first):
npm run build
npm start
- Verify the server starts and listens for MCP commands. You can then connect with an MCP client and begin authentication and data operations.
Additional notes
Environment and configuration tips:
- Keep ETSY_API_KEY and ETSY_CLIENT_SECRET secure; prefer loading them from the server's .env file rather than overriding in client configs.
- Ensure your OAuth Redirect URI matches what Etsy has registered for your app.
- If you enable custom token storage or logs via ETSY_MCP_TOKEN_PATH or ETSY_MCP_LOG_PATH, ensure the directories exist and are writable by the process.
- When using a default shipping profile, provide SHIPPING_PROFILE_ID to automatically apply during relevant operations, but you can override it per request if supported by the client.
- If you encounter token refresh issues, confirm PKCE flow is correctly configured and that the client secret is only used in secure server-side contexts.
- For production deployments, consider containerization (e.g., docker) and securing secrets with env management systems.
Related MCP Servers
iterm
A Model Context Protocol server that executes commands in the current iTerm session - useful for REPL and CLI assistance
mcp
Octopus Deploy Official MCP Server
furi
CLI & API for MCP management
editor
MCP Server for Phaser Editor
DoorDash
MCP server from JordanDalton/DoorDash-MCP-Server
mcp
MCP сервер для автоматического создания и развертывания приложений в Timeweb Cloud