Inspiration
What it does
How I built it
Challenges I ran into
Accomplishments that I'm proud of
What I learned
What's next for LurkAPI
Inspiration
I wanted a social media data API that answers fast, costs little per call, and works inside AI apps as well as from code.
What it does
LurkAPI turns public pages on 16 platforms into clean JSON with one GET request: posts, profiles, comments, video transcripts and the ads in Meta's, Google's, TikTok's and LinkedIn's ad libraries. The same 88 endpoints are an MCP server, so Claude, ChatGPT, Cursor, VS Code and Claude Code can look things up directly, with browser sign-in instead of a pasted key.
How we built it
- A plain Cloudflare Worker with a route map, placed next to its proxies, that does only what the answer needs: check the key, fetch, answer. Metering and logging happen after the response is sent.
- One registry of endpoints written in zod 4. API routing and validation, the MCP tools, the docs pages and their markdown twins,
openapi.jsonandllms.txtare all generated from it. - Cloudflare D1 for accounts and usage, the Cache API for upstream responses, and a public status page fed by a real request against every endpoint about once an hour.
Challenges we ran into
Platforms change without notice. The hourly checks put a broken endpoint on the owner's desk before a customer sees it.
Accomplishments that we're proud of
- About a second on average, measured live on our own traffic.
- 69 ScrapeCreators endpoints answer at the same path, so switching is a change of base URL and key.
- Most calls cost 1 credit; 100,000 calls cost $59, and failed calls are free.
What we learned
Speed is the product: people notice a slow response long before they notice a missing field.
What's next
More platforms and endpoints, picked by what callers ask for. New accounts get 100 free credits with no card: https://lurkapi.com
Built With
- cloudflare-d1
- cloudflare-workers
- durable-objects
- mcp
- react
- typescript
- vite
- zod
Log in or sign up for Devpost to join the conversation.