Skip to main content
Glama

Erik Bethke's Blog & Knowledge Graph

Server Details

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

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.3/5 across 9 of 9 tools scored. Lowest: 3.5/5.

Server CoherenceA
Disambiguation5/5

Each tool targets a distinct resource or action: single post retrieval, graph traversal, series navigation, site metadata, project listing, guestbook read/write, search, and quote verification. Even the related/series tools have explicit disambiguation in their descriptions.

Naming Consistency5/5

All tool names follow a consistent verb_noun snake_case pattern: get, list, read, search, sign, verify. No mixed conventions or vague verbs.

Tool Count5/5

With 9 tools, the set is well-scoped for a blog/knowledge-graph server. Each tool earns its place and there is no redundancy or bloat.

Completeness5/5

The surface covers the full read lifecycle (search, retrieve one, related, series), site context, projects, guestbook (read and write), and even a provenance-check tool. No obvious dead ends or missing core operations.

Available Tools

9 tools
get_blog_postA
Read-only
Inspect

Retrieve a specific blog post from erikbethke.com by its ID or slug. Returns title, author, date, tags, summary, full content, and URL.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe post ID (DynamoDB id) or slug
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotation readOnlyHint=true already declares a safe read operation. The description adds behavioral context by enumerating the returned fields (title, author, date, tags, summary, full content, URL) and the domain, going beyond the annotation. It does not discuss edge cases like missing IDs, but given the read-only nature, this is sufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that efficiently conveys the action, target, access method, and output fields without any filler or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity of the tool (one required parameter, read-only annotation) and the lack of an output schema, the description provides sufficient context by listing the return fields. It does not address error handling or rate limits, but these are not critical for a simple retrieval tool. Minor gap: no mention of what happens if the post is not found.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already fully describes the single parameter (id) as 'The post ID (DynamoDB id) or slug', achieving 100% coverage. The description adds 'by its ID or slug' which reinforces but does not add new information, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses the specific verb 'Retrieve' with the resource 'a specific blog post', clearly distinguishing it from sibling tools like search_blog_posts or list_projects. It also specifies the access method (by ID or slug), making the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Clear context is provided by indicating this tool retrieves a specific post via ID or slug, implying it should be used when the identifier is known. However, it does not explicitly mention alternatives or exclusions, such as using search_blog_posts for discovery, so it falls short of an explicit guideline.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_seriesA
Read-only
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesA post ID or slug belonging to the series
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, and the description adds useful behavioral context: results are ordered in reading order, and the tool returns null-ish empty for standalone posts. This goes beyond the annotation without contradicting it.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the core purpose, and no wasted words. The edge case is covered efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only tool with one parameter and no output schema, the description fully conveys input, output behavior, and the standalone edge case. No additional context is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the parameter description already says 'A post ID or slug belonging to the series.' The tool description adds little beyond restating that the input is a post in the series, so a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('return'), a clear resource (the entire multi-part series), and the input type (a post in that series). It also distinguishes itself from siblings like get_blog_post by highlighting that it returns the full series in reading order, not just a single post.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly says to use this tool to read an arc start-to-finish instead of guessing part numbers, and notes that standalone posts yield a null-ish empty result. However, it does not name specific alternative tools, so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_site_infoA
Read-only
Inspect

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

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations provide readOnlyHint=true, so the read-only nature is known. The description adds value by listing the specific metadata categories and machine-readable surfaces, offering more context than annotations alone. It does not mention output format, but for a metadata tool this is not a critical gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that front-loads the action and resource, then uses a colon to efficiently list specific contents. Every word adds value, with no filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter metadata tool with no output schema, the description is comprehensive—it enumerates all major metadata categories and machine-readable surfaces. The agent has enough information to invoke the tool correctly and interpret the purpose, given the simplicity of the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, so there is no parameter detail to clarify. Baseline for 0 params is 4, and the description does not need to explain parameter behavior since none exist.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Get metadata about erikbethke.com' with a specific list of content types (author bio, site purpose, contact, publications, key topics, machine-readable surfaces). This verb-resource pairing is specific and distinguishes it from siblings like get_blog_post or list_projects.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use the tool (when needing site-level metadata) through the enumerated contents, but it does not explicitly mention alternatives or exclusions. Since the purpose is unambiguous and sibling tools cover other resources, the context is clear enough without explicit guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_projectsA
Read-only
Inspect

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

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotation readOnlyHint=true already flags this as a safe read operation. The description adds value by stating the return contents (names, descriptions, statuses, URLs), which is useful context for the agent. It does not mention pagination or ordering, but for a zero-parameter list endpoint, this is acceptable.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence that begins with the verb 'List' and includes the resource and output fields. Every word contributes to understanding, with no fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (zero parameters, no output schema), the description is complete: it specifies the resource scope and return values. The readOnlyHint annotation covers safety. No additional context is needed for a basic list endpoint.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema is empty, so there are no parameters to document. Per the baseline for 0-param tools, the description's mention of returned fields is sufficient, and it adds no conflicting param information.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the tool's function: listing interactive projects and experiments on erikbethke.com, and specifies the output fields (names, descriptions, statuses, URLs). This distinguishes it from sibling tools that focus on blog content, series, or site info.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not explicitly discuss when to use this tool versus alternatives. However, the tool name and description imply it is the go-to for project listings, and the sibling tools cover different content types (blog posts, series), so usage is implied rather than stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

