mcpField
M
mcp-scholarly MCP server

mcp-scholarly MCP server

本地服务
github.com/adityak74搜索与检索1859 周前更新

关于 mcp-scholarly MCP server

mcp-scholarly 是一个 MCP 服务,用于检索学术论文。它目前整合了 arXiv、Google Scholar 与可选的 Google 网页搜索,并计划接入更多学术数据源。它适合需要查找相关文献的用户与 Agent。

主要功能

  1. 01arXiv 论文搜索,无需 API 密钥
  2. 02Google Scholar 搜索
  3. 03可选的 Google 网页搜索,需配置 API 密钥
  4. 04空关键词返回工具错误而非空结果

适用场景

  1. 01检索与某个关键词相关的学术论文
  2. 02为 Agent 提供文献检索能力

MCP 相关

作为 MCP 服务,向 MCP 客户端暴露 search-arxiv 等搜索工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"scholarly": {
"command": "npx",
"args": [
"-y",
"@smithery/cli"
]
}
}
}
启动命令npx -y @smithery/cli

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@smithery/cli

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

MseeP.ai Security Assessment Badge

mcp-scholarly MCP 服务

smithery badge

一个用于搜索准确学术文章的 MCP 服务。即将添加更多学术出版商。

搜索工具

  • search-arxiv — arXiv 搜索(无需密钥)
  • search-google-scholar — 通过 scholarly 库搜索 Google Scholar(免费代理池)
  • search-google-web — 通过 SerpBase API 搜索 Google 网页。可选;仅在设置 SERPBASE_API_KEY 时注册。可在 https://serpbase.dev/dashboard/api-keys 获取密钥(提供免费套餐)。

demo1.jpeg

image

Scholarly Server MCP server

star-history-202551

组件

工具

该服务实现了一个工具:

  • search-arxiv:搜索与给定关键词相关的 arxiv 文章。
    • 将“keyword”作为必需的字符串参数

快速开始

安装
Claude Desktop

在 MacOS 上:~/Library/Application\ Support/Claude/claude_desktop_config.json 在 Windows 上:%APPDATA%/Claude/claude_desktop_config.json

开发版/未发布服务配置 ``` "mcpServers": { "mcp-scholarly": { "command": "uv", "args": [ "--directory", "/Users/adityakarnam/PycharmProjects/mcp-scholarly/mcp-scholarly", "run", "mcp-scholarly" ] } } ```
已发布服务配置 ``` "mcpServers": { "mcp-scholarly": { "command": "uvx", "args": [ "mcp-scholarly" ] } } ```

或者,如果你使用 Docker

已发布 Docker 服务配置 ``` "mcpServers": { "mcp-scholarly": { "command": "docker", "args": [ "run", "--rm", "-i", "mcp/scholarly" ] } } ```
通过 Smithery 安装

要通过 Smithery 自动为 Claude Desktop 安装 mcp-scholarly:

npx -y @smithery/cli install mcp-scholarly --client claude

开发

构建和发布

准备分发软件包:

  1. 同步依赖项并更新锁定文件:
uv sync
  1. 构建软件包分发文件:
uv build

这将在 dist/ 目录中创建源代码分发包和 wheel 分发包。

  1. 发布到 PyPI:
uv publish

注意:你需要通过环境变量或命令标志设置 PyPI 凭据:

  • 令牌:--token 或 UV_PUBLISH_TOKEN
  • 或用户名/密码:--username/UV_PUBLISH_USERNAME 和 --password/UV_PUBLISH_PASSWORD
调试

由于 MCP 服务通过 stdio 运行,调试可能颇具挑战。为获得最佳调试体验,我们强烈建议使用 MCP Inspector。

你可以通过 npm 使用以下命令启动 MCP Inspector:

npx @modelcontextprotocol/inspector uv --directory /Users/adityakarnam/PycharmProjects/mcp-scholarly/mcp-scholarly run mcp-scholarly

启动后,Inspector 会显示一个 URL,你可以在浏览器中访问该地址以开始调试。

在 zorp 中使用

zorp 需要一个支持搜索的 MCP 工具,才能运行 validate。本服务满足这一检查,因为 zorp 会匹配工具名称中的搜索动词,而这些工具分别名为 search-arxiv 和 search-google-scholar。

zorp-agent --yes \
  --mcp "stdio:scholarly:uv:run:mcp-scholarly" \
  validate "<your research question>"

也可以只配置一次,让每次运行都自动使用:

# .zorp/mcp.toml
[[server]]
name = "scholarly"
transport = "stdio"
command = "uv"
args = ["run", "mcp-scholarly"]
trust = "sandbox"
timeout_secs = 60

以下说明基于 zorp 的传输方式实测得出,而非假设:

  • search-arxiv 大约 1 秒即可返回。zorp 默认的 stdio 读取时限为 30 秒,因此默认设置很宽裕。上面的 timeout_secs = 60 为 search-google-scholar 留出了余量;它通过 scholarly 和免费代理池运行,结果远不那么可预测。
  • 日志会写入 stderr。只有 JSON-RPC 会到达 stdout,这符合 zorp 对以换行符分隔的帧格式的要求。
  • 如果关键词为空,工具会返回 MCP 工具错误,而不是空结果集。zorp 很在意这一区别:如果搜索失败却看起来像是“没有先前研究”,就会导致证据记录中的新颖性评分有误。
  • arxiv 会尽力为任何查询返回匹配结果,包括毫无意义的查询,因此结果集非空本身并不能证明存在先前研究。工具描述中对此作了说明,因为模型读取的正是这段文字。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。