返回市场
语义学者快速MCP服务器

语义学者快速MCP服务器

作者:zongmin-yu77 星标更新:2025-04-16

项目介绍

Semantic Scholar MCP Server

smithery 徽章

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

项目结构

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

semantic-scholar-server/
├── semantic_scholar/            # 主要包
│   ├── __init__.py             # 包初始化
│   ├── server.py               # 服务器设置和主要功能
│   ├── mcp.py                  # 集中式FastMCP实例定义
│   ├── config.py               # 配置类
│   ├── utils/                  # 工具模块
│   │   ├── __init__.py
│   │   ├── errors.py           # 错误处理
│   │   └── http.py             # HTTP客户端和速率限制
│   ├── api/                    # API端点
│       ├── __init__.py
│       ├── papers.py           # 与论文相关的端点
│       ├── authors.py          # 与作者相关的端点
│       └── recommendations.py  # 推荐端点
├── run.py                      # 入口脚本

这种结构:

  • 将关注点分离到逻辑模块中
  • 使代码库更容易理解和维护
  • 便于测试和未来扩展
  • 将相关功能分组在一起
  • 集中式管理FastMCP实例以避免循环导入

功能

  • 论文搜索与发现

    • 带高级过滤的全文搜索
    • 根据标题匹配论文
    • 论文推荐(单篇或多篇)
    • 批量获取论文详情
    • 带排序策略的高级搜索
  • 引用分析

    • 引用网络探索
    • 引用追踪
    • 引用上下文和影响力分析
  • 作者信息

    • 作者搜索和个人资料详情
    • 发表历史
    • 批量获取作者详情
  • 高级功能

    • 多种排序策略的复杂搜索
    • 自定义字段选择
    • 高效批量操作
    • 符合速率限制
    • 支持认证和非认证访问
    • 平稳关闭和错误处理
    • 连接池和资源管理

系统需求

  • Python 3.8+
  • FastMCP框架
  • API密钥环境变量(可选)

安装

通过Smithery安装

要通过Smithery自动安装Semantic Scholar MCP Server for Claude Desktop:

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-server
  1. 安装FastMCP和其他依赖项,请参阅:https://github.com/jlowin/fastmcp

  2. 配置FastMCP:

对于Claude Desktop用户,您需要在您的FastMCP配置文件中配置服务器。在配置中添加以下内容(通常位于~/.config/claude-desktop/config.json):

{
  "mcps": {
    "Semantic Scholar Server": {
      "command": "/path/to/your/venv/bin/fastmcp",
      "args": [
        "run",
        "/path/to/your/semantic-scholar-server/run.py"
      ],
      "env": {
        "SEMANTIC_SCHOLAR_API_KEY": "your-api-key-here"  # 可选
      }
    }
  }
}

确保:

  • 将`/path/to/your/venv/bin/fastm