Personal portfolio and CV site for Vassiliy Lakhonin, built for both humans and agents:
- recruiter-friendly profile + case studies,
- machine-readable metadata (
resume.json,capabilities.json,evidence.json), - AI indexing support (
llms.txt, JSON-LD,sitemap.xml), - live MCP endpoint for programmatic profile access,
- authority/entity signal layer (
authority.json) for AI retrieval clarity.
- Site: https://vassiliylakhonin.github.io/
- CV PDF: https://vassiliylakhonin.github.io/Vassiliy-Lakhonin_CV.pdf
- Services: https://vassiliylakhonin.github.io/services.html
- Agent profile: https://vassiliylakhonin.github.io/profile.md
- MCP (SSE): https://vassiliy-lakhonin-mcp-production.up.railway.app/sse
- MCP health: https://vassiliy-lakhonin-mcp-production.up.railway.app/health
Machine-readable:
- Agent discovery entrypoint: https://vassiliylakhonin.github.io/agent-discovery.md
- Agent readiness score: https://vassiliylakhonin.github.io/readiness.json
- Agent card: https://vassiliylakhonin.github.io/agent-card.json
- Resume JSON: https://vassiliylakhonin.github.io/resume.json
- Capabilities: https://vassiliylakhonin.github.io/capabilities.json
- Evidence: https://vassiliylakhonin.github.io/evidence.json
- Availability: https://vassiliylakhonin.github.io/availability.json
- Engagement intake: https://vassiliylakhonin.github.io/engage.json
- Engagement intake v2: https://vassiliylakhonin.github.io/engage.v2.json
- Interview story bank: https://vassiliylakhonin.github.io/stories.json
- Skills: https://vassiliylakhonin.github.io/skills.json
- Verification: https://vassiliylakhonin.github.io/verification.json
- Authority signals: https://vassiliylakhonin.github.io/authority.json
- Freshness snapshot: https://vassiliylakhonin.github.io/freshness.json
- Evals snapshot: https://vassiliylakhonin.github.io/evals.json
- Provenance snapshot: https://vassiliylakhonin.github.io/provenance.json
- Nonprofit Impact Orchestra: Agent-assisted nonprofit grant orchestration with human checkpoints.
- Global Think Tank Analyst: Structured geopolitical and policy analysis in think-tank style.
- Donor reporting quality and delivery reliability: Problem-action-result proof with measurable outcomes.
- Fit scoring template: https://vassiliylakhonin.github.io/fit-score-template.md
- Tracker schema: https://vassiliylakhonin.github.io/tracker-schema.md
- Story bank (Markdown): https://vassiliylakhonin.github.io/stories.md
- Story bank (JSON): https://vassiliylakhonin.github.io/stories.json
- Engagement intake v2: https://vassiliylakhonin.github.io/engage.v2.json
- Dual-surface design: content optimized for both human readers and AI agents.
- Citability-first case studies: each markdown case includes TL;DR, Evidence, Metrics, Context/Constraint blocks.
- Structured trust layer: verification + evidence + authority mapping files.
- Indexing-ready by default:
robots.txt,sitemap.xml,llms.txt, JSON-LD. - MCP integration: profile data available via local and hosted server.
.
āāā index.md
āāā profile.md
āāā services.html
āāā case-study-*.html / case-study-*.md
āāā article-*.html
āāā Vassiliy-Lakhonin_CV.pdf
āāā agent-card.json
āāā resume.json
āāā capabilities.json
āāā evidence.json
āāā availability.json
āāā engage.json
āāā skills.json
āāā verification.json
āāā authority.json
āāā llms.txt
āāā humans.txt
āāā robots.txt
āāā sitemap.xml
āāā schema/templates/*.json
āāā scripts/geo_quick_audit.py
āāā scripts/schema_audit.py
āāā scripts/build_readiness_report.py
āāā mcp/
āāā server.py
āāā requirements.txt
āāā railway.toml
git clone https://github.com/vassiliylakhonin/vassiliylakhonin.github.io.git
cd vassiliylakhonin.github.io
bundle exec jekyll serveIf Ruby/Jekyll is not set up, edit markdown/html/json directly and push to main.
python3.13 -m pip install -r mcp/requirements.txt
python3.13 mcp/server.pyHost allowlist for SSE/HTTP transport security:
export MCP_ALLOWED_HOSTS='vassiliy-lakhonin-mcp-production.up.railway.app,127.0.0.1:*,localhost:*'If MCP_ALLOWED_HOSTS is not set, the server uses the same safe defaults above. This prevents Invalid Host header errors behind Railway while keeping DNS rebinding protection enabled.
Expected tools include: get_profile, get_resume, get_availability, get_capabilities, get_evidence, get_engage, get_agent_card, get_verification, get_skills, get_case_study, list_resources, search_profile.
- Internal link checks run on push/PR:
.github/workflows/link-check.yml - IndexNow submission on push:
.github/workflows/indexing-push.yml - GEO baseline audit (weekly + key-file changes):
.github/workflows/geo-audit.yml - Schema coverage audit (weekly + content changes):
.github/workflows/schema-audit.yml - Agent observability snapshot (weekly + key changes):
.github/workflows/agent-observability.yml - Optional Google Search Console submission via repository secrets
Quick checks locally:
python3 scripts/geo_quick_audit.py
python3 scripts/schema_audit.py
python3 scripts/build_readiness_report.py
python3 scripts/build_freshness_report.py
python3 scripts/build_evals_report.py
python3 scripts/build_provenance_report.pySee scoring rubric: docs/GEO_BASELINE.md
MIT
