基于FastMCP框架的专业文献搜索工具,支持多源搜索、文献详情、参考文献管理、文献关系分析、期刊质量评估和批量导出,适用于学术研究和AI集成。
基于FastMCP框架开发的专业文献搜索工具,支持多源文献搜索、文献详情获取、参考文献管理、文献关系分析、期刊质量评估和批量结果导出等功能,适用于学术研究和AI助手集成。
此 Skill 必须配置 API 密钥才能使用。
.env 中没有 XBY_APIKEY, 必须使用 AskUserQuestion 工具向用户询问 API 密钥scripts.config.set_api_key(api_key) 保存,然后继续处理你(大模型)是路由层,负责理解用户意图、选择工具、提取参数。代码只负责调用API。
text
用户输入 → 你选择工具 → 提取该工具需要的参数 → 调用 scripts.tools 中的函数 → 返回结果给用户
scripts.config.settings.api_key 为空,使用 AskUserQuestion 询问用户,拿到后调用 scripts.config.set_api_key(key) 保存scripts.tools 中的函数,例如 scripts.tools.search_schools(score='520', province='北京', category='综合')raw 数据整理后展示给用户根据用户意图选择对应的工具函数:
用户意图工具函数多源文献搜索工具。用于查找文献并获取 PMCID。
⚠️ 此工具只返回元数据(标题、作者、摘要、PMCID等),不包含全文内容。 如需获取全文,请使用返回结果中的 pmcid 调用"文献全文"工具。
搜索策略:
主要参数:
返回数据包含:标题、作者、期刊、摘要、PMCID、DOI等元数据(不含全文) | scripts.tools.search_literature |
| 获取文献全文工具。
前置条件:需要 PMCID 标识符
主要参数:
数据源:Europe PMC + PMC 全文数据库 返回数据包含标题、作者、摘要、期刊、发表日期和全文内容
全文功能:
批量返回结构: { "total": 10, # 总请求数 "successful": 8, # 成功获取数 "failed": 2, # 失败数 "articles": [...], # 成功的文章列表(含全文) "fulltext_stats": { # 全文统计 "has_pmcid": 8, # 有 PMCID 数量 "fulltext_fetched": 8 # 成功获取全文数量 } }
支持的章节名称:
scripts.tools.get_article_details |
| 获取参考文献工具。通过文献标识符获取其引用的参考文献列表,支持智能去重。主要参数:
支持的数据源:Europe PMC、CrossRef、PubMed
去重规则:优先按DOI去重,其次按标题去重;按数据源优先级排序 | scripts.tools.get_references |
| 文献关系分析工具。分析文献间的引用关系、相似文献和引用网络。
关系类型:
主要参数:
分析模式:
scripts.tools.get_literature_relations |
| 期刊质量评估工具。评估期刊的学术质量和影响力指标,集成 EasyScholar + OpenAlex 双数据源。支持的指标: EasyScholar 提供:impact_factor(影响因子)、quartile(SCI分区 Q1-Q4)、jci(JCI指数)、cas_zone(中科院分区)、cas_zone_top(TOP期刊标识) OpenAlex 提供:h_index(h指数)、citation_rate(2年引用率)、cited_by_count(总引用数)、works_count(总文章数)、i10_index(i10指数)
主要参数:
使用示例:单个期刊查询、批量期刊查询、批量查询并排序、指定返回指标 | scripts.tools.get_journal_quality |
如果参数不完整,使用 AskUserQuestion 向用户询问缺失的参数。
工具描述:多源文献搜索工具。用于查找文献并获取 PMCID。
⚠️ 此工具只返回元数据(标题、作者、摘要、PMCID等),不包含全文内容。 如需获取全文,请使用返回结果中的 pmcid 调用"文献全文"工具。
搜索策略:
主要参数:
返回数据包含:标题、作者、期刊、摘要、PMCID、DOI等元数据(不含全文)
参数名称参数类型是否必填默认值描述keywordstringtruenullsourcesnullfalsenullmax_resultsintegerfalse10.0nullsearch_typestringfalse"comprehensive"nulluse_cachebooleanfalsetruenull
工具描述:获取文献全文工具。
前置条件:需要 PMCID 标识符
主要参数:
数据源:Europe PMC + PMC 全文数据库 返回数据包含标题、作者、摘要、期刊、发表日期和全文内容
全文功能:
批量返回结构: { "total": 10, # 总请求数 "successful": 8, # 成功获取数 "failed": 2, # 失败数 "articles": [...], # 成功的文章列表(含全文) "fulltext_stats": { # 全文统计 "has_pmcid": 8, # 有 PMCID 数量 "fulltext_fetched": 8 # 成功获取全文数量 } }
支持的章节名称:
参数名称参数类型是否必填默认值描述pmcidnulltruenullsectionsnullfalsenullformatstringfalse"markdown"null
工具描述:获取参考文献工具。通过文献标识符获取其引用的参考文献列表,支持智能去重。
主要参数:
支持的数据源:Europe PMC、CrossRef、PubMed 去重规则:优先按DOI去重,其次按标题去重;按数据源优先级排序
参数名称参数类型是否必填默认值描述identifierstringtruenullid_typestringfalse"doi"nullsourcesnullfalsenullmax_resultsintegerfalse20.0nullinclude_metadatabooleanfalsetruenull
工具描述:文献关系分析工具。分析文献间的引用关系、相似文献和引用网络。
关系类型:
主要参数:
分析模式:
参数名称参数类型是否必填默认值描述identifiernullfalsenullidentifiersnullfalsenullid_typestringfalse"auto"nullrelation_typesnullfalsenullmax_resultsintegerfalse20.0nullsourcesnullfalsenullanalysis_typestringfalse"basic"nullmax_depthintegerfalse1.0null
工具描述:期刊质量评估工具。评估期刊的学术质量和影响力指标,集成 EasyScholar + OpenAlex 双数据源。
支持的指标: EasyScholar 提供:impact_factor(影响因子)、quartile(SCI分区 Q1-Q4)、jci(JCI指数)、cas_zone(中科院分区)、cas_zone_top(TOP期刊标识) OpenAlex 提供:h_index(h指数)、citation_rate(2年引用率)、cited_by_count(总引用数)、works_count(总文章数)、i10_index(i10指数)
主要参数:
使用示例:单个期刊查询、批量期刊查询、批量查询并排序、指定返回指标
参数名称参数类型是否必填默认值描述journal_namenulltruenullinclude_metricsnullfalsenulluse_cachebooleanfalsetruenullsort_bynullfalsenullsort_orderstringfalse"desc"null
工具函数返回 dict 对象:
result["raw"] - API 原始返回数据(JSON), 直接将此数据整理后展示给用户result["success"] - 是否成功(True/False)result["message"] - 状态消息text
xiaobenyang_gaokao_skill/
├── scripts/
│ ├── __init__.py
│ ├── config.py # 配置管理 + set_api_key()
│ ├── call_api.py # API 客户端 + call_api()
│ └── tools.py # 工具函数(直接调用)
├── requirements.txt
└── SKILL.md