Token导航 LogoToken导航TokenDH.com
refcheck (Benchoi93) logo
搜索检索stdio官方级别未说明来源级核验

refcheck (Benchoi93)

MCP Server

用于验证学术引用的真实性,提供数据库支持的引用检查和BibTeX导出功能。

工具数

3

提示词数

0

GitHub Stars

2

资源数

0
PythonClaude搜索Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

benchoi93

提供方

benchoi93

最后核验

2026/5/17 20:21

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install refcheck-mcp

详细介绍

重新检查

](https://pypi.org/project/refcheck-mcp/) ![Python 3.11+](https://pypi.org/project/refcheck-mcp/) ![License: MIT](https://opensource.org/licenses/MIT) ![MCP Registry](https://registry.modelcontextprotocol.io/v0.1/servers?search=io.github.benchoi93/refcheck)

人工智能助理的学术参考验证。

主控程序 将学术引文与真实出版物数据库进行交叉检查的服务器。它捕获幻觉参考,查找关于某个主题的真实论文,并导出可发布的BibTeX——所有这些都可以从Claude Code、Claude Desktop或任何兼容MCP的客户端中导出。

问题

大型语言模型经常使学术引用产生幻觉:看似合理的引用,带有捏造的标题、作者、DOI或场所。论文或资助提案中的一个幻觉引用可能会破坏可信度。

重新检查 通过让你的AI助手直接访问Crossref、Semantic Scholar和arXiv来解决这个问题。它返回的每个引用都有一个真实的数据库记录作为支持。

它的作用

工具目的
verify_reference检查引文是否真实。退货 verified, partial_match,或 not_found 具有置信度得分和校正的BibTeX。
search_references查找关于某一主题的真实论文。从不捏造,只返回数据库支持的结果。
get_bibtex按DOI、标题或语义学者ID导出已准备好发布的BibTeX。支持批量导出。

快速开始

1.安装

pip install refcheck-mcp

或者从源代码安装:

git clone https://github.com/benchoi93/refcheck.git
cd refcheck
pip install -e .

要求: Python 3.11+

2.配置克劳德代码

添加到您的克劳德代码设置(~/.claude.json):

{
  "mcpServers": {
    "refcheck": {
      "command": "python",
      "args": ["-m", "refcheck"],
      "env": {
        "CROSSREF_EMAIL": "you@university.edu"
      }
    }
  }
}

3.使用它

> Verify this reference: Li, Y., Yu, R., Shahabi, C., & Liu, Y. (2018).
  Diffusion convolutional recurrent neural network: Data-driven traffic
  forecasting. ICLR 2018.

> Find me 5 recent papers on physics-informed neural networks for traffic
  state estimation and get their BibTeX.

> Get BibTeX for DOI 10.1016/j.trc.2024.104873

> Verify all references in my refs.bib and replace any incorrect entries
  with the corrected BibTeX.

工具

verify_reference

通过查询多个数据库并对结果进行模糊匹配来检查引文是否真实。

参数:

参数类型必填说明
titlestr至少一个 titledoi论文标题
authorslist[str]作者姓名(姓氏足够)
yearint出版年份
doistr至少一个 titledoiDOI字符串
venuestr期刊或会议名称

验证管道:

  1. DOI查找 (如果提供)--通过Crossref解决。DOI匹配已接近确定验证。
  2. 标题搜索 --并行查询所有可用数据库。
  3. 模糊匹配 --根据标题相似性(标记集比率)、作者重叠(姓氏为Jaccard)、年份匹配(+/-1容差)和地点相似性对每个候选人进行评分。
  4. 裁决 --加权综合得分产生分类:
判决得分含义
verified>=0.85参考真实准确的置信度高
partial_match0.50-0.85存在类似的论文,但某些领域不同
not_found\<0.50任何数据库中都没有匹配项。可能是幻觉。

自动BibTeX校正: 当判决是 verifiedpartial_match,响应包括 corrected_bibtex 从匹配的纸张中选择正确的BibTeX条目。这意味着一次调用既能检测错误,又能提供修复。

示例响应(部分匹配):

{
  "verdict": "partial_match",
  "confidence": 0.72,
  "matched_reference": {
    "title": "Attention is All You Need",
    "authors": ["Ashish Vaswani", "Noam Shazeer", "..."],
    "year": 2017,
    "doi": "10.48550/arXiv.1706.03762",
    "venue": "Advances in Neural Information Processing Systems",
    "url": "https://doi.org/10.48550/arXiv.1706.03762"
  },
  "discrepancies": ["Year mismatch: claimed 2018, found 2017"],
  "sources_checked": ["crossref", "semantic_scholar", "arxiv"],
  "corrected_bibtex": "@article{vaswani2017attention,\n  author = {Vaswani, Ashish and ...},\n  title = {Attention is All You Need},\n  year = {2017},\n  doi = {10.48550/arXiv.1706.03762},\n}"
}

search_references

在所有配置的数据库中搜索真实论文。结果通过DOI和标题相似性进行重复数据消除。

参数:

参数类型默认值说明
querystr*必需的*搜索主题或关键字
max_resultsint10结果数量(1-30)
year_fromint最早出版年份
year_toint最新出版年份
databaseslist[str]全部可用要查询哪些数据库

每个结果包括: 标题、作者、年份、DOI、地点、摘要(截断)、URL和源数据库。

get_bibtex

生成经过验证的BibTeX条目。更喜欢Crossref内容协商(发布者质量BibTeX),并在需要时回退到元数据构建。

参数(提供一个):

参数类型说明
doistr单一DOI
doislist[str]多个DOI(批处理模式)
titlestr论文标题(先搜索和验证)
semantic_scholar_idstr语义学者论文ID

示例——批量DOI导出:

get_bibtex(dois=["10.1016/j.trc.2024.104873", "10.48550/arXiv.1706.03762"])

返回连接好的BibTeX条目,准备附加到 .bib 文件:

@article{vaswani2017attention,
  author        = {Vaswani, Ashish and Shazeer, Noam and Parmar, Niki and ...},
  title         = {Attention is All You Need},
  journal       = {Advances in Neural Information Processing Systems},
  year          = {2017},
  doi           = {10.48550/arXiv.1706.03762},
  url           = {https://doi.org/10.48550/arXiv.1706.03762},
}

BibTeX惯例:

  • 引用关键字如下 {lastname}{year}{keyword} 格式(例如。, vaswani2017attention)
  • 首字母缩略词和专有名词被包裹在 {} 保持资本化
  • 条目类型从元数据中推断出来(@article, @inproceedings, @misc等等)
  • 田地从来不是捏造的。缺失的数据(例如页码)被省略而不是猜测。

数据库

refcheck并行查询多个学术数据库。它在没有API密钥的情况下开箱即用-Crossref和arXiv是免费的,未经验证。添加可选密钥可以解锁额外的源和更好的速率限制。

数据库所需密钥覆盖范围注释
Crossref156M+DOI注册出版物DOI骨干。集 CROSSREF_EMAIL 以获得更快的速率限制。
语义学者没有2亿+篇论文覆盖范围最广。建议使用免费API密钥。
arXiv250万+预印本对最近的ML/CS工作至关重要。强制执行3s速率限制。
垃圾90M+记录Elsevier API密钥+可选机构令牌。
IEEE Xplore。IEEE/IET出版物免费等级:每天200个请求。

服务器在 降级模式 当密钥丢失时,它会跳过不可用的API并报告检查了哪些源。

配置

复制示例env文件并填写密钥:

cp .env.example .env

然后编辑 .env:

# Strongly recommended — enables Crossref "polite pool" (~50 req/sec)
CROSSREF_EMAIL=you@university.edu

# Recommended — free key from https://www.semanticscholar.org/product/api
S2_API_KEY=your-s2-key

# Optional — Elsevier API key from https://dev.elsevier.com/
ELSEVIER_KEY=
# Optional — Elsevier institutional token (higher rate limits)
ELSEVIER_INSTTOKEN=

# Optional — free key from https://developer.ieee.org/
IEEE_API_KEY=

.env 文件被标记为无效。服务器在启动时通过以下方式自动加载 python-dotenv.

或者,您可以直接设置环境变量或将其传递给 env MCP服务器配置块 ~/.claude.json.

建筑

refcheck/
├── src/refcheck/              # Python package
│   ├── __init__.py            # Package version
│   ├── __main__.py            # python -m refcheck entry point
│   ├── server.py              # FastMCP server, three tool definitions
│   ├── clients/
│   │   ├── __init__.py        # Client protocol & registry
│   │   ├── crossref.py        # Crossref: DOI lookup, title search, BibTeX export
│   │   ├── semantic_scholar.py # Semantic Scholar: keyword search, paper lookup
│   │   ├── arxiv.py           # arXiv: title/keyword search, XML parsing
│   │   ├── scopus.py          # Scopus: search with API key (optional)
│   │   └── ieee.py            # IEEE Xplore: search with API key (optional)
│   ├── matching.py            # Fuzzy matching: title, author, year, venue scoring
│   ├── bibtex.py              # BibTeX generation, formatting, citation keys
│   ├── models.py              # Pydantic v2 input/output models
│   └── config.py              # Environment variable management
├── pyproject.toml             # Package metadata & dependencies
├── server.json                # MCP Registry metadata
└── requirements.txt           # Pinned dependencies (alternative to pyproject.toml)

关键设计决策:

  • 异步贯穿始终 -所有API调用都使用 httpx.AsyncClient 超时10秒。
  • 并行查询 --通过以下方式同时查询多个数据库 asyncio.gather.
  • 优雅降级 -一个失败的API永远不会阻止其他API。错误记录到stderr,响应指示检查了哪些源。
  • 从不捏造 --如果没有找到匹配项,该工具会这样说。BibTeX字段会被省略而不是猜测。

用例

  • 写论文 --提交前核实每一条引文。抓住错误的年份、拼写错误的作者或完全捏造的参考文献。部分匹配会自动返回更正的BibTeX。
  • 修复.bib文件 --批量验证引用,并在一次传递中用数据库支持的更正的BibTeX替换不正确的条目。
  • 文献综述 --搜索某个主题的真实论文,一步即可获得BibTeX。
  • 拨款建议 --确保所有引用的先前工作确实存在。
  • 教学 --帮助学生核实作业中的引用。
  • 批量BibTeX导出 --从草稿中收集DOI并导出干净的DOI .bib 文件。

局限性

  • 覆盖差距 --一些利基出版物可能不会出现在查询的数据库中。A. not_found 结果并不能保证纸张是假的;它可能存在于未涵盖的数据库中(例如,PubMed用于生物医学,DBLP用于CS)。
  • 元数据质量 --由元数据构造的BibTeX(当Crossref内容协商不可用时)可能缺少页码或卷等字段。
  • 费率限制 --arXiv在请求之间强制执行3秒的延迟。IEEE免费等级限制为每天200个请求。
  • 没有谷歌学者 -没有官方的谷歌学者API。Crossref+Semantic Scholar+arXiv的现有覆盖范围更广、更可靠。

许可证

麻省理工学院

引用

如果您在研究工作流程中使用refcheck,请提及:

refcheck: Academic Reference Verification MCP Server
https://github.com/benchoi93/refcheck

目录标签

目录标签

PythonClaude搜索学术引用验证本地部署BibTeX导出文献检索AI辅助工具

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

api-key

工具数量(toolCount,工具数)

3

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdioapi-key部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP