About Scopus MCP
Scopus MCP is an MCP server published by qwe4559999 in the Developer Tools category: a Model Context Protocol (MCP) server for Elsevier Scopus. Allows AI assistants like Claude to search academic papers, retrieve abstracts, and analyze author profiles directly.
The repository has 47 stars and 13 forks, with the last commit 5 months ago. Recent commit activity is the strongest signal that reported issues will get attention.
Install
git clone https://github.com/qwe4559999/scopus-mcpThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Ask AI
Ask AI about Scopus MCP
Powered by Claude · Grounded in docs
Security checks
Static checks derived from the repository 5 days ago. Heuristics on the source, not an audit.
- ✓README presentThe repository ships documentation.
- ✓License declaredUsable under a stated license.
- ✓Tests presentA test suite exists in the repository.
- ✓Dependencies pinnedA lockfile pins dependency versions.
- ✓No dynamic code executionSource scan found no eval, dynamic Function, or shell execution.
- !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.
Releases
README
Scopus MCP Server
中文 | English
💡 Check out the Interaction Guide & Prompt Examples to see how to chat with this tool!
This is a Model Context Protocol (MCP) server that provides access to the Elsevier Scopus API. It allows AI assistants to search for academic papers, retrieve abstracts, and look up author profiles.
Please note that requesting an Elsevier Scopus API key generally requires that your organization or institution has a subscription to Elsevier database services. Additionally, to run this tool without manual setup, your device must have the uv package manager installed.
Configuration
Setup Steps
- Go to Elsevier Developer Portal to apply for an API key.
- Create a
config.jsonfile in the project root (or copy fromconfig.json.example) and fill in your key:{ "api_key": "YOUR_KEY_HERE" } - Edit
MCP_tool_config.json, modifying the folder path (pay attention to the slash direction). - Finally, import the configuration into your MCP client (e.g., Claude Desktop) by copying the content of
MCP_tool_config.json.
🚀 Quick Start (Zero Setup)
Prerequisite: You must have uv installed.
- Windows:
powershell -c "irm https://astral.sh/uv/install.ps1 | iex" - macOS/Linux:
curl -LsSf https://astral.sh/uv/install.sh | sh
If you use Claude Desktop, you can skip downloading the code and just configure it directly:
- Get Key: Get a free API Key from Elsevier Developer Portal. (⚠️ Note: Educational/Institutional email is recommended; public email domains may be rejected).
- Configure: Edit
%APPDATA%\Claude\claude_desktop_config.json(Windows) or~/Library/Application Support/Claude/claude_desktop_config.json(macOS). - Add:
{
"mcpServers": {
"scopus-assistant": {
"command": "uvx",
"args": [
"scopus-mcp"
],
"env": {
"SCOPUS_API_KEY": "PUT_YOUR_KEY_HERE"
}
}
}
}
(If you don't have uv, see Installation for manual setup)
Using with Trae
In Trae Settings -> MCP Servers -> Click Add -> Select Manual Configuration (JSON), then paste:
{
"mcpServers": {
"scopus-assistant": {
"command": "uvx",
"args": [
"scopus-mcp"
],
"env": {
"SCOPUS_API_KEY": "PUT_YOUR_KEY_HERE"
}
}
}
}
Using with Cursor
- Open Cursor Settings -> Features -> MCP Servers.
- Click + Add New MCP Server.
- Fill in the details:
- Name:
scopus-mcp - Type:
command(stdio) - Command:
uvx scopus-mcp
- Name:
- Important: You need to set
SCOPUS_API_KEYin your system environment variables.
Installation
- Ensure you have Python 3.10+ installed.
- Install dependencies:
pip install .
Usage
Running the Server
You can run the server using uvx (recommended) or directly with python.
# Using uvx
uvx --from . scopus-mcp
# Or directly
python -m scopus_mcp.server
Available Tools
-
search_scopus- Searches the Scopus database using the standard query syntax.
- Arguments:
query(string): The search query (e.g.,TITLE("Artificial Intelligence")).count(integer): Number of results to return (default: 5).sort(string): Sort order (e.g.,coverDate).
-
get_abstract_details- Retrieves detailed information for a specific document.
- Arguments:
scopus_id(string): The Scopus ID of the document.
-
get_author_profile- Retrieves an author's profile information.
- Arguments:
author_id(string): The Scopus Author ID.
Development
Run tests with:
pytest
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments & Contributors
- thinktraveller - Initial Work & Core Development
- qwe4559999 - Maintainer
README fetched from the repository 5 days ago. The original is authoritative.