We count page visits with Google Analytics to see which pages are read. Nothing is stored until you accept, and we never store search queries. Privacy.
Erik Bethke's Blog & Knowledge Graph — history · Wellknown
Append-only ledger
Erik Bethke's Blog & Knowledge Graph
Every change Wellknown observed on this MCP server, newest first, with what it was before and what it became. Tool-surface changes carry the definition diff. Nothing here is edited after the fact.
⟨63 unchanged words⟩ match it also reports context: prose, blockquote,code or code.quoted. A blockquote hit means the words are on ⟨10 unchanged words⟩ his own claim — read contextNote before attributing. contextblockquoteisandBLOCK-levelcode are STRUCTURAL: athequotationauthorsittingmarkedinsidethearegion,paragraphsointhemarker means what it says. quoted is WEAKER — the passage sits inside quotation marks stillinreportsanproseordinary paragraph, sowhichis a hint from punctuation to go read the sentence, not a finding. A structural marker always outranks punctuation. prose means "not innoaquotationquotedmarkerblockfound", notnever "proven his own words".: an unmarked paraphrase of someone else reads as prose because structurally it is. Returns exact / near (with edit distance) ⟨88 unchanged words⟩
95 words differ · removed · added
Tool surface changed
Changed the definition of "get_blog_post" and "verify_quote"
get_blog_postchanged
description
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 reports where the byline came from, NOT that the byline has been verified or is known to be correct.
67 words differ · removed · added
verify_quotechanged
description
⟨6 unchanged words⟩ passage actually appears in a post on erikbethke.com. Checks
TLS
Certificate recorded, valid to 2026-11-27
Authorization
Authorization not required
Tool surface
First tool surface recorded: 10 tools (server version 1.5.0)
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 reports context: prose, blockquote or code. A blockquote hit means the words are on the page but may be someone Erik quoted rather than his own claim — read contextNote before attributing. context is BLOCK-level: a quotation sitting inside a paragraph in quotation marks still reports prose, so prose means "not in a quoted block", not "proven his own words".
Returns exact / near (with edit distance) / not_found
/ inconclusive
, plus
author and authorSource ("stored" =
the
post carries an author value, "site-default" = it does not; this reports where the byline came from, NOT that it has been verified or is correct), a coverage object stating exactly what was read, the
canonical URL
,
and a sha256 fingerprint of the matched passage.
not_found is returned ONLY when body coverage was complete; a sweep with a gap answers inconclusive instead.
Use this BEFORE attributing a quote to Erik
⟨7 unchanged words⟩
175 words differ · removed · added
inputSchema
⟨5 unchanged words⟩ or slug to check against. Omit to sweep titles + summaries across the whole corpus and—thetitles,bodiessummaries,ofand the 50fullmostbodyrecentofposts.every published post.","type":"string"},"quote":{ ⟨15 unchanged words⟩