sanam.me can be read by programs as well as people. Everything here is read-only, free and needs no key or account. The source data is the same as the pages you see, so the two cannot disagree.

MCP server

The site runs a Model Context Protocol server for AI assistants and agents.

Tools

Tool What it returns
get_profile Role, experience, skills, projects, credentials and contact details, as Markdown.
list_posts Every blog post with its slug, title, date, tags and summary.
get_post One blog post as Markdown. Takes the slug from list_posts.

Connect a client

Most MCP clients take a URL. In Claude Code:

claude mcp add --transport http sanam-me https://sanam.me/mcp

In a client that reads a JSON config:

{
  "mcpServers": {
    "sanam-me": { "type": "http", "url": "https://sanam.me/mcp" }
  }
}

Try it with curl

curl -s https://sanam.me/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_profile","arguments":{}}}'

Markdown API

Every page has a Markdown version at the same address.

  • Send Accept: text/markdown to any page URL. The response carries Vary: Accept.
  • Or add .md to the path: /index.md, /about.md, /blog.md, and /blog/<slug>.md for a post.
  • A page that does not exist answers 404 in Markdown too.
curl -s -H "Accept: text/markdown" https://sanam.me/

Other machine-readable files

  • /llms.txt: what the site is, when to use it and where things are.
  • /rss.xml: the blog as an RSS feed.
  • /blog/posts.json: the post index the MCP server reads.
  • /sitemap-index.xml: every page.
  • JSON-LD on the home page: WebSite, ProfilePage, Person and one SoftwareApplication per product.

Source and contact

My code is on GitHub at github.com/sanamhub. For questions about any of this, write to sanampakuwal27@gmail.com.