Semantic Scholar API MCP Server

项目简介

本项目是一个基于 FastMCP 框架实现的 MCP 服务器插件,旨在为 LLM 应用提供学术论文搜索功能。通过集成 Semantic Scholar API,该插件允许 LLM 客户端调用工具搜索并获取学术论文的相关信息,从而增强 LLM 在学术研究领域的应用能力。

主要功能点

  • 学术论文搜索: 提供 'search_papers_via_semanticscholar' 工具,允许用户通过关键词检索 Semantic Scholar 数据库中的学术论文。
  • 结果过滤: 支持按年份范围(起始年份和结束年份)过滤搜索结果,提高检索精度。
  • 详细信息: 返回论文的标题、作者、发表年份、期刊/会议、被引次数、DOI 链接、摘要和 URL 等详细信息,并以 Markdown 格式呈现,方便 LLM 理解和展示。

安装步骤

  1. 确保已安装 Python 环境。
  2. 安装项目依赖:
    pip install fastmcp aiohttp pydantic uvicorn

服务器配置

要使 MCP 客户端能够连接到此 MCP 服务器,需要在客户端配置文件中添加服务器配置信息。以下是一个示例配置(JSON 格式):

{
  "semantic-scholar": {  // 服务器名称,可以自定义
    "command": "uv",     // 启动服务器的命令,这里使用 uv (更快的 Python 启动器,也可以使用 python)
    "args": [            // 启动命令的参数列表
      "run",             // uv 的 run 子命令
      "--with",          // 加载 fastmcp 插件
      "fastmcp",         // 指定使用 fastmcp 插件
      "fastmcp",         // 实际执行 fastmcp 命令
      "run",             // fastmcp 的 run 子命令,用于启动服务器
      "/path/to/semantic-scholar-plugin.py" //  **请替换为 semantic-scholar-plugin.py 文件的实际绝对路径**
    ]
  }
}

基本使用方法

  1. 启动 MCP 服务器:

    • 使用 'fastmcp dev path/to/semantic-scholar-plugin.py' 命令进行开发模式启动。
    • 或使用 'fastmcp run path/to/semantic-scholar-plugin.py' 命令运行服务器。
    • 也可以按照 README 中提供的配置,集成到 Claude 或其他支持 FastMCP 的客户端中。
  2. 在 MCP 客户端中,配置并连接到名为 "semantic-scholar" (或您在配置中设置的名称) 的服务器。

  3. 使用客户端提供的界面或指令,调用 'search_papers_via_semanticscholar' 工具,并提供相应的参数,例如:

    • 'keyword': 要搜索的关键词 (例如: "natural language processing")
    • 'limit': 返回结果的最大数量 (默认为 10, 最大 25)
    • 'year_from': 起始年份 (可选)
    • 'year_to': 结束年份 (可选)
  4. 服务器将返回 Markdown 格式的学术论文搜索结果。

注意: 请将配置文件中的 '/path/to/semantic-scholar-plugin.py' 替换为 'semantic-scholar-plugin.py' 文件在您系统中的实际绝对路径。

信息

分类

网页与API