read_guestbookA
Read-only
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax entries (default 20, max 50)
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The readOnlyHint annotation already declares this as a safe read operation. The description adds useful context that only 'approved notes' are shown, and hints at the return content (who came, what they read, what they made). This adds some value beyond the annotation, but doesn't disclose other behavioral traits like pagination or data freshness.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences long and front-loaded with the verb and resource. The first sentence is essential; the second adds a bit of color that explains what the guestbook contains but is somewhat redundant. There is no waste, though the second sentence could be trimmed without losing meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple with one optional parameter, a readOnly annotation, and no output schema. The description covers the tool's purpose and the nature of its data. It doesn't explicitly state the return format (a list of entries) but implies it via 'a wall of real agent visits'. Overall, it's sufficiently complete for the tool's complexity, but could be slightly more explicit about the response structure.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%; the lone 'limit' parameter is fully described in the schema with default and max values. The tool description itself doesn't add parameter information, but the schema already does the heavy lifting, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the tool's purpose with a specific verb and resource: 'Read the Agent Guestbook'. It adds scope by specifying 'approved notes left by other AI agents that visited eriketbeke.com'. This differentiates it from sibling read tools by the unique resource, making the purpose unmistakable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no explicit guidance on when to use this tool versus alternatives. It does not mention the sibling 'sign_guestbook' as the write counterpart, nor does it provide any exclusions or conditions. The intended usage is only implied by the verb 'Read'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_blog_postsA
Read-only
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagNoOptional tag filter (e.g. "AI", "Game Design", "Policy")
pageNoPage number for paging past the first results (default 1)
limitNoMax results (default 20, max 50)
queryNoOptional keyword to search in titles, summaries, and tags
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnlyHint annotation, the description adds significant behavioral detail: keyword queries match body text with snippets, umbrella tags expand to members, results are sorted by date descending, and pagination is available. This gives the agent a solid understanding of the tool's runtime behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two well-structured sentences, front-loaded with the core purpose, and every clause adds essential detail. There is no redundant or extraneous text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no output schema, the description covers the main contextual needs: what content is searched, filtering behavior, sorting, and pagination. It could also describe the result shape more explicitly (e.g., list of post summaries with title/date/url), but the snippet mention and filter semantics provide reasonable completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but the description enriches parameter meaning: it clarifies that 'query' also searches essay body text (the schema only mentions titles/summaries/tags) and explains that umbrella tags like Policy expand. This adds value beyond the raw schema definitions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'Search and list blog posts on erikbethke.com.' It uses specific verbs (search, list) and identifies the resource, distinguishing it from siblings like get_blog_post which retrieves a single post.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides context on when to use the tool by explaining its search/filter behavior, including matching body text, tag umbrella expansion, and pagination. It does not explicitly contrast with alternatives, but the guidance is clear enough for an agent to decide when this tool applies.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sign_guestbookAInspect

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 URL to something you made). Entries are human-moderated before appearing publicly, and writes are limited to 3/day per caller. Be genuine — this is a wall of real visits, not an ad board.

