Extract and manage BibTeX references from PDF files with MCP support
Project description
BibTeX Reference Extractor
从PDF提取参考文献,智能查询DOI,管理BibTeX引用库。
  
English
What is this?
A tool to extract references from PDF papers and get their BibTeX citations automatically.
Project Structure
bibtex-ref-extractor/
├── src/bibtex_extractor/ # Core Python package
│ ├── pdf_reader.py # Extract refs from PDF
│ ├── reference_lookup.py # Query DOI from databases
│ ├── bibtex_manager.py # Manage .bib files
│ └── cli.py # Command line interface
├── mcp_server/ # MCP server for AI assistants
│ └── server.py
└── pyproject.toml
Installation
# Clone and install
git clone https://github.com/Atun-tunz/bibtex-ref-extractor--.git
cd bibtex-ref-extractor
pip install -e .
Usage
Command Line:
# Look up a paper
bibtex-extractor lookup "Deep Knowledge Tracing" -a Piech
# Extract from PDF
bibtex-extractor extract paper.pdf
# Process PDF to BibTeX
bibtex-extractor process paper.pdf -b refs.bib
Python API:
import sys
sys.path.insert(0, 'src') # Add src to path
from bibtex_extractor import lookup_reference, BibTeXManager
# Look up a paper
result = lookup_reference("Deep Knowledge Tracing", "Piech")
print(result['bibtex'])
# Manage library
manager = BibTeXManager("refs.bib")
manager.add_entry(result['bibtex'])
manager.save()
MCP for AI Assistants:
Add to Claude Desktop config (claude_desktop_config.json):
{
"mcpServers": {
"bibtex": {
"command": "python",
"args": ["-m", "mcp_server.server"],
"cwd": "/path/to/bibtex-ref-extractor"
}
}
}
Data Sources
CrossRef → Semantic Scholar → arXiv → DBLP
中文
这是什么?
从PDF论文中提取参考文献,自动查询DOI并生成BibTeX引用格式。
项目结构
bibtex-ref-extractor/
├── src/bibtex_extractor/ # 核心Python包
│ ├── pdf_reader.py # 从PDF提取参考文献
│ ├── reference_lookup.py # 查询学术数据库获取DOI
│ ├── bibtex_manager.py # 管理.bib文件
│ └── cli.py # 命令行工具
├── mcp_server/ # MCP服务器(供AI助手调用)
│ └── server.py
└── pyproject.toml
安装
# 克隆并安装
git clone https://github.com/Atun-tunz/bibtex-ref-extractor--.git
cd bibtex-ref-extractor
pip install -e .
使用方式
命令行:
# 查询论文
bibtex-extractor lookup "Deep Knowledge Tracing" -a Piech
# 从PDF提取参考文献
bibtex-extractor extract paper.pdf
# 处理PDF生成BibTeX
bibtex-extractor process paper.pdf -b refs.bib
Python代码:
import sys
sys.path.insert(0, 'src') # 添加src到路径
from bibtex_extractor import lookup_reference, BibTeXManager
# 查询论文
result = lookup_reference("Deep Knowledge Tracing", "Piech")
print(result['bibtex'])
# 管理引用库
manager = BibTeXManager("refs.bib")
manager.add_entry(result['bibtex'])
manager.save()
MCP供AI助手调用:
添加到Claude Desktop配置 (claude_desktop_config.json):
{
"mcpServers": {
"bibtex": {
"command": "python",
"args": ["-m", "mcp_server.server"],
"cwd": "项目路径"
}
}
}
数据来源
CrossRef → Semantic Scholar → arXiv → DBLP
MCP说明
MCP是什么?
MCP (Model Context Protocol) 是让AI助手(如Claude)能调用外部工具的标准协议。
本项目的MCP实现
本项目包含一个MCP服务器 (mcp_server/server.py),提供以下工具:
| 工具 | 功能 |
|---|---|
extract_references_from_pdf |
从PDF提取参考文献 |
lookup_reference |
查询DOI和BibTeX |
add_to_bibtex |
添加到BibTeX库 |
search_bibtex |
搜索条目 |
process_pdf_references |
完整工作流 |
MCP需要部署吗?
不需要在线部署。MCP服务器在本地运行,AI助手通过标准输入输出与之通信。
License
MIT License - see LICENSE
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file bibtex_ref_extractor-0.1.0.tar.gz.
File metadata
- Download URL: bibtex_ref_extractor-0.1.0.tar.gz
- Upload date:
- Size: 16.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1a23fa2547c08933581620cc6ee474f21e1b3345b1c242a963513776a244b888
|
|
| MD5 |
ef200e2285b6789727f3f591b8861195
|
|
| BLAKE2b-256 |
c8fa5e12318d97ac54ecb075708fa77140dd66bee29d5e68eccb7777ec95cdc5
|
File details
Details for the file bibtex_ref_extractor-0.1.0-py3-none-any.whl.
File metadata
- Download URL: bibtex_ref_extractor-0.1.0-py3-none-any.whl
- Upload date:
- Size: 20.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d1176ca48f488e0dc205096a4cedf5148d582b6b6054964c6041cf9b598708d0
|
|
| MD5 |
42557eb891534f8b5fd9f81c3b01ada5
|
|
| BLAKE2b-256 |
2dc809a92ae79e97abe33b431c0187df85ccedc04e4334d2d3ec82430c9d8271
|