eswat2 MCP Server

The personal knowledge base for Richard Hess (eswat2), exposed as an MCP server. Covers 40+ years of software engineering history: biography, shipped projects, research explorations, YAML UI specs, gallery screenshots, and archival vault content.

Stack: Python · MCP Python SDK · FastAPI · uvicorn

Live: mcp.eswat2.app — public, read-only, no key · MCP endpoint https://mcp.eswat2.app/mcp · deployed on Vercel · local port 9100

The original eswat2-mcp.vercel.app address still serves the same app, so older links keep working.

MCP Tools

Discovery is layered — start small, drill down:

Namespaces

Namespace Content
profile:// Identity, biography, journeys, resume
projects:// Shipped platforms, tools, and personal projects
research:// PoCs, explorations, and hypothesis-driven experiments
specs:// Reference YAML specs for the YAML-Driven Reactive UI Platform
gallery:// Screenshots of shipped projects and YAML-driven UI components
vault:// Archival historical context: AI winter, Lisp machines, Teknowledge, WINTERP, Taligent
eswat2:// Server-level resources — eswat2://manifest (server info, endpoints, tools)

Rendered HTML

/render?uri={namespace}://{slug} server-renders any KB entry as standalone HTML — no client-side JS required. It's the read path for browsers and for LLM clients that want display-ready markup instead of raw JSON. A handful of high-traffic entries also get curated pretty-URL aliases: /about, /resume, /colophon, /projects.

Every rendered page carries a sidebar nav (namespace groups + all site pages) built as pure HTML/CSS — a checkbox-hack toggle and native <details> elements, zero <script>. The nav brand links to /render?uri=eswat2://manifest, so the manifest is always one click away from any page.

Client Integration

Point clients at the deployed endpoint; nothing needs to run locally. A local server on http://localhost:9100/mcp (started with ./start.sh) is only for previewing unpushed content. Register one or the other, not both, or every tool is listed twice.

Client Transport Config
Claude Code HTTP native claude mcp add eswat2 --transport http https://mcp.eswat2.app/mcp
Claude Desktop stdio via mcp-remote { "command": "npx", "args": ["mcp-remote", "https://mcp.eswat2.app/mcp/"] }
Perplexity / stdio-only stdio via mcp-remote npx mcp-remote https://mcp.eswat2.app/mcp
No MCP support plain HTTP Start at https://mcp.eswat2.app/manifest or /llms.txt, then read entries with /resolve or /render

Write-up

Building a High-Quality Personal MCP Knowledge Base with Multiple Interfaces (June 2026) is the public overview of this project — namespace architecture, the Python stack, and the several interfaces built on one compiled knowledge base. It was drafted by Grok working from the deployed server's own endpoints. It predates the /render HTML layer, the /architecture page, and MCP going live in production, so read it as a snapshot rather than current documentation. See profile://colophon for the up-to-date build notes.