Token导航 LogoToken导航TokenDH.com
Semantic Scholar Fastmcp MCP Server logo
搜索检索stdio官方级别未说明来源级核验

Semantic Scholar Fastmcp MCP Server

MCP Server

一个为Semantic Scholar API实现的FastMCP服务器,提供全面的学术论文数据、作者信息和引用网络访问。

工具数

16

提示词数

0

GitHub Stars

137

资源数

0
搜索PythonClaude批量操作Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

zongmin-yu

提供方

zongmin-yu

最后核验

2026/5/17 20:21

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install semantic-scholar-fastmcp

详细介绍

](https://mseep.ai/app/zongmin-yu-semantic-scholar-fastmcp-mcp-server)

语义学者MCP服务器

](https://smithery.ai/server/semantic-scholar-fastmcp-mcp-server)

语义学者API的FastMCP服务器实现,提供对学术论文数据、作者信息和引用网络的全面访问。

正在寻找Claude Code技能? 结账 语义学者技能 --下一代工具包,将此MCP服务器与现成的Claude Code技能捆绑在一起(/expand-references, /trace-citations, /paper-triage)以及Python工作流引擎。

项目结构

该项目已被重构为模块化结构,以提高可维护性:

semantic-scholar-server/
├── semantic_scholar/            # Main package
│   ├── __init__.py             # Package initialization
│   ├── server.py               # Server setup and main functionality
│   ├── mcp.py                  # Centralized FastMCP instance definition
│   ├── config.py               # Configuration classes
│   ├── utils/                  # Utility modules
│   │   ├── __init__.py
│   │   ├── errors.py           # Error handling
│   │   └── http.py             # HTTP client and rate limiting
│   ├── api/                    # API endpoints
│       ├── __init__.py
│       ├── papers.py           # Paper-related endpoints
│       ├── authors.py          # Author-related endpoints
│       └── recommendations.py  # Recommendation endpoints
├── run.py                      # Entry point script

这种结构:

  • 将关注点划分为逻辑模块
  • 使代码库更易于理解和维护
  • 允许更好的测试和未来的扩展
  • 将相关功能分组在一起
  • 集中FastMCP实例以避免循环导入

特性

  • 论文搜索与发现

- 具有高级过滤功能的全文搜索 - 基于标题的论文匹配 - 论文推荐(单篇和多篇论文) - 批量纸张详细信息检索 - 具有排名策略的高级搜索

  • 引文分析

- 引文网络探索 - 参考追踪 - 引文背景与影响分析

  • 作者信息

- 作者搜索和个人资料详细信息 - 出版历史 - 批量作者详细信息检索

  • 高级功能

- 具有多种排名策略的复杂搜索 - 可定制的字段选择 - 高效的批处理操作 - 速率限制合规性 - 支持经过身份验证和未经身份验证的访问 - 优雅的关机和错误处理 - 连接池和资源管理

系统要求

  • Python 3.10+
  • API密钥的环境变量(可选)

安装

快速安装(PyPI)

pip install semantic-scholar-fastmcp

或者直接与 uvx:

uvx semantic-scholar-fastmcp

MCP客户端配置

对于支持以下功能的任何MCP客户端 uvx:

{
  "mcpServers": {
    "semantic-scholar": {
      "command": "uvx",
      "args": ["semantic-scholar-fastmcp"],
      "env": {
        "SEMANTIC_SCHOLAR_API_KEY": "your-api-key-here"
      }
    }
  }
}

通过史密瑟里安装

通过以下方式自动安装克劳德桌面语义学者MCP服务器 史密瑟里:

npx -y @smithery/cli install semantic-scholar-fastmcp-mcp-server --client claude

手动安装

  1. 克隆存储库:
git clone https://github.com/YUZongmin/semantic-scholar-fastmcp-mcp-server.git
cd semantic-scholar-fastmcp-mcp-server
  1. 在开发模式下安装:
pip install -e ".[dev]"
  1. 运行服务器:
semantic-scholar-mcp-server

API密钥(可选)

要获得更高的速率限制和更好的性能:

  1. 从获取API密钥 语义学者API
  2. 将其添加到您的FastMCP配置中,如上文所示 env 部分

如果未提供API密钥,则服务器将使用具有较低速率限制的未经身份验证的访问。

配置

贡献

CONTRIBUTING.md.

环境变量

  • SEMANTIC_SCHOLAR_API_KEY:您的语义学者API密钥(可选)

- 从以下位置获取密钥 语义学者API - 如果没有提供,服务器将使用未经身份验证的访问

HTTP网桥(内置)

此存储库包括一个小型HTTP网桥(semantic_scholar.bridge)那个 公开了用于常见工作流的最小REST API。

默认侦听端口: 8000.

通过环境变量配置网桥:

  • SEMANTIC_SCHOLAR_ENABLE_HTTP_BRIDGE (默认值: 1)--设置为 0 禁用
  • SEMANTIC_SCHOLAR_HTTP_BRIDGE_HOST (默认值: 0.0.0.0)
  • SEMANTIC_SCHOLAR_HTTP_BRIDGE_PORT (默认值: 8000)

可用端点:

  • GET /v1/paper/search?q=... --论文搜索(参数: fields, offset, limit)
  • GET /v1/paper/{paper_id} --纸张详细信息(参数: fields)
  • POST /v1/paper/batch --批处理纸张详细信息(JSON: { "ids": [ ... ] })
  • GET /v1/author/search?q=... --作者搜索(参数: fields, offset, limit)
  • GET /v1/author/{author_id} --作者详细信息(参数: fields)
  • POST /v1/author/batch --批处理作者详细信息(JSON: { "ids": [ ... ] })
  • GET /v1/recommendations?paper_id=... --论文建议

网桥重用包的HTTP实用程序(semantic_scholar.utils.http) 因此速率限制、API密钥处理和连接池与 MCP工具。

例子:

curl 'http://localhost:8000/v1/paper/search?q=machine+learning&limit=5'

速率限制

服务器会自动调整到适当的速率限制:

使用API密钥:

  • 搜索、批处理和推荐端点:每秒1个请求
  • 其他端点:每秒10个请求

没有API密钥:

  • 所有端点:每5分钟100个请求
  • 请求超时时间更长
注:费率限制可能会发生变化。看 语义学者API 获取最新信息。

语义学者API术语

该项目使用 语义学者学术图谱API,由艾伦人工智能研究所(AI2)提供。 请审阅 API许可协议 使用前。

可用的MCP工具

服务器目前公开了16个MCP工具。

注:所有工具均与官方一致 语义学者API文档。有关详细的现场规范和最新更新,请参阅官方文件。

论文搜索工具

  • paper_relevance_search:使用相关性排名搜索论文

- 支持全面的查询参数,包括年份范围和引用计数过滤器 - 返回带有可自定义字段的分页结果

  • paper_bulk_search:具有排序选项的批量纸张搜索

- 类似于相关性搜索,但针对更大的结果集进行了优化 - 支持按引用次数、发表日期等排序。

  • paper_title_search:按完全匹配的标题查找论文

- 当你知道标题时,可以用来查找特定的论文 - 返回具有可自定义字段的详细纸张信息

  • paper_details:获取特定论文的全面详细信息

- 接受各种纸张ID格式(S2 ID、DOI、ArXiv等) - 返回具有嵌套字段支持的详细纸张元数据

  • paper_batch_details:高效检索多篇论文的详细信息

- 每次请求最多可接受1000个纸质ID - 支持与单张纸详细信息相同的ID格式和字段

  • paper_authors:获取与特定论文相关的作者

- 返回论文的分页作者结果 - 支持使用偏移和限制控件自定义作者字段

  • paper_autocomplete:获取部分查询的论文标题建议

- 返回交互式搜索完成所需的最小纸张元数据 - 将过长的查询截断为API支持的长度

  • snippet_search:在论文片段和摘录中搜索

- 从标题、摘要和正文中返回相关的文本匹配 - 支持论文ID、作者、地点、年份和研究领域的过滤器

引用工具

  • paper_citations:获取引用特定论文的论文

- 返回引用论文的分页列表 - 包括引用上下文(如果可用) - 支持字段自定义和排序

  • paper_references:获取特定论文引用的论文

- 返回引用论文的分页列表 - 包括可用的参考上下文 - 支持字段自定义和排序

作者工具

  • author_search:按姓名搜索作者

- 返回带有可自定义字段的分页结果 - 包括从属关系和出版物数量

  • author_details:获取作者的详细信息

- 返回完整的作者元数据 - 包括h指数和引用计数等指标

  • author_papers:获取作者撰写的论文

- 返回作者出版物的分页列表 - 支持字段自定义和排序

  • author_batch_details:获取多位作者的详细信息

- 为多达1000名作者高效检索信息 - 返回与单作者详细信息相同的字段

推荐工具

  • get_paper_recommendations_single:根据一篇论文获得建议

- 根据内容和引用模式返回类似的论文 - 支持推荐论文的字段自定义

  • get_paper_recommendations_multi:根据多篇论文获得建议

- 接受正面和负面示例论文 - 返回与正示例相似但与负示例不同的论文

使用示例

基本论文搜索

results = await paper_relevance_search(
    context,
    query="machine learning",
    year="2020-2024",
    min_citation_count=50,
    fields=["title", "abstract", "authors"]
)

论文推荐

# Single paper recommendation
recommendations = await get_paper_recommendations_single(
    context,
    paper_id="649def34f8be52c8b66281af98ae884c09aef38b",
    fields="title,authors,year"
)

# Multi-paper recommendation
recommendations = await get_paper_recommendations_multi(
    context,
    positive_paper_ids=["649def34f8be52c8b66281af98ae884c09aef38b", "ARXIV:2106.15928"],
    negative_paper_ids=["ArXiv:1805.02262"],
    fields="title,abstract,authors"
)

批量操作

# Get details for multiple papers
papers = await paper_batch_details(
    context,
    paper_ids=["649def34f8be52c8b66281af98ae884c09aef38b", "ARXIV:2106.15928"],
    fields="title,authors,year,citations"
)

# Get details for multiple authors
authors = await author_batch_details(
    context,
    author_ids=["1741101", "1780531"],
    fields="name,hIndex,citationCount,paperCount"
)

错误处理

服务器提供标准化的错误响应:

{
    "error": {
        "type": "error_type",  # rate_limit, api_error, validation, timeout
        "message": "Error description",
        "details": {
            # Additional context
            "authenticated": true/false  # Indicates if request was authenticated
        }
    }
}

目录标签

目录标签

搜索PythonClaude批量操作学术搜索本地部署论文分析引用网络作者信息

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

部署方式(deploymentType,部署类型)

remote-capable

工具数量(toolCount,工具数)

16

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiononeremote-capable

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP