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
-
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

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