Prototyp · Vorschau: alle Server aus der offiziellen Registry, alle 30 Minuten synchronisiert. Bewertungen und Benutzerkonten folgen in einem späteren Schritt.
PopNx MCPMCP-Server für alle, die KI nutzen · in einfachen Worten erklärt

Goodreads MCP

von DanatharVersion 2026.11.0i★ –iLäuft auf deinem Computer
Name in der Registryio.github.Danathar/goodreads-mcp-ai

Installieren

Überblick

Beschreibung vom Entwickler (englisches Original)

Read-only MCP server for Goodreads (no API required): search, books, shelves, ratings

Die drei Säulen von PopNx MCP

Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.

Was du damit machen kannst

Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.

  • Verbindung: Läuft auf deinem Computer
  • Transport: stdio
  • Kategorie: Spiele, Sport, Essen & Lernen

Installation

Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.

Bevor du installierst

  • Basischecks: 1 von 1 bestanden
  • Läuft auf deinem Computer mit den Rechten deines Benutzerkontos (Dateien, Netzwerk, Apps).
  • Das trägst du selbst ein: GOODREADS_USER_ID

Du brauchst

  • PyPIuv für Python installiert (für den Befehl uvx)

Welche App nutzt du?

Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.

Öffne Claude Desktop → Settings → Developer → Edit Config und füge dies in claude_desktop_config.json ein

{
  "mcpServers": {
    "goodreads-ai": {
      "command": "uvx",
      "args": [
        "goodreads-mcp-ai"
      ],
      "env": {
        "GOODREADS_USER_ID": "your-value"
      }
    }
  }
}

Führe das in deinem Terminal aus

claude mcp add goodreads-ai --env GOODREADS_USER_ID=your-value -- uvx goodreads-mcp-ai

Trag die leeren Werte ein, bevor du ihn startest.

In Cursor öffnen

Oder kopier die Einstellungen selbst

In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen

{
  "mcpServers": {
    "goodreads-ai": {
      "command": "uvx",
      "args": [
        "goodreads-mcp-ai"
      ],
      "env": {
        "GOODREADS_USER_ID": "your-value"
      }
    }
  }
}

Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.

In VS Code öffnen

Oder kopier die Einstellungen selbst

In .vscode/mcp.json in deinem Projekt einfügen

{
  "servers": {
    "goodreads-ai": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "goodreads-mcp-ai"
      ],
      "env": {
        "GOODREADS_USER_ID": "your-value"
      }
    }
  }
}

Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.

Dieser Server läuft auf deinem Computer, und ChatGPT kann sich nur mit Servern im Internet verbinden. Wähle eine andere App.

Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.

Werte, die du selbst einträgst

  • GOODREADS_USER_ID env
    Numeric Goodreads profile ID (the number in goodreads.com/user/show/ -name). Default user for the shelf tools; optional, can also be passed per tool call.

Diese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.

Was er kann

Läuft auf deinem Computer; die Tool-Liste erscheint nach der Installation in deiner KI-App.

Basischecksi

Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 8. Nov. 2026

  • ✓ Bestanden

    Entwickler passt zum Repo

    Der Registry-Name wurde mit dem GitHub-Konto Danathar bestätigt, dem das Repo gehört

  • … Noch nicht geprüft

    Wird noch gepflegt

    Dieses Repo haben wir noch nicht von GitHub gelesen

  • … Noch nicht geprüft

    Hat eine Lizenz

    Dieses Repo haben wir noch nicht von GitHub gelesen

  • – Nicht zutreffend

    Endpunkt antwortet

    Dieser Server läuft auf deinem Computer; es gibt keinen Endpunkt im Internet

  • – Nicht zutreffend

    Anmeldung mit OAuth

    Läuft auf deinem Computer und nutzt stattdessen lokale Einstellungen

  • … Noch nicht geprüft

    Keine versteckten Anweisungen in Tool-Beschreibungen

    Läuft auf deinem Computer; Tool-Listen können wir nur von Endpunkten im Internet lesen

Im Vergleich mit anderen in Spiele, Sport, Essen & Lerneni

  • Mehr Sterne als 0 % der anderen 1309 Server in dieser Kategorie
  • Neuer in der Registry veröffentlicht als 95 % der anderen 1309 Server in dieser Kategorie
  • Basischecks gleich gut wie oder besser als bei 100 % der anderen 1309 Server in dieser Kategorie

Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.

Häufige Fragen

Ist Goodreads MCP sicher?

Er hat 1 von 1 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.

Welche Schlüssel oder Codes braucht er?

Die Registry nennt keinen erforderlichen Schlüssel, manche Server bitten dich aber bei der ersten Nutzung, dich anzumelden.

Läuft er auf meinem Computer oder in der Cloud?

Er läuft auf deinem Computer. Deine KI-App startet ihn bei Bedarf, und die Daten laufen nicht über die Server des Entwicklers (außer der Server ruft selbst einen Onlinedienst auf).

