junkreef/mcp-manual-walker
If you are the rightful owner of mcp-manual-walker and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
An MCP server designed to bridge the information gap between AI agents and PDF manuals by providing structured access to manual content.
MCP Manual Walker 🚶♂️
An MCP server to bridge the information gap between AI agents and PDF manuals.
This server scans a directory for PDF files, extracts their bookmarks, and provides tools for an AI agent to access the content of the manuals in a structured, token-efficient way.
✨ About The Project
This project was created to solve a simple problem: AI Agents are great, but they struggle with large, unstructured data like PDF manuals. This server acts as a "librarian" for the AI, organizing the information in the manuals and making it easy for the AI to find what it needs.
The server will:
- 📚 Scan a directory for PDF files.
- 🔖 Extract bookmarks from the PDFs.
- 📝 Convert the bookmarked sections into Markdown.
- 🧠 Provide a set of tools for the AI to use.
- ⚡ Cache the results for speedy access.
Built With
🚀 Getting Started
To get a local copy up and running follow these simple steps.
Prerequisites
You need to have Python 3.11+ and uv installed.
- Python 3.11+
uvpip install uv
Installation
- Clone the repo
git clone https://github.com/junkreef/mcp-manual-walker.git - Install Python packages using
uv. This command syncs your environment with theuv.lockfile.uv sync - Place your PDF manuals in the
data/pdfsdirectory. - Run the server
python src/mcp_manual_walker/main.py
🛠️ Usage
The server provides a set of tools for AI agents. The typical workflow is as follows:
- Call
list_manuals()to get a list of all available manuals and their unique IDs. - Use
get_manual_metadata(manual_id)to retrieve the hierarchical table of contents (bookmarks) for a specific manual. - Finally, call
get_markdown_content(bookmark_id)to get the token-efficient Markdown content for the desired section.
This process allows an agent to intelligently navigate large documents and only pull the necessary information into its context.
🗺️ Roadmap
- Implement a more sophisticated search functionality.
- Add a web interface for managing manuals.
See the open issues for a full list of proposed features (and known issues).
🤝 Contributing
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes. This project follows the Conventional Commits specification.
git commit -m "feat: Add some AmazingFeature" - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
📜 License
Distributed under the MIT License. See LICENSE for more information.
📧 Contact
Junpei Kishi - junkreef@longarch.net
Project Link: https://github.com/junkreef/mcp-manual-walker