This project is now implemented as a Next.js App Router application.
- Install dependencies:
npm install
- Copy environment variables:
copy .env.example .env.local(Windows)
- Set API credentials in
.env.local:BRIGHTDATA_MCP_URL(recommended for OpenAI MCP, e.g.https://mcp.brightdata.com/mcp?...)BRIGHTDATA_MCP_SSE_URL(legacy/direct SSE fallback)BRIGHTDATA_API_KEY(optional if token is embedded in MCP URL)API_TOKEN(supported alias for Bright Data key, matches MCP config)GROUPS/TOOLS(optional source tool filter, matches MCP config)OPENAI_API_KEY(required for OpenAI MCP integration path)OPENAI_MODEL(optional, defaultgpt-4.1-mini)ACONTEXT_API_KEYACTIONBOOK_API_KEY
- Optional MCP stdio config (same values used by this app when it launches
npx @brightdata/mcp):
{
"mcpServers": {
"Bright Data": {
"command": "npx",
"args": ["@brightdata/mcp"],
"env": {
"API_TOKEN": "YOUR_TOKEN",
"GROUPS": "advanced_scraping",
"TOOLS": "web_data_amazon_product,web_data_walmart_product,web_data_ebay_product,web_data_etsy_products,web_data_bestbuy_products,web_data_google_shopping"
}
}
}
}- Start dev server:
npm run dev
- Open Swagger UI:
/api/docs
- Open raw OpenAPI spec:
/api/openapi
- Use
Try it outin Swagger UI to test:POST /api/compare/startGET /api/compare/{requestId}GET /api/saved?sessionId=...POST /api/saved/togglePOST /api/saved/alert
- Responsive dashboard and product pages with mobile sidebar behavior.
- Saved deals with shared bookmark state and price alerts.
- Compare API + polling endpoints.
- Bright Data integration via OpenAI Responses MCP first (
type: "mcp"to Bright Data), then direct MCP (SSE/stdio) and@brightdata/sdkfallback, with source normalization and ranking. - Acontext + Actionbook adapter hooks for context and playbook usage.