Etsy

liveReference

Etsy MCP — public listing search via Etsy Open API v3 (api_key auth only)

3tools
0msauth
free tier50 calls/day

Tools

etsy_search_listings

Search active Etsy listings site-wide (Etsy Open API v3, findAllListingsActive). Requires an Etsy API key — pass your keystring as _apiKey (x-api-key auth only, no OAuth). No sold-price data — active

No parameters required.

▶Try it
etsy_search_shop_listings

Search a specific Etsy shop's active listings by shop ID (Etsy Open API v3, findAllActiveListingsByShop). Requires an Etsy API key. Use etsy_search_listings first if you don't already have a shop_id.

No parameters required.

▶Try it
etsy_get_listing

Get one Etsy listing by its numeric listing ID (Etsy Open API v3, getListing). Requires an Etsy API key.

No parameters required.

▶Try it

Test with curl

The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.

List available tools
bash
curl -X POST https://gateway.pipeworx.io/etsy/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Call a tool
bash
curl -X POST https://gateway.pipeworx.io/etsy/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"etsy_search_listings","arguments":{}}}'

Use with the SDK

Install @pipeworx/sdk to call tools from any TypeScript/Node project.

TypeScript
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("etsy_search_listings", {});
ask_pipeworx
// Or ask in plain English:
const answer = await px.ask("etsy mcp — public listing search via etsy open api v3 (api_key auth only)");