etsy_search_listings
Pack: etsy · Endpoint: https://gateway.pipeworx.io/etsy/mcp
Search active Etsy listings site-wide (Etsy Open API v3, findAllListingsActive). Requires an Etsy API key (x-api-key auth only, no OAuth). No sold-price data — active listings only.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
keywords | string | no | Search term/phrase, e.g. “vintage brass lamp” |
limit | number | no | 1-100 (default 25) |
offset | number | no | Records to skip (default 0) |
sort_on | string | no | created (default) | price | updated | score |
sort_order | string | no | asc | desc (default desc); only applies alongside keywords/region |
min_price | number | no | Minimum price |
max_price | number | no | Maximum price |
taxonomy_id | number | no | Etsy taxonomy (category) ID |
buyer_country | string | no | ISO 3166-1 alpha-2, e.g. “US” — filters to listings that ship there |
Example call
Arguments
{
"keywords": "vintage brass lamp",
"limit": 10,
"_apiKey": "your-keystring:your-shared-secret"
}
curl
curl -X POST https://gateway.pipeworx.io/etsy/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"etsy_search_listings","arguments":{"keywords":"vintage brass lamp","limit":10,"_apiKey":"your-keystring:your-shared-secret"}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('etsy_search_listings', {
"keywords": "vintage brass lamp",
"limit": 10,
"_apiKey": "your-keystring:your-shared-secret"
});
Connect
Add this to your MCP client config, or use one-click install buttons:
{
"mcpServers": {
"etsy": {
"url": "https://gateway.pipeworx.io/etsy/mcp"
}
}
}
See Getting Started for client-specific install steps.