Skip to main content
Glama
slaufer

library-of-babel-mcp

by slaufer

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
LOB_API_KEYNoLeave empty for provisional guest access, until you have located the volume containing your API key.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_pageA

Retrieve the exact text on a page at a given address in the Library of Babel. Every address always returns the same content (the library never changes). Coordinates: hexagon (base-36 string id), wall (1-4), shelf (1-5), volume (1-32), page (1-410). Almost every address is gibberish — meaningful pages are found via search_text, not by browsing.

search_textA

Find the address of a page containing the given text (up to 3200 characters). The Library of Babel already contains every possible page, so 'search' doesn't scan anything: it constructs the exact page you asked for and inverts the address mapping to learn where that page sits. The returned address is a genuine location — get_page on it returns your text. Padding and offset are part of the page, so changing either yields a different address. Text is lowercased and restricted to the library's 29-symbol alphabet (a-z, comma, space, period); unsupported characters are dropped or converted to spaces.

lookup_pageA

Given a complete 3200-character page, return the address it lives at. This is the exact inverse of get_page: the text must be exactly 3200 characters drawn from the library's alphabet (a-z, comma, space, period). For partial text, use search_text instead.

random_pageA

Jump to a uniformly random address in the Library of Babel and return its content. Almost always gibberish — that's the point.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.7/5.0

Scored across 4 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: get_page retrieves content by address, random_page fetches a random page, search_text finds an address for arbitrary text, and lookup_page is the exact inverse of get_page. There is no overlap or ambiguity between them.

Naming Consistency5/5

All tool names follow the same snake_case pattern with two words, and the naming clearly reflects their function (get_page, random_page, search_text, lookup_page). The format is consistent and predictable.

Tool Count5/5

With 4 tools, the server is well-scoped for the Library of Babel concept. Each tool earns its place, covering the essential operations without unnecessary bloat or missing functionality.

Completeness5/5

The tool set provides complete coverage for the domain: retrieving pages, exploring randomly, searching for text, and mapping pages back to addresses. There are no obvious gaps or dead ends for the intended use case.

Maintenance

ActivitySlowing
ResponsivenessNo issues