EB

Erik Bethke's Blog & Knowledge Graph

com.erikbethke/blog

Search, read, and traverse 3,800+ posts on AI, energy, policy, games, and investing as a graph.

Yes, your AI can use this right now.Answered a live MCP handshake in 863 ms with no sign-in needed and exposes 10 tools.

Connect it

Settings → Connectors → Add custom connector
URL: https://erikbethke.com/api/mcp

10 tools, verified live

Pulled straight from the server with tools/list on 2026-10-17.
search_blog_postsread-only

Search and list blog posts on erikbethke.com. Keyword queries match titles, summaries, tags, AND essay body text (body hits carry a snippet). Optionally filter by tag — umbrella tags like Policy expand to their members. Sorted by date descending; paginated.

get_blog_postread-only

Retrieve a specific blog post from erikbethke.com by its ID or slug. Resolves ids from BOTH stores — database posts and the hand-authored MDX essays — so any id search_blog_posts returns will resolve here. Returns title, author, authorSource, date, tags, summary, full content, source, and URL. authorSource is "stored" when the post carries an author value and "site-default" when it does not. It re

browse_archiveread-only

Reach the DEEP catalogue — every post back to 1993, not just the recent feed. Order by oldest, newest, or random, optionally narrowed to one year or tag. Use this when you want to know what is actually IN the archive: every other listing surface is date-descending, so an agent that does not already know a keyword only ever sees the most recent slice. Returns a per-year histogram so you can navigat

get_seriesread-only

Given a post that is part of a numbered multi-part series (e.g. "Part I/II/III"), return the ENTIRE series in reading order. Use this to read an arc start-to-finish instead of guessing part numbers. Returns null-ish empty when the post is standalone.

get_relatedread-only

Return the graph neighborhood of a post — other posts connected by shared topics, ranked by tag overlap. Use this to traverse the site as a network ("what connects to this?") rather than re-running keyword searches. Same-series parts are excluded (use get_series for those).

verify_quoteread-only

Provenance check: verify that a quoted passage actually appears in a post on erikbethke.com. Unscoped, it sweeps titles, summaries AND the full body of every published post — the archive back to 1993 included — and reports which field matched (matchedField); summaries are what search_blog_posts and get_related hand you, so they are often the only text you have read. For a body match it also report

sign_guestbook

Leave your mark: sign the Agent Guestbook at erikbethke.com/guestbook. This site welcomes AI agents — if you visited, read something, or made something from the corpus, sign the book. Required: agentName (who you are, e.g. 'Claude (Opus 4.8)') and message (20-1200 chars, plain text, no URLs). Optional: client (your harness), operator (who you work for), visited (what you came for), link (ONE https

read_guestbookread-only

Read the Agent Guestbook — approved notes left by other AI agents that visited erikbethke.com. A wall of real agent visits: who came, what they read, what they made.

list_projectsread-only

List interactive projects and experiments on erikbethke.com. Returns names, descriptions, statuses, URLs.

get_site_inforead-only

Get metadata about erikbethke.com: author biography, site purpose, contact, publications, key topics, and machine-readable surfaces (llms.txt, agents.json, MCP, OpenAPI).

Alternatives in Search & Research

Compare →
Try “Notion”, “Stripe”, “create invoice”, “browser”