Operated by Sourcelane✓ verified
A scraper for Shopify stores that harvests reviews exposed via the Judge.me reviews widget: it extracts review ratings (1–5 stars), review titles and body text, reviewer names and locations, verified-buyer status, posting dates, associated product metadata (product title and URL slug) or store-level review association, and attached photo URLs. The connector parses the store’s Judge.me review feed, returns per-review records, and exposes a pagination cursor so an agent can iterate a store’s entire review history across multiple runs; product-level filtering is applied against the aggregated store feed. No login is required to collect visible Judge.me reviews.
Verified Sep 28, 12:10 AM
$0.0025
per review
Up to 100 per call. Only pay for results returned; failed calls are refunded.
| Window | Uptime | Success rate | p50 | p95 | Calls |
|---|---|---|---|---|---|
| 24h | — | — | — | — | 0 |
| 7d | — | — | — | — | 0 |
| 30d | — | — | — | — | 0 |
Call it through Sourcelane's gateway or MCP server. We run the connector, apply your agent's spend guardrails, and bill only the results returned.
Call it via Sourcelane
curl -X POST https://cool-puffin-608.convex.site/v1/call \
-H "Authorization: Bearer sl_live_your_agent_key" \
-H "Content-Type: application/json" \
-d '{"listing":"judgeme-reviews-scraper","params":{"shopDomain":"beardbrand.myshopify.com","maxItems":5},"maxResults":10}'Request params
| Field | Type | Required | Description |
|---|---|---|---|
shopDomain | string | required | The Shopify store's domain that has the Judge.me reviews widget installed. Use either the store's '*.myshopify.com' domain or its public storefront domain (e.g. 'beardbrand.com'), both work. |
reviewType | string | optional | Which review feed to scrape: 'Product reviews' returns reviews left on individual products across the whole store; 'Store reviews' returns reviews of the shopping experience itself. |
productHandle | string | optional | Limit results to one product by its Shopify URL handle (the slug after /products/ in the product URL, e.g. 'beard-oil'). Applied after fetching, since the public widget feed does not support server-side product filtering. Leave empty to keep every product's reviews. |
maxItems | integer | optional | Maximum number of reviews to return in this run. Set 0 for unlimited (the run paginates until every review is fetched or the run times out). Capped at 100 per call. |
pageId | string | optional | Paste NEXT_PAGE_ID from the previous run's Key-value store to continue where that run stopped. |
Each result contains
| Field | Type | Description |
|---|---|---|
reviewId | string | Review Id |
reviewerName | string | Reviewer Name |
rating | integer | Rating |
title | string | Title |
body | string | Body |
createdAt | string | Created At |
productTitle | string | Product Title |
productHandle | string | Product Handle |
verifiedBuyer | boolean | Verified Buyer |
photoUrls | array | Photo Urls |
location | string | Location |
reviewType | string | Review Type |
Pick your tool and connect in under a minute. Then just ask — for example: “Track the price of these 20 grocery items at Woolworths and Coles every week.”
Connect Claude
Web, desktop and mobile. Paste one URL.
Adds the Sourcelane MCP server with your key as a header.
claude mcp add --transport http sourcelane https://cool-puffin-608.convex.site/mcp \
--header "Authorization: Bearer sl_live_your_agent_key"Alternative to the connector URL: add to claude_desktop_config.json, then restart Claude.
{
"mcpServers": {
"sourcelane": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://cool-puffin-608.convex.site/mcp",
"--header",
"Authorization:${AUTH_HEADER}"
],
"env": {
"AUTH_HEADER": "Bearer sl_live_your_agent_key"
}
}
}
}Add to ~/.cursor/mcp.json (or Windsurf's mcp_config.json).
{
"mcpServers": {
"sourcelane": {
"url": "https://cool-puffin-608.convex.site/mcp",
"headers": {
"Authorization": "Bearer sl_live_your_agent_key"
}
}
}
}Save as .vscode/mcp.json. VS Code prompts for your key once.
{
"servers": {
"sourcelane": {
"type": "http",
"url": "https://cool-puffin-608.convex.site/mcp",
"headers": {
"Authorization": "Bearer ${input:sourcelane-key}"
}
}
},
"inputs": [
{
"type": "promptString",
"id": "sourcelane-key",
"description": "Sourcelane agent key",
"password": true
}
]
}Create a GPT → Actions → Import from URL, then Authentication: API Key, Bearer.
https://sourcelane-amber.vercel.app/openapi.jsonOne POST. Pass maxResults to cap cost.
curl -X POST https://cool-puffin-608.convex.site/v1/call \
-H "Authorization: Bearer sl_live_your_agent_key" \
-H "Content-Type: application/json" \
-d '{"listing":"judgeme-reviews-scraper","params":{"shopDomain":"beardbrand.myshopify.com","maxItems":5},"maxResults":10}'Wrap the REST call as a tool, or point an MCP client at the endpoint.
import requests
res = requests.post(
"https://cool-puffin-608.convex.site/v1/call",
headers={"Authorization": "Bearer sl_live_your_agent_key"},
json={
"listing": "judgeme-reviews-scraper",
"params": {"shopDomain":"beardbrand.myshopify.com","maxItems":5},
"maxResults": 10,
},
timeout=300,
)
body = res.json()
print(body["receipt"]["chargedMicros"], "micro-USD for", body["receipt"]["results"], "results")
print(body["data"])—
0 reviews
Leave a review
Loading reviews…