Skip to main content

baidu-scholar-mcp

百度学术论文查询 MCP server:输入论文标题(支持部分标题/关键词)→ 搜索候选列表 → 调用方大模型挑选 → 返回该论文完整详情。

  • 纯标准库实现 stdio JSON-RPC,不依赖任何 MCP SDK,运行时仅需 curl-cffi
  • 内置反爬自愈:Chrome TLS 指纹模拟(curl_cffi)+ cookie 自举 + 多级重试,无需浏览器
  • 自带两套自测(爬虫 13 项 + MCP 协议 8 项),拿到代码一键验证环境可用性

⚠️ 免责声明:本项目为非官方工具,基于对百度学术公开网页接口的逆向分析实现, 仅供个人学习与研究使用。使用时请遵守目标网站的服务条款,禁止用于商业用途或高频抓取。 百度接口随时可能变更,不保证本工具持续可用;因使用本工具产生的任何问题由使用者自行承担。

MCP 工具

工具 说明
search_papers(query, max_results=10) 按标题搜索,返回候选列表:paperid、标题、作者+机构、年份、期刊卷期页、被引、关键词、截断摘要、知网/万方/维普等来源链接。恰好只命中 1 篇时自动附带 paper_detail
get_paper_detail(paperid) 完整摘要、关键词、作者、期刊(卷/期/页码/ISSN/CN)、被引、DOI、基金、阅读量、研究领域、全部外部全文链接
get_paper_citations(paperid, cite_type) 参考文献(reference)/ 引证文献(citation)列表

典型调用流程(由调用方大模型完成"挑选"):search_papers("新技术革命下人工智能与高质量增长") → 从候选里选最匹配的 paperid → get_paper_detail(paperid)

安装与配置

方式一:uvx(推荐,零安装)

发布到 PyPI 后,MCP 客户端配置一行即可(uv 会自动拉取并隔离运行):

{
  "mcpServers": {
    "baidu-scholar": { "command": "uvx", "args": ["baidu-scholar-mcp"] }
  }
}

方式二:pip 安装后直接作命令

pip install baidu-scholar-mcp
{ "command": "baidu-scholar-mcp" }

方式三:源码运行

git clone https://github.com/<you>/baidu-scholar-mcp.git
pip install curl-cffi
{
  "command": "<你的python解释器>",
  "args": ["<仓库路径>/baidu_scholar/mcp_server.py"]
}

Windows 注意:Python 3.12+ 无 distutils,若同时安装可选的浏览器兜底依赖 undetected-chromedriver,需先 pip install setuptools

自测

python tests/test_client.py        # 爬虫 13 项检查,应"全部通过"(需联网)
python tests/test_mcp_server.py    # MCP 协议 8 项检查,应"全部通过"

调试时可设环境变量 BAIDU_SCHOLAR_VERBOSE=1 查看过程日志(stderr)。

反爬实现要点

百度学术已全面 SPA 化,数据全走 JSON 接口,本客户端直接调接口(2026-09 逆向实测):

  • 搜索 GET /usercenter/paper/search?type=related&wd=<标题>&rn=20&page_no=N 详情 GET /scholarai/paper/detail/info?paperId=<id> 引文 同搜索接口,wd=citepaperuri:(<id>) / refpaperuri:(<id>)
  • 新版搜索接口 /search/api/search 必须携带混淆 JS 生成的 acs-token,已弃用,上述老接口数据等价。
  • TLS 指纹是核心风控点:python-requests 的 OpenSSL 指纹无论带什么 cookie 都会被 /usercenter 系列接口拒(206 + "请输入验证码"),必须用 curl_cffi impersonate='chrome'
  • cookie 自举无需浏览器:先 GET https://www.baidu.com/ 拿 5 条 Set-Cookie (BAIDUID/BIDUPSID/PSTM 等)即可通过风控;详情接口更宽松,单条 BAIDUID 就够。
  • 风控自愈阶梯:请求被拦 → 重新 cookie 自举重试 → (可选)无头浏览器收割 cookie → 报错。
  • 数据坑已处理:机构字段内嵌 \u0001 分隔符、<em> 高亮标签、"查看全部>>"截断尾巴; 搜索接口摘要服务端截断,完整摘要由详情接口补全。

已知限制

  • 任意乱词百度都会模糊匹配出结果,调用方需自行比对标题相关性。
  • 论文本身没有参考文献/引文数据时,get_paper_citations 返回业务错误 code=1001,属正常现象。
  • 接口为非官方逆向所得,若百度调整风控或字段结构,优先重新抓包核对 baidu_scholar/scholar_client.py 顶部的接口说明。

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

baidu_scholar_mcp-0.1.0.tar.gz (19.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

baidu_scholar_mcp-0.1.0-py3-none-any.whl (16.0 kB view details)

Uploaded Python 3

File details

Details for the file baidu_scholar_mcp-0.1.0.tar.gz.

File metadata

  • Download URL: baidu_scholar_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 19.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.4

File hashes

Hashes for baidu_scholar_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 4ad7e2d972b97d8e9e65af08469a2fb8acc87281c9abd2b0ad78a35afa034d7d
MD5 c1f1a9499da80140ce675519257bd15a
BLAKE2b-256 c80a6415a326dd279b1a7efac9bd48f234f1693ce45950ca814d56699f51e77d

See more details on using hashes here.

File details

Details for the file baidu_scholar_mcp-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for baidu_scholar_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 989b29c162f8ca12e32882a753e1b0bf1fd490d9e90d80d8efedd0093e5653b2
MD5 c634cdf31b6f0b8535d449df0d4ce8c8
BLAKE2b-256 744b90c17deb286b9ad3618e5b0a89bc31c48f58482cd44603aed678daa83b7c

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page