mcp-elevenreader
This server lets you manage your ElevenReader (ElevenLabs text-to-speech) library and settings through an MCP interface.
Library Management
List books with pagination or retrieve your full reading history
Get book details (chapters, progress) and HTML content
Add content via URL, single EPUB/PDF upload, or batch directory upload (background processing with retry)
Check status of ongoing background directory uploads
Delete books from your library
Library Maintenance
Deduplicate books (keeps the oldest copy)
Mark books at 97%+ progress as finished
Listening & Bookmarks
Update your listening progress for any book
Retrieve bookmarks for a specific book
Voices
List all available TTS voices and get details on a specific voice
User Settings
View current config (default voice, playback speed, font size)
Update default voice and playback speed
Account
View subscription plan, credits, and billing details
List your personal collections
Allows managing library and reading content on ElevenReader, including uploading documents, tracking progress, and adjusting settings.
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., "@mcp-elevenreaderlist my library"
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.
mcp-elevenreader
MCP server for ElevenReader — ElevenLabs text-to-speech reader.
Setup
1. Get refresh token
Open https://elevenreader.io, log in, then run in browser console (F12 → Console):
JSON.parse(localStorage.getItem(Object.keys(localStorage).find(k => k.startsWith('firebase:authUser:')))).stsTokenManager.refreshToken2. Configure MCP
Add to your MCP config (~/.kiro/settings.json, Claude Desktop, etc.):
{
"mcpServers": {
"elevenreader": {
"command": "uv",
"args": ["run", "--directory", "/path/to/mcp-elevenreader", "python", "server.py"],
"env": {
"ELEVEN_REFRESH_TOKEN": "paste-your-refresh-token-here"
}
}
}
}The refresh token is long-lived (months). Access tokens are refreshed automatically.
Related MCP server: ElevenLabs MCP Server
Tools
Tool | Description |
| List books paginated (10 per page, compact: title, author, progress) |
| Full reading history — all books in compact format |
| Get full details of a specific read (chapters, progress) |
| Get HTML text content of a read |
| Add URL for TTS reading |
| Upload epub/pdf file |
| Upload all books from a directory (background, with retry) |
| Check background upload progress |
| Remove from library |
| Find and remove duplicate reads (keeps oldest) |
| Mark books at 97%+ progress as finished |
| Available TTS voices |
| Voice details |
| User settings (voice, speed, font) |
| Change default voice/speed |
| Subscription info & credits |
| User collections |
| Bookmarks for a read |
| Update listening position |
Architecture
Auth: Firebase refresh token → short-lived access token (auto-refreshed, thread-safe)
Data source:
/v1/reader/collections/booksendpoint (full history, 345+ books)Caching: 60s TTL on book list, invalidated on mutations (add/delete)
Upload queue: Background thread with retry (3 attempts), rate limiting, pause for priority uploads
Thread safety: Locks on token cache and reads cache
Requirements
Python ≥ 3.11
Dependencies: httpx, mcp
License
MIT
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
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/MIt9/mcp-elevenreader'
If you have feedback or need assistance with the MCP directory API, please join our Discord server