MCP server for Project Gutenberg β 75,000+ public-domain ebooks with full plain-text retrieval.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag β we're steadily working through the catalog.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Search, browse, and read 75,000+ public-domain books from Project Gutenberg with full plain-text retrieval and offset/limit chunking via MCP. STDIO or Streamable HTTP.
Public Hosted Server: https://gutenberg.caseyjhand.com/mcp
Four tools for searching and reading Project Gutenberg's public-domain library:
| Tool | Description |
|---|---|
gutenberg_search_books | Search the Gutenberg catalog by title, author, topic, language, or author lifespan β returns popularity-ordered results with IDs ready for follow-up calls |
gutenberg_get_book | Fetch complete metadata for a book by ID β full formats map, translators, editors, subjects, bookshelves, copyright status, and the has_plain_text flag |
gutenberg_get_text | Retrieve the plain-text content of a book, stripped of license boilerplate, with offset/limit chunking for context-budget management |
gutenberg_browse_popular | Browse the most-downloaded books, optionally filtered by language or topic β useful as a discovery entry point |
gutenberg_search_booksSearch the Project Gutenberg catalog of 78,000+ public-domain books.
["en"], ["fr", "de"])author_year_start / author_year_endids parametertotalCount to determine total pageshas_plain_text to indicate whether gutenberg_get_text will workgutenberg_get_bookFetch complete metadata for a single Project Gutenberg book.
has_plain_text flag confirms whether a UTF-8 plain-text format is availablemedia_type distinguishes readable text books from audio recordingsgutenberg_get_text to confirm text availability and inspect the formats mapgutenberg_get_textRetrieve the plain-text content of a Project Gutenberg book, stripped of license boilerplate.
totalChars, offset, length, and remainingChars for precise paginationlimit β use length (not limit) to compute the next offsetmedia_type "Sound") with a clear recovery hintprovenance field carries the Gutenberg ID, title, and license URL for attributiongutenberg_browse_popularBrowse the most-downloaded Project Gutenberg books.
totalInCatalog provides full context β "top 20 of 60,000"Built on @cyanheads/mcp-ts-core:
none, jwt, oauthin-memory, filesystem, Supabase, Cloudflare KV/R2/D1Project Gutenberg integration:
Agent-friendly output:
has_plain_text flag on every search/browse result so agents can pre-filter before attempting text retrievaloffset, length, totalChars, remainingChars, hasMore on every gutenberg_get_text response for reliable sequential readsprovenance field on every text response for attributionsourceFormat field (text/plain; charset=utf-8, text/html) so agents know the fidelity of the textA public instance is available at https://gutenberg.caseyjhand.com/mcp β no installation required. Point any MCP client at it via Streamable HTTP:
No API key required. Add the following to your MCP client configuration file:
Or with npx (no Bun required):
Or with Docker:
For Streamable HTTP, set the transport and start the server:
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/gutenberg-mcp-server)<a href="https://allmcps.com/mcp/gutenberg-mcp-server"><img src="https://allmcps.com/api/badge/gutenberg-mcp-server?style=directory" alt="Gutenberg MCP Server on AllMCPs" /></a>