Gutendex

liveBooksReference

Search and browse Project Gutenberg books via the Gutendex API

4tools
0msauth
free tier50 calls/day

Tools

gutendex_search_books

Search for books by title or author name. Returns book IDs, titles, authors, and download counts.

No parameters required.

▶Try it
gutendex_get_book

Get full details for a book by ID. Returns title, author, publication year, language, available formats, and download count.

No parameters required.

▶Try it
books_by_topicrequired: topic

Browse books by subject or topic (e.g., 'science fiction', 'philosophy'). Returns matching titles, authors, and IDs.

Parameters
NameTypeDescription
topicreqstringTopic or subject keyword to filter books by (e.g. "science", "love", "history").
▶Try it

Test with curl

The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.

List available tools
bash
curl -X POST https://gateway.pipeworx.io/gutendex/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Call a tool
bash
curl -X POST https://gateway.pipeworx.io/gutendex/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"gutendex_search_books","arguments":{}}}'

Use with the SDK

Install @pipeworx/sdk to call tools from any TypeScript/Node project.

TypeScript
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("gutendex_search_books", {});
ask_pipeworx
// Or ask in plain English:
const answer = await px.ask("search and browse project gutenberg books via the gutendex api");