学术搜索API服务

提供免费的学术数据访问服务,支持学者、论文和专利搜索功能,适用于AI工作流中的学术自动化需求。

  • by huanghuoguoguo
  • Python
  • 本地部署
  • 5 星标
  • 更新于
在 GitHub 查看 huanghuoguoguo/aminer-mcp

使用说明

AMiner MCP Server

English | 中文

💡 Core Advantage: Free Academic Data Access

Currently, AMiner's core search interfaces (Scholar, Paper, and Patent Search) are free to use. This allows you to integrate massive global research data into your AI workflow with zero API costs, making it the most cost-effective solution for academic automation.

This directory provides a Model Context Protocol (MCP) server for accessing AMiner's open platform API.

Quick Install

Installation

pip install -e .

Configuration

Set your AMiner API token as an environment variable:

Windows (PowerShell):

$env:AMINER_TOKEN="your_token_here"

Linux/Mac:

export AMINER_TOKEN="your_token_here"

Or create a .env file in your project root:

AMINER_TOKEN=your_token_here

Usage

Run the server:

python -m aminer_mcp

Or use the command-line shortcut:

aminer-mcp

Features

  • Scholar Search: Find researchers by name or organization.
  • Paper Search: Find papers by title.
  • Patent Search: Search patents by keywords.

Setup

  1. Install Dependencies:

    pip install "mcp[cli]" requests
    
  2. Get API Token:

  3. Configure Environment: You can either set the AMINER_TOKEN environment variable manually or use the provided .env file.

    Option A: Using .env (Recommended) A .env file has been created for you with your token. The server will automatically load it.

    Option B: Manual Environment Variable

    Windows (PowerShell):

    $env:AMINER_TOKEN="your_token_here"
    

    Linux/Mac:

    export AMINER_TOKEN="your_token_here"
    

Running the Server

You can run the server directly or use it with an MCP client (like Claude Desktop or generic IDEs).

Quick Start (Recommended)

For a guided startup experience with environment and dependency checks:

Windows:

.\start_server.ps1

Linux/Mac:

chmod +x start_server.sh
./start_server.sh

Direct Run (stdio)

python server.py

Inspecting with MCP CLI

You can use the MCP CLI to inspect and test the server.

mcp dev server.py

Tools Available

  1. search_scholar:

    • name: Scholar name.
    • org: Organization.
    • offset: Pagination offset.
    • size: Result count.
  2. search_paper:

    • title: Paper title.
    • page: Page number.
    • size: Result count.
  3. search_patent:

    • query: Search query.
    • page: Page number.
    • size: Result count.
  4. get_papers_by_ids:

    • ids: Comma-separated list of paper IDs.
  5. search_paper_pro (0.01 CNY/call):

    • Fallback Tool: Use only when strictly necessary.
    • title, keyword, author, page, size.

API References

  • Scholar Search: Docs
  • Paper Search: Docs
  • Paper Search Pro: Docs
  • Patent Search: Docs
  • Paper Info: Docs

Configuration for Cursor IDE

To use this MCP server in Cursor editor, add the following configuration:

Windows (Cursor config path: %APPDATA%\Cursor\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json):

{
  "mcpServers": {
    "aminer": {
      "command": "python",
      "args": ["-m", "aminer_mcp"],
      "env": {
        "AMINER_TOKEN": "<YOUR_AMINER_TOKEN>"
      }
    }
  }
}

Linux/Mac:

{
  "mcpServers": {
    "aminer": {
      "command": "python3",
      "args": ["-m", "aminer_mcp"],
      "env": {
        "AMINER_TOKEN": "<YOUR_AMINER_TOKEN>"
      }
    }
  }
}

Note: Replace <YOUR_AMINER_TOKEN> with your actual AMiner API token from AMiner Open Platform.

Contributing

Issues and Pull Requests are welcome!

Usage as an Agent Skill

This repository also includes an Agent Skill definition, allowing AI agents (like Cursor's Agent) to use AMiner search capabilities directly without a full MCP server setup for local tasks.

Skill Location: .agent/skills/aminer-search/

How it works

The skill wraps the AMiner client code into a simple CLI tool that agents can invoke to perform searches.

Prerequisite

Ensure the AMINER_TOKEN environment variable is set in your terminal or .env file.

Skill Capabilities

  • Paper Search: python .agent/skills/aminer-search/scripts/search_tool.py paper --title "..."
  • Scholar Search: python .agent/skills/aminer-search/scripts/search_tool.py scholar --name "..."
  • Patent Search: python .agent/skills/aminer-search/scripts/search_tool.py patent --query "..."

Agents detecting this skill will automatically know how to use these commands to fetch academic data for you.

License

MIT License