30book

io.github.sepehr071v0.1.0Updated Oct 11, 2026

Unofficial read-only 30book: search Iranian printed books, compare editions and prices.

Overview

AI-generated overview

Read-only search of the Iranian 30book bookstore for book details, editions, prices in Toman, stock and reviews.

What it does
Provides read-only tools prefixed sb_ for the 30book bookstore: keyword search with sort and filters, browsing by category, genre, award or tag, and lookups by publisher, author or translator. It returns book details such as price and discount, stock, pages, cover, ISBN, print run, rating and description, plus similar titles and reader reviews. It also lists best sellers, new releases and discounted books.
When to use it
Useful when an assistant needs to find or compare Persian or foreign printed books sold on 30book, for example the cheapest hardcover edition of a title, everything by a given translator, or current best sellers and deals. It is a read-only catalogue lookup, not a shopping or ordering tool.
Requirements
Runs locally over stdio, launched with uvx from the PyPI package 30book-mcp, so the uv runtime is needed. No account, API key or login is required. Network access to 30book.com is needed; behind a proxy, set the SIBOOK_MCP_PROXY environment variable, since system proxy settings are ignored.
Before you install
Read-only: it never logs in and never calls cart, checkout, wishlist or review endpoints, so it cannot buy or change anything. Requests go to the third-party site 30book.com, and the project is unofficial and asks users to keep the request rate low. The optional SIBOOK_MCP_PROXY variable may contain proxy credentials, so treat it as a secret.

Installation

In SourceWeft

  1. Open 30book in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

30book-mcp

Let your AI agent search Iran's 30book bookstore. Unofficial, read-only MCP server for 30book (about 200,000 printed books, Persian and foreign): search by title, compare editions and publishers, see list and discounted price in Toman, stock, pages, cover type, ISBN, print run, authors, translators, reviews, best sellers and discounts. No account, no API key, no login, no cart.

Quick start · Tools · How it works · FAQ · فارسی

Why

30book has no public API and its list pages are drawn by a live Blazor Server session, so a plain scraper sees empty pages. This server speaks that protocol (SignalR long polling, no browser needed) and parses the book pages, so an agent can answer "cheapest edition of Little Prince with a hard cover", "everything by this translator under 300,000 Toman" or "what are the best sellers in history" in a few calls.

Quick start

You need uv.

bash
claude mcp add 30book -- uvx 30book-mcp

Other clients (Claude Desktop, Cursor, VS Code): run the command uvx with argument 30book-mcp. Behind a proxy, set SIBOOK_MCP_PROXY=http://host:port (system proxy variables are ignored on purpose).

Tools

All tools are read-only and prefixed sb_. Prices are Toman.

Find books

ToolWhat it does
sb_searchSearch by title (exact phrase or word by word) with sort, in-stock, publisher, author and translator filters; 20 per page
sb_browseBooks of a category (section, subject, topic), fiction genre, national literature, literary award or tag
sb_publisherOne publisher's catalogue with a short description
sb_authorEverything by one author or translator
sb_find_publisherPublisher name to id
sb_find_personAuthor / translator name to id
sb_categoriesCategory sections and their subjects (codes for sb_browse)
sb_collectionsGenres, national literatures, award lists and current tags

One book

ToolWhat it does
sb_bookPrice, final price, discount %, stock, authors, translators, publisher, pages, cover, size, ISBN, print run, year, categories, rating, description
sb_similarSimilar books, more by the author, more by the translator
sb_reviewsReader comments with stars, plus the rating summary

Popular and cheap

ToolWhat it does
sb_bestsellersSite-wide best sellers
sb_new_releasesNewest books
sb_dealsThe discounted-books page, biggest discount first on request

How it works

  • Book pages, the home page and landing pages are plain server-rendered HTML and are parsed directly.
  • Search, category, publisher, author, genre and tag pages are built after load by a Blazor Server circuit. The server opens one over SignalR long polling, applies the binary render batches to a small DOM (blazor.py) and reads the cards. Paging, sort and filters are URL query parameters (pg, sort, qt, pub, wtr, inp, stp), so no clicks are simulated; only the name boxes on the publisher and author index pages use a fired event.
  • HTML prices are Toman; the JSON-LD on book pages is Rial (x10) and is only used for sold-out books.
  • List pages take 2 to 5 seconds, book pages about 1 second. Stock is yes/no only.

Development

bash
export HTTPS_PROXY=http://127.0.0.1:10898 HTTP_PROXY=http://127.0.0.1:10898   # uv downloads onlyuv syncuv run ruff check . && uv run ruff format --check .uv run pytest -q            # offline, recorded pagesuv run pytest -m live -q    # real site, one test per tool

API map and test report: ../30book/.

FAQ

Does it buy anything? No. It never logs in and never calls cart, checkout, wishlist or review endpoints.

Why is a search sometimes empty? The site stores some names with Arabic yeh / kaf; try a shorter word or extended=true.

Is it affiliated with 30book? No. Unofficial; keep the request rate low.

فارسی

سرور MCP غیررسمی و فقط‌خواندنی برای فروشگاه کتاب ۳۰بوک: جستجوی کتاب، مقایسهٔ چاپ‌ها و ناشران، قیمت (تومان) و تخفیف، موجودی، مشخصات کتاب، نویسنده و مترجم، نظرات، پرفروش‌ها و تخفیف‌ها. نیازی به حساب یا کلید ندارد.

نصب: claude mcp add 30book -- uvx 30book-mcp

Source: README.md at commit 31817e9

Tools

0
Tool metadata has not been indexed yet.

Version history

1
  1. v0.1.0LatestOct 11, 2026