Build1 distinct publisher2 min readUpdated
A 1,180-record knowledge base serves crawlers and agents from the same 0.39-second build. The MCP endpoint imports what the build wrote, because two derivations of one join eventually disagree.
The Engineer · Build desk
Compiled by The EngineerSomething wrong?How this is made
Pre-joining costs bytes, and the invoice is legible. The index the agent reads is roughly 1.4 times the size of the 1,312,577 bytes of hand-edited JSON it comes from [5][1], which is the reverse of what an API layer would have shipped. It is also only about 11 percent of the 16,644,215 bytes the build writes in total [6][2]. The deployed endpoint is mostly freight: 21,508 bytes of hand-written JSON-RPC over POST, no MCP SDK [11], carrying something like 88 times its own weight in data it did not compute [7].
The reason for the freight sits in api/mcp.mjs, whose first line of real work destructures the imported index instead of deriving anything [10]. Put an API in front of the data and that file has to know how a name becomes a slug, which parents count as ancestors, and which adoption edges are shown, all of which the page renderer already knows [9]. Slugs, lineage and adoption edges are joined in exactly one place, so the crawler and the model cannot disagree [4].
The two indexes are sized by different tolerances. A crawler collects context by walking links: the build reports 96,843 internal links across 1,245 pages [7], about 78 per page [4], and there are 65 more pages than there are entities [3]. The human clicking through is the retrieval system [14]. An agent has no comparable budget. A stub answer buys either a guess or four more tool calls [15], so the record ships the credited origin game and its developer, the prose essay, parents, children, everything downstream and the later adopters, already joined [16].
The overview tool spends its description on definitions rather than schema: origin means the first notable shipped implementation rather than invention, which is why over-the-shoulder aim is credited to kill.switch in 2003 and not Resident Evil 4 in 2005 [18]. The same tool states that 949 of 1,180 entities carry a verified Wikipedia permalink and 231 carry none [19], roughly a fifth of the base with no citation to offer [5].
What reading an artifact actually costs is freshness, and the build time keeps that small: under half a second with zero npm dependencies [1], timed at 0.40s and 0.39s on repeat runs [20], and a deleted output directory comes back inside the same window [8]. Because mcp-index.json is committed rather than ignored, a claimed rebuild is checkable in a diff [20]. The residual risk is narrower than staleness in general. It is a deploy in which the pages and the index came out of different runs, and one join point does not close that seam on its own.
Follow any of these and your For You feed starts watching them — no settings page required.
Ranked by verification strength, evidence, and original report placement.
The Genome of Games publishes the same 1,180 records four ways from one command, node build.js, in 0.39 seconds with zero npm dependencies.
The build outputs 1,245 static HTML pages for crawlers, an interactive canvas graph for humans, a 129,037-byte search index for the site's search box, and a Model Context Protocol server exposing 8 tools to agents.
There is exactly one place where slugs, lineage and adoption edges get joined, so an agent and a crawler cannot come back with different answers.
The build turns the source files into 16,644,215 bytes of generated read surface, a 12.7x expansion, all of it disposable.
The build also emits sitemap.xml with 1,245 entries, llms.txt, robots.txt and a 404 page, and the same run reports 96,843 internal links across those pages.
Deleting the whole output directory means the next build restores it in under half a second.
Evidence-backed comparisons of source perspectives and observed adoption signals. Read the methodology
Which Builder, Operator, and Investor concerns the observed source mix emphasized—not a truth score.
Evidence, demonstrated adoption, hype gap, incentives, and confidence are assessed independently, each on its own current evidence. How these are measured.
Specific and self-verifiable, but single-author and unaudited
The architectural claims come with unusually concrete artifacts: exact byte counts for source and generated surfaces, per-entity index budgets, a named committed index with a stated md5, a reproducible build timing, and a curl command against a live endpoint that any reader can re-run. That makes most factual claims checkable in principle. Against that, every figure is self-reported by the project's own author in a single post, nothing was independently rebuilt or measured, and the two load-bearing design arguments (API layers rot; agents tolerate roughly one round trip) rest on reasoning rather than measurement. The author's own README discrepancy shows at least one reported number in the project's documentation was already stale.
One personal deployment, no third-party uptake evidenced
Supplied sources show exactly one instance of the pattern in production: the author's own 1,180-record project deployed on Vercel with a public MCP endpoint and a committed, reproducible index. There is no evidence of any agent, MCP client, organisation, or other developer consuming that endpoint or reusing the build-artifact pattern, no traffic or usage disclosure, and no second implementation to compare. Adoption is therefore real but singular and self-contained.
Mildly overstated generality, unusually candid on specifics
The reported numbers are conservative and self-checkable, and the author volunteers the architecture's limits, including that single-source-of-truth holds only inside the build step and that the README already understates internal links by 8.4 percent. The overreach is in scope rather than detail: a single 1,180-record project is presented as a decision 'worth copying' anywhere a knowledge base serves both a search engine and a model, and the round-trip sizing rule is generalised to all agents without any agent-side measurement. The 'second bill' of statically importing 1.9 MB into a serverless function is raised and then left unquantified in the supplied text, so the cost side of the trade is thinner than the benefit side.
Self-published author promoting own project; no commercial ties disclosed
The piece is a first-person post about the author's own project, republished from their personal site onto a developer platform, which creates a straightforward reputational and portfolio incentive to present the architecture favourably. Offsetting this, no vendor sponsorship, funding, product sale, or paid relationship is disclosed or implied, the only named third-party platform is the host it deploys to, and the author discloses a defect in their own documentation and an unresolved cost. Incentive pressure is real but low-stakes and visible.
Internally consistent single source, no external corroboration
Confidence is limited by structure rather than sloppiness: one publisher, one author, one project, and no independent verification of any figure. Within those limits the account is internally consistent, quantitatively specific, reproducible by a reader via curl and rebuild, and candid about its own gaps. Factual claims about what the build emits and what the server exposes can be held with reasonable confidence; the generalised design rules and the durability of the 'one join' guarantee at larger scale cannot.
build
Rate limit your MCP servers, because a retrying agent turns one error into a billing incident1 distinct publisher
build
The MCP transport your search results teach has been deprecated since March1 distinct publisher
build
The MCP test that matters: a log tool that fetched the data and then said it failed1 distinct publisher
build
MCP is a discovery layer, and your exposure list is a governance decision1 distinct publisher
Distinct publishers with included, body-backed reporting in this cluster.
dev.to
1 article · August 23, 2026