Etsy MCP Server logo

Etsy MCP Server

by georgejeffers

An MCP server for interacting with the Etsy API. This service handles authentication, API calls to Etsy for managing listings, shop details, shipping profiles, and image uploads.

View on GitHub

Last updated: N/A

What is Etsy MCP Server?

This service provides a set of tools accessible via the Model Context Protocol (MCP) to interact with the Etsy V3 API. It manages the OAuth 2.0 authentication flow, stores tokens securely, and exposes functionalities like creating listings, fetching shop data, managing shipping profiles, and uploading images.

How to use Etsy MCP Server?

First, clone the repository and install dependencies. Then, configure your Etsy App credentials in the .env file. Run the service using npm run dev for development or npm start for production. Finally, configure your MCP client (like Cursor IDE) with the server's command and environment variables, ensuring the cwd points to the project's absolute path.

Key features of Etsy MCP Server

  • OAuth2 Authentication

  • Listing Management

  • Shop Information

  • Shipping Profiles

  • Image Uploads

  • Default Shop Management

  • Secure Token Storage

Use cases of Etsy MCP Server

  • Automating Etsy listing creation and updates

  • Integrating Etsy shop data into other applications

  • Managing shipping profiles programmatically

  • Uploading and managing images for Etsy listings

  • Using with Cursor IDE for Etsy development

  • Building custom Etsy tools and integrations

FAQ from Etsy MCP Server

What do I do if I get an authentication error?

Ensure your ETSY_API_KEY and ETSY_CLIENT_SECRET are correct in the .env file. Also, verify that the REDIRECT_URI matches one of the Callback URLs configured in your Etsy App settings. Try clearing tokens.json and re-authenticating.

What does EADDRINUSE for OAuth Server mean?

This means the port (default 3003) for the OAuth callback server is already in use. Stop the other process or configure a different ETSY_MCP_OAUTH_PORT in your .env file and update your Etsy App's redirect URI accordingly.

What do I do if I get a File Not Found error for image upload?

Ensure the file_name provided to upload_listing_image exists within the public/uploads/listing_images/ directory relative to your project root.

Where can I find detailed error messages?

Check the log files generated in the logs directory (or ETSY_MCP_LOG_PATH) for detailed error messages. Each run creates a timestamped log file.

How does the authentication flow work?

The server checks for a valid OAuth token. If none exists, it generates an Etsy authorization URL (using PKCE). The user opens this URL in a browser and authorizes the application. Etsy redirects to the server's callback endpoint with an authorization code, which is exchanged for access and refresh tokens, and saved securely.