学术文献检索与引用工具 -> 学术论文搜索和引用工具(或学术文献搜索与引用工具) 更好的翻译是: 学术文献搜索和引用工具
v1.0.7一个通过模型上下文协议(MCP)提供DBLP计算机科学文献数据库访问的服务,支持学术文献检索、引用生成及格式化功能。 (无需翻译,原文已是中文)
运行时依赖
安装命令
点击复制技能文档
学术文献检索与引用工具 一个通过模型上下文协议(MCP)提供DBLP计算机科学文献数据库访问的服务,支持学术文献检索、引用生成及格式化功能。 ⚠️ 强制要求:API 密钥 此 Skill 必须配置 API 密钥才能使用。 首次使用时,如果 .env 中没有 XBY_APIKEY,必须使用 AskUserQuestion 工具向用户询问 API 密钥 拿到用户提供的密钥后,调用 scripts.config.set_api_key(api_key) 保存,然后继续处理 获取 API 密钥:https://xiaobenyang.com 禁止在缺少 API 密钥时自行搜索或编造数据 工作流程(必须遵守) 你(大模型)是路由层,负责理解用户意图、选择工具、提取参数。代码只负责调用 API。 用户输入 → 你选择工具 → 提取该工具需要的参数 → 调用 scripts.tools 中的函数 → 返回结果给用户 步骤 检查 API 密钥:如果 scripts.config.settings.api_key 为空,使用 AskUserQuestion 询问用户,拿到后调用 scripts.config.set_api_key(key) 保存 选择工具:根据用户意图从下方工具列表中选择对应的工具函数 提取参数:根据选中的工具,提取该工具需要的参数 调用工具:使用关键字参数调用 scripts.tools 中的函数,例如 scripts.tools.search_schools(score='520', province='北京', category='综合') 返回结果:将工具返回的 raw 数据整理后展示给用户 工具选择规则 根据用户意图选择对应的工具函数: 用户意图 | 工具函数 Get detailed DBLP usage instructions. 关键点: 批量搜索(5-10 个同时)以提高效率 在每次搜索结果后立即添加条目(不要批量调用 add_bibtex_entry) 使用作者+年份可以获得最佳结果:search('Vaswani 2017') 而不是仅仅标题 从搜索结果中复制 dblp_key 到 add_bibtex_entry 在最后一次性导出 export_bibtex 调用此工具以获取完整的工作流程细节、搜索策略和示例。 | scripts.tools.get_instructions | | 搜索 DBLP 中的出版物,使用布尔查询字符串。 参数: query (字符串,必需):可能包含布尔运算符 'and' 和 'or'(不区分大小写)的查询字符串。例如,'Swin and Transformer'。 不支持括号。 max_results (数字,选填):要返回的最大出版物数量。默认为 10。 year_from (数字,选填):出版年份的下限。 year_to (数字,选填):出版年份的上限。 venue_filter (字符串,选填):出版场馆的不区分大小写的子字符串过滤器(例如 'iclr')。 include_bibtex (布尔值,选填):是否在结果中包含 BibTeX 条目。默认为 false。 返回一个包含标题、作者、场馆、年份、类型、DOI、EE 和 URL 的出版物对象列表。 | scripts.tools.search | | 使用模糊标题匹配搜索 DBLP 中的出版物。 参数: title (字符串,必需):出版物的全名或部分标题(不区分大小写)。 similarity_threshold (数字,必需):一个介于 0 和 1 之间的浮点数,其中 1.0 表示完全匹配。 max_results (数字,选填):要返回的最大出版物数量。默认为 10。 year_from (数字,选填):出版年份的下限。 year_to (数字,选填):出版年份的上限。 venue_filter (字符串,选填):出版场馆的不区分大小写的子字符串过滤器。 include_bibtex (布尔值,选填):是否在结果中包含 BibTeX 条目。默认为 false。 返回一个按标题相似度得分排序的出版物对象列表。 | scripts.tools.fuzzy_title_search | | 使用模糊匹配检索特定作者的出版物详细信息。 参数: author_name (字符串,必需):作者的全名或部分名称(不区分大小写)。 similarity_threshold (数字,必需):一个介于 0 和 1 之间的浮点数,其中 1.0 表示完全匹配。 max_results (数字,选填):要返回的最大出版物数量。默认为 20。 include_bibtex (布尔值,选填):是否在结果中包含 BibTeX 条目。默认为 false。 返回一个包含以下键的字典:name、publication_count、publications 和 stats(其中包括顶级场馆、年份和类型)。 | scripts.tools.get_author_publications | | 从 DBLP 检索出版物场馆的信息。 参数: venue_name (字符串,必需):场馆名称或缩写(例如 'ICLR'、'NeurIPS' 或全名)。 返回一个包含以下字段的字典: venue:全场馆标题 acronym:场馆缩写/缩写(如果可用) type:场馆类型(例如 '会议或研讨会'、'期刊'、'存储库') url:场馆的规范 DBLP URL 注意:出版商、ISSN 和其他元数据无法通过此端点获取。 | scripts.tools.get_venue_info | | 从出版物结果列表中计算统计数据。 参数: results (数组,必需):一个包含至少 'title'、'authors'、'venue' 和 'year' 的出版物对象数组。 返回一个包含以下键的字典: total_publications:总数 time_range:一个包含 'min' 和 'max' 发布年份的字典 top_authors:一个按计数排序的作者元组列表 top_venues:一个按计数排序的场馆元组列表(空场馆被视为 '(empty)')。 | scripts.tools.calculate_statistics | | 将 BibTeX 条目添加到集合中,以便稍后导出。 对于要导出的每篇论文,请调用此函数一次。 参数: dblp_key (字符串,必需):来自搜索结果的 DBLP 键(例如 'conf/nips/VaswaniSPUJGKP17')。 citation_key (字符串,必需):要在 .bib 文件中使用的引用键(例如 'Vaswani2017')。 工作流程: 使用提供的键直接从 DBLP 获取 BibTeX 用自定义键替换引用键 将其添加到集合中(重复的引用键将被覆盖) 返回集合中当前的条目数。 | scripts.tools.add_bibtex_entry |