Skip to main content
Glama

Paperlib MCP

Academic literature management and retrieval MCP server - supporting PDF import, hybrid search, knowledge graph construction, and literature review generation.

Python 3.11+ License: MIT

中文 README

✨ Features

Feature

Description

PDF Import

Auto-extract text, chunk by page, generate vector embeddings

Hybrid Search

FTS full-text search + pgvector semantic search

Knowledge Graph

LLM-driven entity/relation/claim extraction, Leiden community detection

Review Generation

Structured literature review auto-generation based on evidence packs

📋 Prerequisites

  • PostgreSQL 16+ with pgvector extension

  • MinIO or S3-compatible storage

  • OpenRouter API Key


🚀 Installation & Usage

One-click launch of complete environment (PostgreSQL + MinIO + MCP):

git clone https://github.com/h-lu/paperlib-mcp.git
cd paperlib-mcp

# Configure API Key
cp .env.example .env
# Edit .env and fill in OPENROUTER_API_KEY

# Start services
docker-compose up -d

Configure in Cursor

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "paperlib-docker": {
      "command": "docker",
      "args": [
        "exec",
        "-i",
        "paperlib-mcp",
        "python",
        "-m",
        "paperlib_mcp.server"
      ]
    }
  }
}

Prerequisites: Requires available PostgreSQL (with pgvector) and MinIO/S3-compatible storage service.

docker-compose up -d postgres minio minio-init

Configure in Cursor/Claude Desktop, modify environment variables according to your actual service addresses:

{
  "mcpServers": {
    "paperlib": {
      "command": "uvx",
      "args": ["paperlib-mcp"],
      "env": {
        "POSTGRES_HOST": "localhost",
        "POSTGRES_USER": "paper",
        "POSTGRES_PASSWORD": "paper",
        "POSTGRES_DB": "paperlib",
        "S3_ENDPOINT": "http://localhost:9000",
        "MINIO_ROOT_USER": "minio",
        "MINIO_ROOT_PASSWORD": "minio123",
        "OPENROUTER_API_KEY": "your-api-key"
      }
    }
  }
}

Method 3: pip Install

Prerequisites: Same as Method 2, requires available PostgreSQL and MinIO/S3 services.

pip install paperlib-mcp

Configure MCP client (modify according to your actual service addresses):

{
  "mcpServers": {
    "paperlib": {
      "command": "paperlib-mcp",
      "args": [],
      "env": {
        "POSTGRES_HOST": "localhost",
        "POSTGRES_USER": "paper",
        "POSTGRES_PASSWORD": "paper",
        "POSTGRES_DB": "paperlib",
        "S3_ENDPOINT": "http://localhost:9000",
        "MINIO_ROOT_USER": "minio",
        "MINIO_ROOT_PASSWORD": "minio123",
        "OPENROUTER_API_KEY": "your-api-key"
      }
    }
  }
}

Method 4: Local Development

git clone https://github.com/your-org/paperlib-mcp.git
cd paperlib-mcp

uv sync
cp .env.example .env
# Edit .env

uv run python -m paperlib_mcp.server

📖 Available Tools

Basic Tools

Tool

Description

health_check

System health check

import_pdf

Import PDF documents

download_pdf

Download PDF by title to local directory

search_hybrid

Hybrid search (recommended)

get_document

Get document metadata

list_documents

List all documents

Graph Tools

Tool

Description

extract_graph_v1

Extract knowledge graph

build_communities_v1

Build topic communities

summarize_community_v1

Generate community summaries

Writing Tools

Tool

Description

build_evidence_pack

Build evidence pack

draft_lit_review_v1

Generate review draft

Full tool list (48+) available at docs/MCP_TOOLS_REFERENCE.md


💡 Usage Examples

# Import PDF
> import_pdf file_path="/papers/study.pdf" title="Study Title"

# Search literature
> search_hybrid query="monetary policy" k=10

# Build knowledge graph
> extract_graph_v1 doc_id="abc123"
> build_communities_v1 level="macro"

# Generate review
> build_evidence_pack query="CBDC" k=40
> draft_lit_review_v1 pack_id=1

📚 Documentation

Document

Description

DEPLOYMENT.md

Deployment Guide

ARCHITECTURE.md

System Architecture

EMBEDDING_SYSTEM.md

Embedding & Retrieval

KNOWLEDGE_GRAPH.md

Knowledge Graph

DATABASE_SCHEMA.md

Database Schema

MCP_TOOLS_REFERENCE.md

Tools API Reference


🛠️ Tech Stack

Component

Technology

MCP Protocol

FastMCP

Database

PostgreSQL 16 + pgvector

Object Storage

MinIO (S3 Compatible)

PDF Processing

PyMuPDF4LLM

Embedding Model

OpenRouter (text-embedding-3-small)

Graph Clustering

igraph + Leiden


Environment Variables

Variable

Required

Default

Description

OPENROUTER_API_KEY

-

OpenRouter API key

POSTGRES_HOST

localhost

Database host

POSTGRES_USER

paper

Database user

POSTGRES_PASSWORD

paper

Database password

POSTGRES_DB

paperlib

Database name

S3_ENDPOINT

http://localhost:9000

MinIO endpoint

MINIO_ROOT_USER

minio

MinIO user

MINIO_ROOT_PASSWORD

minio123

MinIO password


📄 License

MIT

Install Server
A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

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/h-lu/paperlib-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server