Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Readbook MCP Serversearch for books about JavaScript programming"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Readbook MCP Server
A Model Context Protocol (MCP) server for reading books, transformed from the Telegram Mini App readbook project.
Features
This MCP server provides the following tools for AI assistants to help with reading:
Tools
search_books- Search for books by title, author, or categoryget_book_content- Get chapter content of a specific bookadd_bookmark- Add a bookmark at a specific locationget_bookmarks- Get all bookmarks for a bookget_reading_progress- Get reading progress for a bookupdate_reading_progress- Update reading progressget_reading_stats- Get overall reading statistics
Resources
book_list- List of all available booksreading_progress_summary- Summary of reading progress across all books
Prompts
reading_recommendation- Get personalized book recommendationsreading_summary- Generate a reading summary report
Installation
From Source
Clone the repository:
git clone https://github.com/yourusername/readbook-mcp.git
cd readbook-mcpInstall dependencies:
npm installBuild the project:
npm run buildConfiguration
Claude Desktop
Add this to your claude_desktop_config.json:
{
"mcpServers": {
"readbook": {
"command": "node",
"args": ["/path/to/readbook-mcp/build/index.js"]
}
}
}Cursor
Add to your .cursor/mcp.json:
{
"mcpServers": {
"readbook": {
"command": "node",
"args": ["/path/to/readbook-mcp/build/index.js"]
}
}
}Development
Build
npm run buildWatch Mode
npm run watchTest with MCP Inspector
npm run inspectorMock Data
The server comes with pre-loaded mock books:
JavaScript高级程序设计 by Nicholas C. Zakas (25 chapters)
人类简史 by 尤瓦尔·赫拉利 (20 chapters)
百年孤独 by 加西亚·马尔克斯 (20 chapters)
API Usage Examples
Search Books
// Search by title
await client.callTool({
name: "search_books",
arguments: {
query: "JavaScript",
searchType: "title"
}
});
// Search by author
await client.callTool({
name: "search_books",
arguments: {
query: "Nicholas",
searchType: "author"
}
});Get Book Content
await client.callTool({
name: "get_book_content",
arguments: {
bookId: "book_001",
chapterNumber: 1
}
});Add Bookmark
await client.callTool({
name: "add_bookmark",
arguments: {
bookId: "book_001",
chapterNumber: 3,
pageNumber: 15,
note: "Important concept about closures"
}
});Update Reading Progress
await client.callTool({
name: "update_reading_progress",
arguments: {
bookId: "book_001",
chapterNumber: 5,
pageNumber: 23,
markChapterCompleted: true
}
});Architecture
This MCP server is built using:
@modelcontextprotocol/sdk - Official MCP TypeScript SDK
TypeScript - Type-safe development
Zod - Schema validation
Stdio transport - Standard input/output communication
License
MIT
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.