Wird er noch gepflegt?

Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (2026.11.0) kam gestern in die Registry.

Welche Apps können ihn nutzen?

Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Außerdem brauchst du Python (uv) auf deinem Computer.

Was kann ich stattdessen nutzen?

In derselben Kategorie: Kerbside F1, Open Food Facts MCP, Modrinth MCP

Alternativen

Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.

So liest du eine Karte:↓ Downloads pro Wochei★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti

Kerbside F1

Free Formula 1 stats: standings, title maths, teammate battles and records, each linked to source.

von kerbside.racingAm AnfangAktualisiert heute

Läuft in der Cloud✓ kerbside.racing

Open Food Facts MCP

MCP server for Open Food Facts product, ingredient, allergen, and nutrition lookup.

von mrfentmenGanz neu↓ 43/Wo.Aktualisiert heute

Läuft auf deinem Computer

Modrinth MCP

Search Minecraft mods on Modrinth, filter by loader/game version, browse versions.

von mrfentmenGanz neu↓ 89/Wo.Aktualisiert heute

Läuft auf deinem Computer

README vom Entwickler

README öffnen

Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.

📚 goodreads-mcp

Thank you, [Shreeya Chand](https://github.com/shreeyachand). This project is a fork of shreeyachand/goodreads-mcp, and it would not exist without that work. The core idea of reaching Goodreads without its retired API, and the tool set this server offers, come from Shreeya's project. We're grateful for it, and for the MIT licence that let us build on it. If this server is useful to you, please go star the original.

A read-only MCP server for Goodreads — built without the Goodreads API, because there hasn't been one since December 2020. Lets an LLM find and research books, ratings, and reviews. Tools ride on the JSON autocomplete endpoint, the __NEXT_DATA__ blob embedded in book pages, the AppSync GraphQL backend the Goodreads website itself uses, and the shelf RSS feed, which Goodreads has answered with 404 for every user since Oct 2026. No login, no cookies, no writes — public data only.

tools

toolsource / what it returns
search_booksJSON autocomplete endpoint (stable) — book_id, title, author, rating, cover; max_results defaults to 10, but the endpoint returns about 5 matches at most
get_book__NEXT_DATA__ via the .xml page (stable) — details, cover, ratings histogram, every series membership, review-language breakdown (review_language_limit, default 5, max 25); edition publication_date and the work's first_published, original_title, language, isbn / isbn13 / asin, author_url (each null when absent)
get_reviewsGraphQL — paginated reader reviews (text, rating, likes, date, spoiler flag, permalink); limit default 10, capped at 100; server-side min_rating / max_rating (1–5, min ≤ max), sort (relevance default, newest, oldest), language (two-letter code, as in get_book's review_languages) and search over review text; exclude_spoilers; reports has_more
similar_booksGraphQL — paginated "readers also enjoyed" recommendations; limit up to 100
author_booksGraphQL — paginated author bibliography, ranked by popularity, from any of their books, plus author_url; limit up to 100
series_booksGraphQL — paginated series books with reading-order placement; series_index (zero-based, in get_book's series_memberships order) picks the series; limit up to 100
get_editionsGraphQL — paginated editions (format, ISBN, publisher, publication date as publication_date YYYY-MM-DD plus raw publication_time in epoch ms); limit up to 100
book_listsGraphQL — paginated Listopia lists a book appears on (title, votes, size); limit up to 100
popular_booksGraphQL — most popular books by release year, or a single month (1–12), ranked; limit capped at 50
compare_booksget_book for each id (__NEXT_DATA__ via .xml) — ranks 1–10 distinct books by rating with positive/critical share; a repeated id is fetched once; more than 10 ids is refused; a book that fails comes back as an error entry; if Goodreads answers 429 or 503 the comparison stops there, keeps the books already fetched, and marks the rest as not fetched
get_shelfshelf RSS feed — books on a public shelf (rating and year as ints, None when absent; dates as YYYY-MM-DD; plus cover, pages, my_review); page starts at 1, about 100 items per page; user_id overrides the configured user; raises LoginRequired for a private profile, and ShelfFeedUnavailable while Goodreads answers the feed with 404 (since Oct 2026)
list_shelvesbest-effort HTML scrape of the public profile page — shelf names; raises LoginRequired for a private profile

Every tool is registered with MCP read-only annotations (read-only, non-destructive, idempotent).

The discovery tools all take a book_id and return results carrying book_id/title/author/rating/url, so an agent can chain them — e.g. similar_books → get_reviews on a recommendation. book_id is a string on both sides ("54493401", or the slug form "54493401-title" on input), so a value copied out of one result is accepted as-is by the next call. average_rating is a number (or null) in every tool, so results from different tools sort together. This is the structured book graph a general web search can't assemble.

The five paginated discovery tools (similar_books, author_books, series_books, get_editions, book_lists) page in batches of 20 and accept a total limit up to 100; popular_books caps limit at 50. Responses include returned and has_more, keeping larger lookups useful without allowing unbounded traffic.

WAF and login note: Goodreads book HTML pages now sit behind an AWS WAF

JavaScript challenge (HTTP 202) that plain HTTP clients can't solve. get_book

routes around it via the .xml-suffixed page, so it still works without a

browser. If Goodreads ever extends the WAF to a path we depend on, the client

raises WAFChallenge with a clear message instead of a confusing parse error.

The review-list page (/review/list/{uid}) became login-only in Sep 2026; the

client raises LoginRequired on a sign-in redirect for the same reason, and

list_shelves reads the public profile page instead.

install

With pip:

cd goodreads-mcp

python3.11 -m venv .venv && .venv/bin/pip install -e .

Or with uv, which is also what the Claude Desktop bundle uses:

cd goodreads-mcp

uv sync uv run goodreads-mcp

Requires Python ≥ 3.11.

Each date-numbered release is also published to PyPI as goodreads-mcp-ai (the goodreads-mcp name there belongs to an unrelated project) and listed on the official MCP registry as io.github.Danathar/goodreads-mcp-ai, from server.json. The listing carries a uvx runtime hint; a client that follows it runs uvx goodreads-mcp-ai, which you can also run yourself.

config (optional)

No login or cookies — everything is public data. The only setting is your numeric user_id, the default for the shelf tools. It's the number in goodreads.com/user/show/ -yourname; you can also pass user_id to each shelf tool per call.

mkdir -p ~/.config/goodreads-mcp

cat > ~/.config/goodreads-mcp/config.json << 'EOF' { "user_id": "12345678" } EOF

Env var GOODREADS_USER_ID overrides the file. A config file that can't be read, isn't valid JSON, isn't a JSON object, or has a user_id that is neither a string nor a whole number is ignored with a warning on stderr (a bare number such as 12345678 is accepted and used as its string form; booleans, floats, lists and objects are ignored); the server still starts.

Claude Desktop config

Bundle. Each release carries a goodreads-mcp.mcpb. Releases come out monthly when the server itself changed, numbered by date (2026.10.0, 2026.10.1, 2026.11.0); 0.1.1 was the last of the old numbering, and every date-numbered release is newer than it. See CONTRIBUTING.md for how one is cut. Open the .mcpb in Claude Desktop to install. The bundle ships no dependencies — the manifest launches the server with uv run, and the host resolves pyproject.toml into a private environment on first launch — so one bundle runs on macOS, Windows and Linux with any Python ≥ 3.11. The bundle's optional "Goodreads User ID" setting (user_config.goodreads_user_id) is passed to the server as GOODREADS_USER_ID; left empty, it is passed as an empty value, and the server falls back to the config file.

Manual. Add the server to claude_desktop_config.json — on macOS ~/Library/Application Support/Claude/claude_desktop_config.json, on Windows %APPDATA%\Claude\claude_desktop_config.json; in any version, Settings → Developer → Edit Config opens it:

{

"mcpServers": { "goodreads": { "command": "/path/to/goodreads-mcp/.venv/bin/goodreads-mcp" } } }

Or for development, mcp dev goodreads_mcp/server.py gives you the Inspector UI to poke each tool.

first-run verification

The endpoints are unofficial, so verify in this order:

  1. search_books("project hail mary") — should just work
  2. get_book("54493401") — confirms the .xml/WAF workaround; check the histogram is populated
  3. get_reviews("54493401") — should return real review text
  4. get_shelf("to-read") — raises ShelfFeedUnavailable while Goodreads answers the shelf feed with 404 (since Oct 2026); that is not a user_id problem
  5. list_shelves() — best-effort shelf-name scrape

For an end-to-end example that chains the tools, see prompts/research-a-book.md.

tests

.venv/bin/pip install -e ".[test]"     # pytest + pytest-cov

.venv/bin/pytest # offline parser/unit tests GOODREADS_LIVE=1 .venv/bin/pytest # + live network smoke tests

The offline suite runs on fixtures; CI runs it with pytest-cov and enforces a coverage floor (--cov-fail-under in ci.yml). The live smoke tests are in tests/e2e/test_smoke_live.py and skip unless GOODREADS_LIVE=1 is set. The nightly compliance run runs the live suite against the real endpoints every night, so upstream drift shows up within a day.

documentation

  • docs/design.md — design notes: the data surfaces, WAF and login handling, politeness and concurrency
  • docs/roadmap.md — ideas not built yet
  • docs/maintenance.md — how this repository is maintained (Hive, ACMM L6, outreach PRs held for human review)
  • docs/ai-ops-runbook.md — what to check and do for each automated signal
  • docs/quality.md — what the tests and numbers do and do not prove
  • [docs/risk-tiers.md](https://github.com/Danathar/goodreads-mcp/blob/main/docs/ri

Nur der Anfang wird gezeigt; den Rest findest du im Repo

PopNx fragen