DealsPing MCP Server
India's AI-powered deals discovery platform. Find the best deals on Amazon, Flipkart and more Indian stores via Claude and other AI platforms.
MCP Server URL
Transport: Streamable HTTP (JSON-RPC 2.0 over POST, optional SSE stream over GET).
Available Tools
Usage
Add to Claude: Settings → Connectors → Add custom connector →
https://dealsping-ai.akhilbabumfwa.workers.dev/mcp
About DealsPing
DealsPing (dealsping.in) aggregates the best deals from Amazon, Flipkart, Myntra, Ajio and more Indian e-commerce stores.
As an Amazon Associate, DealsPing earns from qualifying purchases.
Architecture
Cloudflare Workers + D1 backend that mirrors DealsPing's Firebase deal data into a fast, AI-queryable API, MCP server, and admin dashboard. Completely separate from dealsping-next — read-only against Firebase, never writes back.
- sync.js — pulls
deals + monitored_deals from Firestore REST API (no SDK), maps to D1 schema, upserts, marks stale deals inactive.
- engine.js — deal score (0-100) calculation, freshness decay, AI list rebuilding, 4-day category rotation.
- api.js — public REST API (
/api/*), rate-limited, CORS-open, 5-minute cache headers.
- mcp.js — MCP server at
/mcp (Streamable HTTP: JSON-RPC 2.0 handshake, tools/list, tools/call).
- admin.js — protected dashboard API (
/admin/*), gated by X-Admin-Secret header.
- index.js — router + cron handler (sync every 6h, rebuild lists every 2d, rotate categories every 4d).
Setup
Endpoints
AI Lists
best_deals, latest_deals, trending_deals, featured_deals, under_500, under_1000, under_2000, under_5000, electronics, fashion, home_kitchen, mobiles, with_coupon, with_bank_offer, amazon_deals, flipkart_deals.
Deal Score Formula (0-100)
Notes / Limitations
- Rate limiting (60 req/min/IP) is best-effort in-memory per Worker isolate — not strictly distributed. Sufficient to blunt casual abuse; for hard guarantees, migrate to Durable Objects or a KV-backed counter.
- Affiliate URLs are copied verbatim from Firebase — never modified.
- Sync never touches Firebase; it's read-only via the Firestore REST API with an API key.
firestore.rules on the source project already have allow read: if true on deals/monitored_deals, so the API key alone is sufficient (no service account needed for reads).
- The ASIN catalog (
asin_catalog table, powering check_and_link/search_catalog) intentionally stores no price/image/availability data — see check_and_link's tool description for why.
License
MIT
Contact
[email protected]