Who this is for
Two audiences: AI agents and LLM-based tools that want structured, citable answers about Anuraag Burman’s work instead of parsing rendered HTML, and developers who want to pull this data into their own project (a resume site aggregator, a chatbot, a CLI). If you’re a human just reading, the homepage and writing are the better starting point.
Rate limits & caching
No hard rate limit is enforced — this API is a handful of Vercel serverless functions with no rate limiter in front of them, so honestly say so rather than promise a number the code doesn’t back. Every response is cacheable: Cache-Control: public, max-age=300, stale-while-revalidate=86400, meaning a CDN or client can treat a response as fresh for 5 minutes and keep serving a stale copy for up to a day while revalidating in the background. This is fine because the underlying data only changes when the site itself is rebuilt — there’s no shorter-lived source of truth behind it to miss.
Endpoints
Every endpoint below returns JSON and is open to CORS from any origin. Base URL: https://anuraagburman.com.
GET /api/v1/profile
Anuraag's profile: name, job title, headline, bio, current role, education, contact links, and a lightweight project list.
curl https://anuraagburman.com/api/v1/profileGET /api/v1/projects
Short summaries of every project (title, tagline, status, stack, links). Optional `status` and `limit` query params.
curl "https://anuraagburman.com/api/v1/projects?status=Shipped&limit=5"GET /api/v1/projects/{slug}
The full case study for one project: problem statement, metrics, stack, links, and deep-dive sections. 404 for an unknown slug.
curl https://anuraagburman.com/api/v1/projects/localflowGET /api/v1/articles
Short summaries of every article (title, excerpt, published date, tags, reading time). Optional `tag` and `limit` query params.
curl https://anuraagburman.com/api/v1/articlesGET /api/v1/articles/{slug}
The full text of one article as markdown, plus its metadata. 404 for an unknown slug.
curl https://anuraagburman.com/api/v1/articles/your-article-slugGET /api/v1/search
Full-text search across projects and articles in one call. Required `q` query param.
curl "https://anuraagburman.com/api/v1/search?q=subscriptions"GET /api/openapi.json
This API described as an OpenAPI 3.1 document (also mirrored statically at /openapi.json).
curl https://anuraagburman.com/api/openapi.jsonErrors
Every non-2xx response uses the same JSON error envelope:
{
"error": {
"code": "project_not_found",
"message": "No project exists with slug 'not-a-real-project'.",
"hint": "List valid slugs at GET /api/v1/projects.",
"documentation": "https://anuraagburman.com/developers/"
},
"status": 404
}MCP
The Model Context Protocol (MCP) lets an agent call this API as typed, self-describing tools instead of reading REST documentation and guessing at request shapes. This site runs a stateless MCP server, over the Streamable HTTP transport, at:
https://anuraagburman.com/api/mcpIt exposes six tools — get_profile, list_projects, get_project, list_articles, get_article, and search — each documented in the server’s own tools/list response. Add it to Claude Code with:
claude mcp add --transport http anuraagburman https://anuraagburman.com/api/mcpCLI
An unpublished anuraagburman CLI wraps the same endpoints for terminal use via npx — no install required:
npx anuraagburman profile
npx anuraagburman projects
npx anuraagburman project localflow
npx anuraagburman articles
npx anuraagburman article <slug>
npx anuraagburman search "rag pipeline"