Scopus MCP Server
Scopus MCP Server
A local MCP server that wraps the Elsevier Scopus APIs, giving Claude Code four tools:
scopus_search— search Scopus documents by keyword, title, author, affiliation, etc.scopus_get_abstract— fetch a full abstract + metadata by Scopus ID / DOI / EIDscopus_search_authors— find author profiles by name/affiliationscopus_get_author_profile— full author profile (h-index, affiliation, ORCID, etc.) by Scopus Author IDscopus_get_citation_overview— year-by-year citation counts for one or more documents
1. Get an API key
Register at https://dev.elsevier.com/apikey to get a Scopus/Elsevier API key. Some endpoints (especially abstract/citation data) require your key to be used from an IP range or network your institution has registered with Elsevier — if you get 403 errors, that's usually why.
If you also have an institutional token, note it too (optional).
2. Install dependencies
cd "scopus-mcp-server"
pip install -r requirements.txt3. Set your API key
Set it as an environment variable — never hardcode it in the source or paste it into chat. Pick one option:
Windows PowerShell (current session only):
$env:SCOPUS_API_KEY = "your-key-here"Windows (persistent, current user):
setx SCOPUS_API_KEY "your-key-here"(Open a new terminal afterward for setx to take effect.)
Optional institutional token:
setx SCOPUS_INSTTOKEN "your-insttoken-here"4. Register the server with Claude Code
From an interactive terminal (this step needs claude mcp, which isn't available in
a non-interactive session):
claude mcp add scopus -- python "C:\Users\Hype AMD\OneDrive\Desktop\Claude Cowork\scopus-mcp-server\server.py"This registers it as a stdio MCP server that Claude Code will launch on demand. Verify
with claude mcp list, then restart/reload Claude Code so it picks up the new server.
5. Try it
Ask Claude something like:
"Search Scopus for papers on CRISPR gene editing published after 2022"
"Get the abstract for Scopus ID 85123456789"
"Find the Scopus author profile for John Smith at MIT"
"How has paper 85123456789 been cited over the last 5 years?"
Notes
All tools are read-only (no writes to Scopus).
Responses default to Markdown; pass
response_format: "json"for structured output.If you see
Error: SCOPUS_API_KEY environment variable is not set, the server process didn't inherit the env var — set it persistently (setx) and open a fresh terminal / restart Claude Code.If you see 403 errors, your key likely isn't entitled for that endpoint or needs to be called from your institution's registered network.