Skip to main content
Glama
Awzy11

gutenberg-mcp

by Awzy11

gutenberg-mcp

An MCP server that gives an LLM direct search and read access to Project Gutenberg's catalog of 75,000+ free public-domain books.

Tools

Tool

Purpose

search_books(query, author)

Search the catalog by title and/or author

search_books_by_subject(subject)

Search by subject/topic

get_book_info(book_id)

Metadata + approximate word count for a book

get_book_text(book_id, start_word, word_count)

Fetch a word-range slice of a book's plain text

get_book_text is paginated by word count (default 3,000 words, ~10-12 pages) rather than returning entire books at once, so an LLM can pull exactly the section it needs without blowing its context window.

Related MCP server: Directmedia MCP

Why this exists (and not the gutendex API)

Most Gutenberg MCP servers wrap the third-party gutendex.com API. As of mid-2026 that service sits behind a Cloudflare JS challenge that a plain HTTP client can't solve — every request gets a 403, regardless of headers or user-agent. Several existing "Gutenberg MCP" repos on GitHub are broken for this same reason.

This server goes straight to Project Gutenberg instead:

  • Search is built from Gutenberg's own sanctioned bulk catalog feed (gutenberg.org/cache/epub/feeds/pg_catalog.csv) — the same data Gutendex itself is built from. Gutenberg's robots.txt explicitly disallows crawling /ebooks/search, so this server doesn't scrape that page; the bulk feed is the sanctioned way to get catalog data for search.

  • Book text is fetched directly from Gutenberg's own plaintext mirrors (gutenberg.org/cache/epub/{id}/pg{id}.txt), which robots.txt does allow.

The catalog CSV (~21MB) is fetched once per server process and cached in memory — not re-downloaded per call.

Running it

docker build -t gutenberg-mcp-server .

Add to your MCP client config (e.g. Claude Desktop / Claude Code):

{
  "mcpServers": {
    "gutenberg": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "gutenberg-mcp-server"]
    }
  }
}

License

MIT

A
license - permissive license
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to help users manage their reading experience by searching books, tracking reading progress, managing bookmarks, and generating personalized recommendations and summaries.
  • A
    license
    Not graded
    quality
    B
    maintenance
    Provides programmatic access to the Directmedia Publishing 'Digitale Bibliothek' collection, a 1990s German electronic book library containing 101 volumes of classic literature and philosophy with text extraction, search, and navigation capabilities.
    MIT

View all related MCP servers

Related MCP Connectors

  • Search books and authors, fetch editions, browse subjects, and resolve cover images.

  • MCP server for Project Gutenberg — 75,000+ public-domain ebooks with full plain-text retrieval.

  • Federated search of books and papers, BibTeX/RIS citations, open-access retrieval and reading.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Awzy11/gutenberg-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server