Provides tools for managing Micro.blog book collections, including bookshelf management (creating, renaming, organizing), book operations (adding, moving, removing books), and reading goal tracking and updates through the Micro.blog Books API.
Micro.blog Books MCP Server
An MCP (Model Context Protocol) server built with FastMCP that provides access to the Micro.blog Books API, allowing Claude Desktop (or other MCP clients) to manage your book collections, bookshelves, and reading goals.
Overview
This server enables Claude Desktop to interact directly with your Micro.blog book collection through a clean set of tools that cover all aspects of book management - from organizing bookshelves to tracking reading goals. Built with FastMCP for simplicity and reliability.
Features
This MCP server provides the following tools for managing your Micro.blog books:
Bookshelf Management
- get_bookshelves: Get all your bookshelves
- get_bookshelf_books: Get books in a specific bookshelf
- add_bookshelf: Create a new bookshelf
- rename_bookshelf: Rename an existing bookshelf
Book Management
- add_book: Add a new book to a bookshelf
- move_book: Move a book between bookshelves
- remove_book: Remove a book from a bookshelf
- change_book_cover: Update a book's cover image
Reading Goals
- get_reading_goals: Get your reading goals
- get_goal_progress: Get progress toward a specific reading goal
- update_reading_goal: Update a reading goal's target or progress
Prerequisites
- Python 3.8 or higher (FastMCP has lower requirements)
- Micro.blog account with API access
- Claude Desktop application
Installation
Quick Setup (Recommended)
- Clone this repository:
- Run the automated setup:This installs FastMCP and all dependencies, then verifies everything works.
Manual Setup
If you prefer manual installation:
- Install dependencies:This installs FastMCP and all required packages.
- Verify installation:
Setup
1. Get Your Micro.blog Bearer Token
You'll need a bearer token from Micro.blog to authenticate API requests. You can get this from your Micro.blog account settings.
2. Configure Environment
Set your bearer token as an environment variable:
3. Configure Claude Desktop
Option A: Automatic Configuration (Recommended)
Run the configuration generator:
This will output the exact configuration you need and save it to claude_desktop_config.json
.
Option B: Manual Configuration
Add the MCP server to your Claude Desktop configuration. The configuration file is typically located at:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
Add the following to your configuration:
Important Notes:
- The configuration generator automatically finds a compatible Python version
- Replace
your_token_here
with your actual Micro.blog bearer token - Use full absolute paths for both the Python executable and script
4. Restart Claude Desktop
After updating the configuration, restart Claude Desktop for the changes to take effect.
Usage
Once configured, you can ask Claude to help manage your books. For example:
- "Show me all my bookshelves"
- "Add a new book called 'Project Hail Mary' by Andy Weir to my 'Currently reading' bookshelf"
- "Move book ID 79 to bookshelf ID 23"
- "What are my reading goals for this year?"
- "Update my reading goal to 25 books"
Contributing
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
License
This project is licensed under the MIT License - see the LICENSE file for details.
API Reference
All tools return JSON responses from the Micro.blog API. The server handles authentication automatically using your bearer token.
For more details about the underlying API, see the Micro.blog Books API documentation.
Troubleshooting
- Authentication errors: Make sure your
MICRO_BLOG_BEARER_TOKEN
is set correctly and valid - Server not appearing in Claude: Check that the path in your configuration is correct and that uv is installed
- Permission errors: Ensure the server files have appropriate permissions
Development
To run the server in development mode:
Troubleshooting
Common Issues
spawn python ENOENT
error: This means Claude Desktop can't find the Python executable. Use the configuration generator (python get_config.py
) to get the correct paths.- Import errors: Make sure you've run the setup script (
python install.py
) to install FastMCP and dependencies. - Authentication errors: Verify your
MICRO_BLOG_BEARER_TOKEN
is set correctly and valid in the Claude Desktop configuration. - Path errors: Ensure both the Python executable and
run_server.py
paths are full absolute paths in your configuration.
Testing the Server
You can test the server independently:
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Enables management of Micro.blog book collections through natural language, allowing users to organize bookshelves, add/move books, and track reading goals. Built with FastMCP for reliable integration with Claude Desktop.
Related MCP Servers
- -securityAlicense-qualityServer for managing academic literature with structured note-taking and organization, designed for seamless interaction with Claude. Built with SQLite for simplicity and portability.Last updated -11PythonMIT License
- -securityAlicense-qualityEnables access and interaction with your Readwise library, allowing you to retrieve and search highlights, books, and documents through natural language queries when using Claude or other MCP-compatible assistants.Last updated -22TypeScriptMIT License
- -securityAlicense-qualityAn MCP server that allows Claude Desktop to access and manage Raindrop.io bookmarks through natural language commands, supporting operations for collections, raindrops, and tags.Last updated -5PythonMIT License
- AsecurityFlicenseAqualityAn MCP server that integrates with Claude Desktop for managing personal journal entries, providing both a web viewer for browsing journals and tools for adding, searching, and analyzing journal content.Last updated -671TypeScript