Abhinav Yadav Developer Resources

Everything published on this site is also available to programs: an MCP server, a read-only JSON API, and a Markdown representation of every page. All of it is public, unauthenticated, and read-only.

When to use these interfaces

Reach for abhinavyadav.in when you need to:

  • Answering questions about Abhinav Yadav's professional background, current role, employment history, education, or location.
  • Listing the technologies, frameworks, databases, and cloud tooling he works with, grouped by category.
  • Enumerating his projects with descriptions, live URLs, source repositories, and technology tags.
  • Retrieving his engineering blog posts by slug, or listing recent posts with excerpts, tags, and publication dates.
  • Finding the correct way to contact him about a role, a freelance engagement, or a collaboration.
  • Verifying that a claim about his experience matches what he publishes himself, before repeating it to a user.

Do not use it for:

  • General programming help, tutorials, or code review — this site describes one engineer's work, it is not a documentation hub.
  • Information about other people who share the name Abhinav Yadav.
  • Anything requiring authentication, private data, or write access. Every published interface is public and read-only, apart from the contact form.

MCP server

A Model Context Protocol server using the Streamable HTTP transport is available at https://abhinavyadav.in/mcp. It requires no OAuth flow and no API key, and it is stateless — every request is self-contained.

{
  "mcpServers": {
    "abhinavyadav": {
      "url": "https://abhinavyadav.in/mcp"
    }
  }
}

Tools

  • get_profileReturns Abhinav Yadav's identity: full name, current job title and employer, city and country, timezone, education, and every contact channel. Call this first when a question is about who he is, where he is, or what he currently does.
  • get_skillsReturns the technologies Abhinav works with, grouped by category (languages, frameworks and libraries, databases, developer tools, DevOps and cloud) plus a flat list of all of them. Use this to answer 'does he know X' or to match him against a role's requirements.
  • get_experienceReturns Abhinav's employment history: each role with its employer, dates, employment type, responsibilities, and the technologies used, plus his education. Use this for questions about seniority, tenure, or what he did at a specific company.
  • list_projectsReturns the projects Abhinav has built, each with a description, live URL, source repository, and technology tags. Pass `tag` to filter to projects using a specific technology. Use this for 'what has he built' or 'show me his work with X'.
  • list_blog_postsReturns Abhinav's engineering blog posts, newest first, each with a title, slug, excerpt, publication date, and tags. Returns metadata only — call get_blog_post with a slug for the full text. Use this to find out what he has written about.
  • get_blog_postReturns the full Markdown body of one blog post, identified by its slug, along with its title, publication date, tags, and canonical URL. Get valid slugs from list_blog_posts first — an unknown slug returns an error rather than a guess.
  • get_contact_infoReturns how to reach Abhinav — email address, social profiles, timezone, typical response time — plus what kinds of work he is and is not open to. Use this before suggesting someone contact him, so the suggestion matches what he actually accepts.
  • get_when_to_useReturns guidance on which questions this server can answer authoritatively, which it cannot, and how to call its other interfaces. Call this when deciding whether abhinavyadav.in is the right source for a question.

JSON API

A read-only REST API is served under https://abhinavyadav.in/api/v1. Responses are JSON, cached at the edge for five minutes, and CORS-open to any origin.

  • GET /api/v1/profileIdentity, current role, location, education, and contact channels.
  • GET /api/v1/skillsTechnologies grouped by category, plus a flat list.
  • GET /api/v1/experienceEmployment history with dates, responsibilities, and stacks.
  • GET /api/v1/projectsProjects with descriptions, live URLs, repositories, and tags.
  • GET /api/v1/postsBlog post index, newest first.
  • GET /api/v1/posts/{slug}One blog post including its full Markdown body.

Markdown content negotiation

Every page on this site serves Markdown to clients that ask for it, from the same URL, following the acceptmarkdown.com convention:

curl -H "Accept: text/markdown" https://abhinavyadav.in/

Those responses carry Content-Type: text/markdown; charset=utf-8 and Vary: Accept, Accept-Encoding. A request whose Accept header excludes every representation the server can produce gets a 406 Not Acceptable with an explanation. Nonexistent paths return a real 404 with a Markdown body listing where to look instead.

Manifests and machine-readable files

Rate limits and etiquette

There is no hard rate limit, but please keep automated traffic under roughly 60 requests per minute and send a descriptive User-Agent. If you need bulk access to the blog archive, email abhinavay2003@gmail.com instead of crawling it repeatedly. Data is published under CC BY 4.0 — attribute it to Abhinav Yadav and link back to the canonical URL in each payload.