paper-intelligence
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., "@paper-intelligencesearch for 'transformer architecture' in my processed papers"
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.
Paper Intelligence
A local MCP server for intelligent paper/PDF management. Convert PDFs to markdown, then search them with hybrid grep + semantic search. Designed for token efficiency: search first, read only what you need.
🚀 Quick Start
1. Install UV (one-time setup)
curl -LsSf https://astral.sh/uv/install.sh | sh2. Add to Your MCP Client
Claude Code CLI:
claude mcp add paper-intelligence -- uvx paper-intelligence@latestVS Code:
code --add-mcp '{"name":"paper-intelligence","command":"uvx","args":["paper-intelligence@latest"]}'That's it! uvx handles everything automatically. Using @latest ensures you always get the newest version.
Related MCP server: paper-fetch-mcp
🔌 MCP Client Integration
Add to your Claude Desktop config:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"paper-intelligence": {
"command": "uvx",
"args": ["paper-intelligence@latest"]
}
}
}Go to Settings → MCP → Add new MCP Server
Select
commandtypeEnter:
uvx paper-intelligence@latest
Or add to ~/.cursor/mcp.json:
{
"mcpServers": {
"paper-intelligence": {
"command": "uvx",
"args": ["paper-intelligence@latest"]
}
}
}Any MCP-compatible client can use paper-intelligence:
{
"mcpServers": {
"paper-intelligence": {
"command": "uvx",
"args": ["paper-intelligence@latest"]
}
}
}✨ Features
PDF to Markdown — High-accuracy conversion using Marker
Hybrid Search — Combined grep (exact/regex) + semantic RAG search
Token Efficient — Search papers instead of reading entire documents
GPU Acceleration — MPS (Apple Silicon) and CUDA support
Self-Contained — Each paper gets its own directory with all data
Header Context — Search results show document structure (e.g., "Methods > Data Collection")
📖 MCP Tools
process_paper
Parameters:
pdf_path(string): Path to PDF fileuse_llm(boolean, optional): Enhanced accuracy mode (default: false)chunk_size(integer, optional): Text chunk size for embedding (default: 512)chunk_overlap(integer, optional): Overlap between chunks (default: 50)
Example:
Process the paper at ~/Downloads/attention-is-all-you-need.pdfOutput Structure:
attention-is-all-you-need/
├── attention-is-all-you-need.md # Converted markdown
├── metadata.json # Processing version info
├── index.json # Header hierarchy
├── chroma/ # Embeddings database
└── images/ # Extracted figuressearch
Parameters:
query(string): Search query (text, regex, or semantic)paper_dirs(array): List of paper directories to searchmode(string, optional):"grep","rag", or"hybrid"(default: hybrid)top_k(integer, optional): Number of results (default: 5)regex(boolean, optional): Treat query as regex (default: false)
Example Queries:
# Semantic search across papers
Search for "attention mechanism implementation" in my processed papers
# Exact text search
Search for "transformer" using grep mode
# Regex search
Search for "BERT|GPT|T5" with regex enabledReturns: Results with line numbers, surrounding context, and header location.
convert_pdf
Parameters:
pdf_path(string): Path to PDF fileoutput_dir(string, optional): Custom output directoryuse_llm(boolean, optional): Enhanced accuracy mode
Returns: markdown_path, images_dir, image_count
get_paper_info
Parameters:
paper_dir(string): Path to paper directory
Example Response:
{
"has_markdown": true,
"has_index": true,
"has_embeddings": true,
"has_images": true,
"image_count": 12,
"version": "0.2.0",
"processed_at": "2025-01-15T10:30:00Z"
}index_markdown / embed_document
index_markdown — Extract header hierarchy into searchable JSON
index_markdown(markdown_path="~/Downloads/paper/paper.md")embed_document — Create embeddings for semantic search
embed_document(
markdown_path="~/Downloads/paper/paper.md",
chunk_size=512,
chunk_overlap=50
)📊 Example Output
Search Result
{
"source": "attention-is-all-you-need.md",
"line_number": 142,
"header_path": "Model Architecture > Attention",
"content": "An attention function can be described as mapping a query and a set of key-value pairs to an output...",
"score": 0.89
}🎯 Typical Workflow
Process a paper:
Process the PDF at ~/Downloads/transformer-paper.pdf
Search across papers:
Search for "positional encoding" in my papers
Read specific sections:
Show me the Methods section from the transformer paper
The agent reads search results (a few hundred tokens) instead of entire papers (tens of thousands of tokens).
🛠️ Installation Options
# Install with pip
pip install paper-intelligence
# Or run directly with uvx (no install needed)
uvx paper-intelligence@latestpip install "paper-intelligence @ git+https://github.com/Strand-AI/paper-intelligence.git"git clone https://github.com/Strand-AI/paper-intelligence.git
cd paper-intelligence
# Create virtual environment
python3.11 -m venv .venv
source .venv/bin/activate
# Install in development mode
pip install -e ".[dev]"
# Run the server
python -m paper_intelligence.serverDevelopment MCP config:
{
"mcpServers": {
"paper-intelligence": {
"command": "python",
"args": ["-m", "paper_intelligence.server"],
"cwd": "/path/to/paper-intelligence"
}
}
}Run tests:
# Unit tests (fast)
pytest tests/test_markdown_parser.py
# Integration tests (slow, requires ML models)
pytest tests/test_integration.py -v🔧 Debugging
Use the MCP Inspector to debug the server:
npx @modelcontextprotocol/inspector uvx paper-intelligence@latest🆘 Troubleshooting
Ensure Python 3.11+ is installed
Try
uvx paper-intelligence@latestdirectly to see error messagesCheck that all dependencies installed correctly
Add to your MCP config:
"env": {
"PYTHONIOENCODING": "utf-8"
}Claude Desktop only reads configuration on startup. Fully restart the app after config changes.
🏗️ Technical Stack
Component | Technology |
MCP Server | Official Python SDK with FastMCP |
PDF Conversion | |
Embeddings | LlamaIndex + HuggingFace (BAAI/bge-small-en-v1.5) |
Vector Store | ChromaDB (persistent, local per-paper) |
GPU Support | PyTorch with MPS (Apple) or CUDA |
🙏 Acknowledgments
Marker for excellent PDF conversion
LlamaIndex for the RAG framework
ChromaDB for the vector database
FastMCP for the MCP server framework
📄 License
MIT — see LICENSE for details.
This server cannot be installed
Maintenance
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/Strand-AI/paper-intelligence'
If you have feedback or need assistance with the MCP directory API, please join our Discord server