PDF Extraction Server
MCP server to extract contents from a PDF file
Installation
Installing for Claude Desktop
Manual Configuration Required
This MCP server requires manual configuration. Run the command below to open your configuration file:
npx mcpbar@latest edit -c claude
This will open your configuration file where you can add the PDF Extraction Server MCP server manually.
PDF Extraction MCP Server (Claude Code Fork)
MCP server to extract contents from PDF files, with fixes for Claude Code CLI installation.
This fork includes critical fixes for installing and running the server with Claude Code (the CLI version).
What's Different in This Fork
- Added
__main__.py
- Enables the package to be run as a module withpython -m pdf_extraction
- Claude Code specific instructions - Clear installation steps that work with Claude Code CLI
- Tested installation process - Verified working with
claude mcp add
command
Components
Tools
The server implements one tool:
- extract-pdf-contents: Extract contents from a local PDF file
- Takes
pdf_path
as a required string argument (local file path) - Takes
pages
as an optional string argument (comma-separated page numbers, supports negative indexing like-1
for last page) - Supports both PDF text extraction and OCR for scanned documents
- Takes
Installation for Claude Code CLI
Prerequisites
- Python 3.11 or higher
- pip or conda
- Claude Code CLI installed (
claude
command)
Step 1: Clone and Install
# Clone this fork
git clone https://github.com/lh/mcp-pdf-extraction-server.git
cd mcp-pdf-extraction-server
# Install in development mode
pip install -e .
Step 2: Find the Installed Command
# Check where pdf-extraction was installed
which pdf-extraction
# Example output: /opt/homebrew/Caskroom/miniconda/base/bin/pdf-extraction
Step 3: Add to Claude Code
# Add the server using the full path from above
claude mcp add pdf-extraction /opt/homebrew/Caskroom/miniconda/base/bin/pdf-extraction
# Verify it was added
claude mcp list
Step 4: Use in Claude
# Start a new Claude session
claude
# In Claude, type:
/mcp
# You should see:
# MCP Server Status
# • pdf-extraction: connected
Usage Example
Once connected, you can ask Claude to extract PDF contents:
"Can you extract the content from the PDF at /path/to/document.pdf?"
"Extract pages 1-3 and the last page from /path/to/document.pdf"
Troubleshooting
Server Not Connecting
- Make sure you started a NEW Claude session after adding the server
- Verify the command path is correct:
ls -la $(which pdf-extraction)
- Test the command directly (it should hang waiting for input):
pdf-extraction
Module Not Found Errors
If you get Python import errors:
- Make sure you're using the same Python environment where you installed the package
- Try using the full Python path:
claude mcp add pdf-extraction /path/to/python -m pdf_extraction
Installation Issues
If pip install -e .
fails:
- Make sure you have Python 3.11+:
python --version
- Try creating a fresh virtual environment:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate pip install -e .
For Claude Desktop Users
This fork is specifically for Claude Code CLI. If you're using Claude Desktop (the GUI app), please refer to the original repository for installation instructions.
Dependencies
- mcp>=1.2.0
- pypdf2>=3.0.1
- pytesseract>=0.3.10 (for OCR support)
- Pillow>=10.0.0
- pydantic>=2.10.1,<3.0.0
- pymupdf>=1.24.0
Contributing
Contributions are welcome! The main change in this fork is the addition of __main__.py
to make the package runnable as a module.
License
Same as the original repository.
Credits
Stars
12Forks
8Last commit
25 days agoRepository age
5 months
Auto-fetched from GitHub .
MCP servers similar to PDF Extraction Server:

Stars
Forks
Last commit

Stars
Forks
Last commit

Stars
Forks
Last commit