Paperlib MCP
学术文献管理和检索MCP服务器-支持PDF导入、混合搜索、知识图构建和文献综述生成。
 
✨ 特性
| 特性 | 描述 |
|---|---|
| PDF导入 | 自动提取文本,逐页分块,生成向量嵌入 |
| 混合搜索 | FTS全文搜索+pgvector语义搜索 |
| 知识图谱 | LLM驱动的实体/关系/索赔提取、莱顿社区检测 |
| 评论生成 | 基于证据包的结构化文献综述自动生成 |
📋 先决条件
- PostgreSQL 16+,带pgvector扩展
- MinIO或S3兼容存储
- OpenRouter API密钥
______________________________________________________________________
🚀 安装与使用
方法一:Docker Compose(推荐给初学者)
一键启动完整环境(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在游标中配置
添加 claude_desktop_config.json:
{
"mcpServers": {
"paperlib-docker": {
"command": "docker",
"args": [
"exec",
"-i",
"paperlib-mcp",
"python",
"-m",
"paperlib_mcp.server"
]
}
}
}方法2:uvx安装(推荐)
先决条件:需要可用的PostgreSQL(带pgvector)和MinIO/S3兼容的存储服务。
💡 Quick Start Local Services (Optional)
docker-compose up -d postgres minio minio-init在Cursor/Claude Desktop中配置,根据您的实际服务地址修改环境变量:
{
"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"
}
}
}
}方法3:pip安装
先决条件:与方法2相同,需要可用的PostgreSQL和MinIO/S3服务。
pip install paperlib-mcp配置MCP客户端(根据您的实际服务地址进行修改):
{
"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"
}
}
}
}方法4:地方发展
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______________________________________________________________________
📖 可用工具
基本工具
| 工具 | 说明 |
|---|---|
health_check | 系统健康检查 |
import_pdf | 导入PDF文档 |
download_pdf | 按标题将PDF下载到本地目录 |
search_hybrid | 混合搜索(推荐) |
get_document | 获取文档元数据 |
list_documents | 列出所有文件 |
图形工具
| 工具 | 说明 |
|---|---|
extract_graph_v1 | 提取知识图 |
build_communities_v1 | 建立主题社区 |
summarize_community_v1 | 生成社区摘要 |
书写工具
| 工具 | 说明 |
|---|---|
build_evidence_pack | 构建证据包 |
draft_lit_review_v1 | 生成审核草稿 |
完整的工具列表(48+)可在 docs/MCP_TOOLS_REFERENCE.md
______________________________________________________________________
💡 使用示例
# 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______________________________________________________________________
📚 文档
| 文档 | 描述 |
|---|---|
| 部署.md | 部署指南 |
| 建筑.md | 系统架构 |
| 嵌入式系统.md | 嵌入和检索 |
| 知识_图片.md | 知识图谱 |
| DATABASE_SCHEMA.md | 数据库架构 |
| MCP_TOOLS_REFERNCE.md | 工具API参考 |
______________________________________________________________________
🛠️ 技术栈
| 组件 | 技术 |
|---|---|
| MCP协议 | FastMCP |
| 数据库 | PostgreSQL 16+pgvector |
| 对象存储 | MinIO(S3兼容) |
| PDF处理 | PyMuPDF4LLM |
| 嵌入模型 | OpenRouter(文本嵌入3-small) |
| 图聚类 | igraph+Leiden |
______________________________________________________________________
环境变量
| 变量 | 必填 | 默认 | 描述 |
|---|---|---|---|
OPENROUTER_API_KEY | ✅ | - | OpenRouter API密钥 |
POSTGRES_HOST | ❌ | localhost | 数据库主机 |
POSTGRES_USER | ❌ | paper | 数据库用户 |
POSTGRES_PASSWORD | ❌ | paper | 数据库密码 |
POSTGRES_DB | ❌ | paperlib | 数据库名称 |
S3_ENDPOINT | ❌ | http://localhost:9000 MinIO端点。 | |
MINIO_ROOT_USER | ❌ | minio | 最小IO用户 |
MINIO_ROOT_PASSWORD | ❌ | minio123 | MinIO密码 |
______________________________________________________________________
📄 许可证
麻省理工学院
