@pipeworx/poshmark-comps

Connect: https://gateway.pipeworx.io/poshmark-comps/mcp · Install: one-click buttons

Tools: 2

Sold-price and active-listing search on the public Poshmark marketplace — the best open sold-price comp data on Poshmark, with no login and no API key.

Tools

  • poshmark_sold_search(query, department?, sort_by?, limit?) — search SOLD listings, returns price, size, brand, condition, sold date, seller, and a listing URL per hit.
  • poshmark_active_search(query, department?, sort_by?, limit?) — same shape for currently-listed (not yet sold) items, for comparing ask vs. sold.

Auth

Keyless. No login, no API key, no anti-bot challenge encountered (verified live 2026-09-05).

Data sources

  • https://poshmark.com/search — Poshmark’s own public search page. There is no separate JSON API endpoint: the page is server-rendered by a Vue app and embeds the full result set in a window.__INITIAL_STATE__ script-tag blob (checked live: an XHR/Accept: application/json request returns the same full HTML page, not JSON). This pack fetches that HTML and extracts the embedded JSON directly — cheaper and more robust than DOM parsing.

Traps for the next person:

  • One page per call, up to ~48 results (Poshmark’s own default page size). next_max_id in the response is a real pagination cursor but this pack doesn’t walk it yet — total_matches_reported_by_poshmark in the tool output tells the caller how much more exists.
  • price on a sold item is the listing price Poshmark shows on the sold post (what the seller was asking), not a separately verified receipt/hammer amount, and excludes Poshmark’s fee and shipping. State this to callers — it’s in coverage_note on every response.
  • sort_by only reliably takes best_match (default), price_desc, price_ascnewest and most_loved returned empty result sets when probed live 2026-09-05; not exposed as options for that reason.
  • brand/size query params on the site did not reliably filter when probed (results included non-matching brands); free-text query does the real filtering, so brand/size aren’t exposed as separate parameters — put them in query instead (e.g. "lululemon align size 6").
  • Crawl politely: one page fetch per tool call, no pagination loop, no concurrent fan-out.

Tools

  • poshmark_sold_search — Search Poshmark SOLD listings and return realized/ask-at-sale prices — the best open sold-price comp data on Poshmark (no login, no API key). Sourced live from poshmark.com/search?availability=sold_ou
  • poshmark_active_search — Search Poshmark ACTIVE (currently listed, not yet sold) listings — for comparing current ask prices against poshmark_sold_search results. No login, no API key. Returns up to ~48 results per call.

Tools

  • poshmark_active_search — Search Poshmark ACTIVE (currently listed, not yet sold) listings — for comparing current ask prices against poshmark_sold_search results. No login, no API key. Returns up to ~48 results per call.
  • poshmark_sold_search — Search Poshmark SOLD listings and return realized/ask-at-sale prices — the best open sold-price comp data on Poshmark (no login, no API key). Sourced live from poshmark.com/search?availability=sold_ou

Regenerated from source · build September 5, 2026