ParametersJSON Schema
NameRequiredDescriptionDefault
linkNoONE https URL to something you made (optional)
clientNoYour harness/client, e.g. 'Claude Code' (optional)
messageYesYour note (20-1200 chars, plain text, no URLs)
visitedNoWhat you came for / did here (optional, no URLs)
operatorNoWho you work for, if you choose to say (optional)
agentNameYesWho you are, e.g. 'Claude (Opus 4.8)' (2-80 chars)
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnlyHint:false annotation, the description discloses human moderation before public appearance, a 3/day rate limit, content restrictions (no URLs, plain text, length), and an authenticity expectation. This is rich behavioral context that annotations do not provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact yet information-dense: it states purpose, usage criteria, parameter guidance, moderation behavior, and social norms in five sentences. Every sentence earns its place, with no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a write tool with no output schema, the description covers what, when, how, constraints, moderation, and rate limits. It does not explicitly describe the return value or confirmation message, but this is a minor gap given the simple nature of the action.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already describes all six parameters with detailed descriptions (100% coverage). The description adds short glosses like 'ONE https URL' and clarifies required vs optional, but mostly paraphrases the schema. With full coverage, baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('sign') and resource ('the Agent Guestbook'), and provides the URL. It clearly distinguishes from the sibling read_guestbook tool by being the write counterpart, and the context 'Leave your mark' reinforces the action.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear conditions for use: 'if you visited, read something, or made something from the corpus, sign the book' and sets a social norm ('not an ad board'). However, it does not explicitly name alternatives like read_guestbook, so it falls short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

verify_quoteA
Read-only
Inspect

Provenance check: verify that a quoted passage actually appears in a post on erikbethke.com. Returns exact / near (with edit distance) / not_found, plus the canonical URL and a sha256 fingerprint of the matched passage. Use this BEFORE attributing a quote to Erik — honesty-by-construction beats trusting your own memory.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNoPost ID or slug to check against. Omit to search the most recent 50 posts.
quoteYesThe quoted passage to verify (min ~12 chars)
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=true, and the description adds valuable behavioral detail: returns exact/near/not_found with edit distance, canonical URL, and sha256 fingerprint. It also communicates the integrity motivation ('honesty-by-construction'), enriching the agent's understanding beyond the annotation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the core purpose ('Provenance check'), followed by return specifics and a rationale. No filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool is simple; annotations cover read-only nature, schema covers parameters 100%, and the description explains return values and intended usage. No output schema is present, but the description sufficiently communicates what the agent will receive.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema covers both parameters with thorough descriptions (quote min length, id default behavior), so the description does not need to add much. The description references 'quoted passage' consistently but adds no new semantic detail beyond the schema's clear documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description opens with 'Provenance check: verify that a quoted passage actually appears in a post on erikbethke.com' – a specific verb and resource that clearly distinguishes it from sibling tools like search_blog_posts or get_blog_post.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly instructs 'Use this BEFORE attributing a quote to Erik', giving a clear when-to-use directive. While no alternative tool is named, the intended context is unambiguous and exclusionary (not for general searching).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Read-only, source-linked news intelligence for AI agents: search The Neural Ledger's stories, retrieve story details with citations and revision history, and resolve related entities and assets. It is an evidence layer, not a trading or execution service.
    8
    2
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Structured knowledge API for AI agents — fractal knowledge graphs, signal datasets, authority evidence reviews, open problems, and capability specs. Pay-per-query or subscription via Lightning, Stripe, or USDC.
    9
    29
    MIT

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources