返回市场
MCP-学术论文数据库服务器

MCP-学术论文数据库服务器

作者:szeider15 星标更新:2025-11-23

项目介绍

MCP-DBLP

MCP 兼容 MIT 许可证 Python 版本

一个通过模型上下文协议(MCP)集成DBLP计算机科学文献数据库的服务器,供大型语言模型使用。

<a href="https://glama.ai/mcp/servers/cm42scf3iv"> <img width="380" height="200" src="https://gips3.baidu.com/it/u=672547897,2500334884&fm=3081&app=3081&f=PNG?w=760&h=400" alt="MCP-DBLP MCP 服务器" /> </a>

概述

MCP-DBLP 通过模型上下文协议将 DBLP(数字文献与图书馆项目)API 集成到 LLM 中,使 AI 模型能够:

  • 在 DBLP 数据库中搜索并检索学术出版物
  • 处理引用并生成 BibTeX 条目
  • 对出版物标题和作者姓名进行模糊匹配
  • 提取并格式化文献信息
  • 处理文档中的嵌入式引用
  • 直接导出 BibTeX 条目,绕过 LLM 处理以确保最大准确性

功能

  • 使用布尔查询的全面搜索能力
  • 标题和作者姓名的模糊匹配
  • 直接从 DBLP 获取 BibTeX 条目
  • 按年份和会议地点过滤出版物
  • 出版数据的统计分析
  • 直接导出 BibTeX 条目,绕过 LLM 处理以确保最大准确性

可用工具

工具名称描述
get_instructions获取使用说明和工作流程指导
search使用布尔查询在 DBLP 中搜索出版物
fuzzy_title_search使用模糊标题匹配搜索出版物
get_author_publications检索特定作者的出版物
get_venue_info获取关于出版物会议地点的详细信息
calculate_statistics从出版物结果生成统计数据
add_bibtex_entry通过 DBLP 键添加 BibTeX 条目到集合中
export_bibtex将收集的所有 BibTeX 条目导出到 .bib 文件中

反馈

通过此 表单 向作者提供反馈。

系统需求

  • Python 3.11+
  • uv

安装

Claude Code

只需运行:

claude mcp add mcp-dblp -- uvx mcp-dblp

Claude Desktop

添加到您的 Claude Desktop 配置文件中:

  • macOS/Linux: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "mcp-dblp": {
      "command": "uvx",
      "args": ["mcp-dblp"]
    }
  }
}

从源码安装(开发)

git clone https://github.com/szeider/mcp-dblp.git
cd mcp-dblp
uv venv && source .venv/bin/activate
uv pip install -e .

然后配置 Claude Desktop:

{
  "mcpServers": {
    "mcp-dblp": {
      "command": "uv",
      "args": ["--directory", "/path/to/mcp-dblp/", "run", "mcp-dblp"]
    }
  }
}

使用说明

使用说明可通过 get_instructions 工具获取。关键的工作流程点在工具描述中显示;调用该工具以获取完整细节。另见 instructions_prompt.md

工具详情

search

使用布尔查询字符串在 DBLP 中搜索出版物。

参数:

  • query (字符串,必需):可能包括布尔运算符 'and' 和 'or'(不区分大小写)的查询字符串
  • max_results (数字,可选):返回的最大出版物数量,默认为 10
  • year_from (数字,可选):出版年份的下限
  • year_to (数字,可选):出版年份的上限
  • venue_filter (字符串,可选):用于出版物会议地点的不区分大小写的子串过滤器(例如,'iclr')
  • include_bibtex (布尔值,可选):是否在结果中包含 BibTeX 条目,默认为 false

fuzzy_title_search

使用模糊标题匹配在 DBLP 中搜索出版物。

参数:

  • title (字符串,必需):出版物的完整或部分标题(不区分大小写)
  • similarity_threshold (数字,必需):介于 0 和 1 之间的浮点数,1.0 表示完全匹配
  • max_results (数字,可选):返回的最大出版物数量,默认为 10
  • year_from (数字,可选):出版年份的下限
  • year_to (数字,可选):出版年份的上限
  • venue_filter (字符串,可选):用于出版物会议地点的不区分大小写的子串过滤器
  • include_bibtex (布尔值,可选):是否在结果中包含 BibTeX 条目,默认为 false

get_author_publications

检索特定作者的出版物详情,使用模糊匹配。

参数:

  • author_name (字符串,必需):作者的完整或部分姓名(不区分大小写)
  • similarity_threshold (数字,必需):介于 0 和 1 之间的浮点数,1.0 表示完全匹配
  • max_results (数字,可选):返回的最大出版物数量,默认为 20
  • include_bibtex (布尔值,可选):是否在结果中包含 BibTeX 条目,默认为 false

get_venue_info

检索关于出版物会议地点的详细信息。

参数:

  • venue_name (字符串,必需):会议地点名称或缩写(例如,'ICLR' 或全名)

calculate_statistics

从一系列出版物结果计算统计数据。

参数:

  • results (数组,必需):每个对象至少包含 'title'、'authors'、'venue' 和 'year' 的出版物对象数组

add_bibtex_entry

将 BibTeX 条目添加到集合中以便后续导出。

参数:

  • dblp_key (字符串,必需):来自搜索结果的 DBLP 键(例如,"conf/nips/VaswaniSPUJGKP17")
  • citation_key (字符串,必需):在 .bib 文件中使用的引文键(例如,"Vaswani2017")

行为:

  • 使用提供的键直接从 DBLP 获取 BibTeX 条目
  • 替换引文键为您自定义的键
  • 添加到会话集合中(重复的键会被覆盖)
  • 返回立即的成功/失败反馈及集合计数
  • 允许对个别失败条目重试

export_bibtex

将所有收集的 BibTeX 条目导出到 .bib 文件中。

参数:

  • path (字符串,必需):.bib 文件的绝对路径(例如,"/path/to/refs.bib")

行为:

  • 将通过 add_bibtex_entry 添加的所有条目保存到指定路径
  • 如果缺失,则自动添加 .bib 扩展名
  • 如需创建父目录
  • 成功导出后清除集合
  • 返回保存文件的完整路径
  • 如果集合为空则返回错误

重要提示: BibTeX 条目直接从 DBLP 获取,并带有 10 秒超时保护,未经 LLM 处理、修改或虚构。这确保了文献数据的最大准确性和可信度。仅按指定修改引文键。如果请求超时,则返回错误消息且条目不会被添加到集合中。


示例

输入文本:

我们的探索集中在两种解释问题类型,归纳性和对比性,在局部和全局环境中(Marques-Silva 2023)。归纳性解释(Ignatiev, Narodytska, and Marques-Silva 2019),对应于主项解释(Shih, Choi, and Darwiche 2018)和充分理由解释(Darwiche and Ji 2022),阐明了具体的决策实例,而对比性解释(Miller 2019; Ignatiev et al. 2020),对应于必要理由解释(Darwiche and Ji 2022),明确指出了未选择替代方案的原因。相反,全局解释(Ribeiro, Singh, and Guestrin 2016; Ignatiev, Narodytska, and Marques-Silva 2019)旨在揭示模型在各种输入下的决策模式。

输出文本:

我们的探索集中在两种解释问题类型,归纳性和对比性,在局部和全局环境中 \cite{MarquesSilvaI23}。归纳性解释 \cite{IgnatievNM19},对应于主项解释 \cite{ShihCD18} 和充分理由解释 \cite{DarwicheJ22},阐明了具体的决策实例,而对比性解释 \cite{Miller19}; \cite{IgnatievNA020},对应于必要理由解释 \cite{DarwicheJ22},明确指出了未选择替代方案的原因。相反,全局解释 \cite{Ribeiro0G16}; \cite{IgnatievNM19}旨在揭示模型在各种输入下的决策模式。

输出 BibTeX

所有引用已成功导出到 BibTeX 文件:/absolute/path/to/bibtex/20250305_231431.bib

@article{MarquesSilvaI23,
 author       = {Jo{\~{a}}o Marques{-}Silva and
                 Alexey Ignatiev},
 title        = {No silver bullet: interpretable {ML} models must be explained},
 journal      = {Frontiers Artif. Intell.},
 volume       = {6},
 year         = {2023},
 url          = {https://doi.org/10.3389/frai.2023.1128212},
 doi          = {10.3389/FRAI.2023.1128212},
 timestamp    = {Tue, 07 May 2024 20:23:47 +0200},
 biburl       = {https://dblp.org/rec/journals/frai/MarquesSilvaI23.bib},
 bibsource    = {dblp computer science bibliography, https://dblp.org}
}

@inproceedings{IgnatievNM19,
 author       = {Alexey Ignatiev and
                 Nina Narodytska and
                 Jo{\~{a}}o Marques{-}Silva},
 title        = {Abduction-Based Explanations for Machine Learning Models},
 booktitle    = {The Thirty-Third {AAAI} Conference on Artificial Intelligence, {AAAI}
                 2019, The Thirty-First Innovative Applications of Artificial Intelligence
                 Conference, {IAAI} 2019, The Ninth {AAAI} Symposium on Educational
                 Advances in Artificial Intelligence, {EAAI} 2019, Honolulu, Hawaii,
                 USA, January 27 - February 1, 2019},
 pages        = {1511--1519},
 publisher    = {{AAAI} Press},
 year         = {2019},
 url          = {https://doi.org/10.1609/aaai.v33i01.33011511},
 doi          = {10.1609/AAAI.V33I01.33011511},
 timestamp    = {Mon, 04 Sep 2023 12:29:24 +0200},
 biburl       = {https://dblp.org/rec/conf/aaai/IgnatievNM19.bib},
 bibsource    = {dblp computer science bibliography, https://dblp.org}
}

@inproceedings{ShihCD18,
 author       = {Andy Shih and
                 Arthur Choi and
                 Adnan Darwiche},
 editor       = {J{\'{e}}r{\^{o}}me Lang},
 title        = {A Symbolic Approach to Explaining Bayesian Network Classifiers},
 booktitle    = {Proceedings of the Twenty-Seventh International Joint Conference on
                 Artificial Intelligence, {IJCAI} 2018, July 13-19, 2018, Stockholm,
                 Sweden},
 pages        = {5103--5111},
 publisher    = {ijcai.org},
 year         = {2018},
 url          = {https://doi.org/10.24963/ijcai.2018/708},
 doi          = {10.24963/IJCAI.2018/708},
 timestamp    = {Tue, 20 Aug 2019 16:19:08 +0200},
 biburl       = {https://dblp.org/rec/conf/ijcai/ShihCD18.bib},
 bibsource    = {dblp computer science bibliography, https://dblp.org}
}

@inproceedings{DarwicheJ22,
 author       = {Adnan Darwiche and
                 Chunxi Ji},
 title        = {On the Computation of Necessary and Sufficient Explanations},
 booktitle    = {Thirty-Sixth {AAAI} Conference on Artificial Intelligence, {AAAI}
                 2022, Thirty-Fourth Conference on Innovative Applications of Artificial
                 Intelligence, {IAAI} 2022, The Twelveth Symposium on Educational Advances
                 in Artificial Intelligence, {EAAI} 2022 Virtual Event, February 22
                 - March 1, 2022},
 pages        = {5582--5591},
 publisher    = {{AAAI} Press},
 year         = {2022},
 url          = {https://doi.org/10.1609/aaai.v36i5.20498},
 doi          = {10.1609/AAAI.V36I5.20498},
 timestamp    = {Mon, 04 Sep 2023 16:50:24 +0200},
 biburl       = {https://dblp.org/rec/conf/aaai/DarwicheJ22.bib},
 bibsource    = {dblp computer science bibliography, https://dblp.org}
}

@article{Miller19,
 author       = {Tim Miller},
 title        = {Explanation in artificial intelligence: Insights from the social sciences},
 journal      = {Artif. Intell.},
 volume       = {267},
 pages        = {1--38},
 year         = {2019},
 url          = {https://doi.org/10.1016/j.artint.2018.07.007},
 doi          = {10.1016/J.ARTINT.2018.07.007},
 timestamp    = {Thu, 25 May 2023 12:52:41 +0200},
 biburl       = {https://dblp.org/rec/journals/ai/Miller19.bib},
 bibsource    = {dblp computer science bibliography, https://dblp.org}
}

@inproceedings{IgnatievNA020,
 author       = {Alexey Ignatiev and
                 Nina Narodytska and
                 Nicholas Asher and
                 Jo{\~{a}}o Marques{-}Silva},
 editor       = {Matteo Baldoni and
                 Stefania Bandini},
 title        = {From Contrastive to Abductive Explanations and Back Again},
 booktitle    = {AIxIA 2020 - Advances in Artificial Intelligence - XIXth International
                 Conference of the Italian Association for Artificial Intelligence,
                 Virtual Event, November 25-27, 2020, Revised Selected Papers},
 series       = {Lecture Notes in Computer Science},
 volume       = {12414},
 pages        = {335--355},
 publisher    = {Springer},
 year         = {2020},
 url          = {https://doi.org/10.1007/978-3-030-77091-4\_21},
 doi          = {10.1007/978-3-030-77091-4\_21},
 timestamp    = {Tue, 15 Jun 2021 17:23:54 +0200},
 biburl       = {https://dblp.org/rec/conf/aiia/IgnatievNA020.bib},
 bibsource    = {dblp computer science bibliography, https://dblp.org}
}

@inproceedings{Ribeiro0G16,
 author