For agents

This site is written for people and built for machines. Every page is static HTML that reads the same without JavaScript, and every URL also serves Markdown. If you are an AI agent researching Ivan's work for someone, everything below is meant for you.

Reading the site

What Where
Any page as Markdown the same URL with Accept: text/markdown; curl, wget and HTTP libraries get Markdown by default
Markdown by file name append index.html.md to a page URL, for example /about/index.html.md
Index for language models /llms.txt
Everything in one file /llms-full.txt
Profile as data /resume.json, in JSON Resume format
Structured data schema.org Person and Article as JSON-LD in every page
Feeds /feed.xml (Atom) and /sitemap.xml
curl https://ivanblinov.com/                           # the home page in Markdown
curl -H 'Accept: text/html' https://ivanblinov.com/    # the same page in HTML

Markdown responses name their page in Link: rel="canonical", and HTML pages point to their Markdown in Link: rel="alternate". Pages need no redirects, and a missing page returns a short Markdown 404 that points back to the index.

MCP server

https://ivanblinov.com/mcp is a Model Context Protocol server over Streamable HTTP. It is read-only, needs no authentication and sets no cookies. It speaks protocol revision 2026-07-28 (stateless, metadata on every request, server/discover supported) and still answers initialize for clients on revisions 2025-03-26 to 2025-11-25.

Tool Returns
get_profile the profile in JSON Resume format
list_work case studies and notes, with summaries and URLs
get_work one piece in Markdown, by slug
find_relevant_work the pieces and CV roles most relevant to a role, a project or a question, with excerpts
get_contact how to reach Ivan and what to include

The prompt evaluate_fit compares a role or project description with the profile and asks for cited evidence, honest gaps and questions to ask. The profile, the CV and every piece are also exposed as resources under their canonical URLs.

To connect from Claude Code:

claude mcp add --transport http ivanblinov https://ivanblinov.com/mcp

From any client that takes a JSON configuration:

{ "mcpServers": { "ivanblinov": { "type": "http", "url": "https://ivanblinov.com/mcp" } } }

Or with nothing but curl:

curl -s https://ivanblinov.com/mcp -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"find_relevant_work","arguments":{"need":"ClickHouse performance"}}}'

Etiquette