ShopGraph
Structured product data from the open web — where platform APIs don't reach. Schema.org + AI extraction. Pay per call via Stripe MPP.
@laundromatic/shopgraph
Structured product data from the open web, where platform APIs don't reach. Schema.org + AI extraction. Pay per call via Stripe MPP.
Website: https://shopgraph.dev | MCP Endpoint: https://shopgraph.dev/mcp
What it does
Agents connect via Model Context Protocol and call enrichment tools to extract structured product data from URLs. Requests are payment-gated via Stripe: unauthenticated calls receive a 402 challenge, authenticated calls with a payment_method_id are processed and billed.
Architecture
Agent → MCP (streamable-http) → enrich_product / enrich_basic
→ Cache hit? Return immediately (free)
→ No payment_method_id? Return 402 + MPP challenge
→ Payment confirmed → schema.org extraction (fast, 0.95 confidence)
→ No structured data? → Gemini LLM fallback (0.7+ confidence)
→ Bot-blocked or JS-rendered? → Playwright browser fallback
→ Return ProductData + PaymentReceipt
Setup
npm install
Required environment variables in .env:
| Variable | Purpose |
|---|---|
STRIPE_TEST_SECRET_KEY | Stripe test mode secret key |
GOOGLE_API_KEY | Gemini API key for LLM fallback |
Note: Check .env for duplicate key definitions — dotenv uses the last occurrence.
Build & Run
npm run build # Compile TypeScript
npm start # Run MCP server (stdio)
npm run start:http # Run HTTP server (for Vercel/remote)
npm run dev # Run with tsx (no build needed)
Test
npm run test:run # Run all tests once
npm test # Run tests in watch mode
Tools
| Tool | Price | Description |
|---|---|---|
enrich_product | $0.02 | Full product data extraction |
enrich_basic | $0.01 | Basic attributes only (no images) |
Cached results are returned free of charge (24-hour TTL).
MCP Configuration
Add to your MCP client config:
{
"mcpServers": {
"shopgraph": {
"command": "node",
"args": ["/path/to/shopgraph/dist/index.js"]
}
}
}
Serveurs connexes
Bright Data
sponsorDiscover, extract, and interact with the web - one interface powering automated access across the public internet.
ScrAPI MCP Server
A server for scraping web pages using the ScrAPI API.
Playwright Server
A server providing Playwright tools for browser automation and web scraping.
Fetch as Markdown MCP Server
Fetches web pages and converts them to clean markdown, focusing on main content extraction.
DidItChange
MCP-native website monitoring with AI-powered change summaries and natural conversation control.
Olostep MCP Server
A server for web scraping, Google searches, and website URL lookups using the Olostep API.
SearchMCP
Connect any LLM to the internet with the cheapest, most reliable, and developer-friendly search API.
MCP Browser Console Capture Service
A browser automation service for capturing console output, useful for tasks like public sentiment analysis.
AI Shopping Assistant
A conversational AI shopping assistant for web-based product discovery and decision-making.
Feed
A server for fetching and parsing RSS, Atom, and JSON feeds.
Notte
Leverage Notte Web AI agents & cloud browser sessions for scalable browser automation & scraping workflows