Skip to main content
Glama
scopus-mcp

scopus-mcp

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
LOG_LEVELNoLogging verbosity: DEBUG, INFO, WARNING, ERROR (default: INFO)
SCOPUS_API_KEYYesYour Elsevier API key (required)
SCOPUS_CACHE_TTLNoCache TTL in seconds (default: 300, set 0 to disable)
SCOPUS_INST_TOKENNoInstitutional token for off-campus/full-text access
SCOPUS_MAX_RETRIESNoMax retries on rate-limit errors (default: 3)

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

You have access to the Elsevier Scopus academic database — one of the world's largest curated collections of research literature.

Tools

  • scopus_search — find papers by topic, author, journal, or year using Boolean queries

  • scopus_get_abstract — fetch full paper details (abstract, authors, keywords) by ID or DOI

  • scopus_get_author — retrieve researcher metrics (h-index, citations, publications)

  • scopus_search_authors — find author profiles by name or ORCID

  • scopus_search_affiliations — find institutional records

  • scopus_get_citation_count — quick citation count for a paper

  • scopus_get_citations_overview — year-by-year citation timeline

  • scopus_get_abstracts — bounded batch retrieval with per-record errors

  • scopus_check_access — live endpoint diagnostics (uses quota)

  • scopus_get_references — a paper's available bibliography

  • scopus_get_citing_documents — papers citing a document

  • scopus_analyze_results — aggregate an explicitly bounded corpus

Check truncated/stop_reason before claiming a complete corpus. Null metrics mean unknown, not zero. Access depends on Elsevier entitlements.

Prompts (3)

  • systematic_literature_review — structured SLR search strategy with PICO framework

  • author_impact_analysis — step-by-step researcher benchmarking workflow

  • research_trend_query — decade-by-decade trend analysis query set

Resources (3)

  • scopus://search-syntax — complete Boolean query reference

  • scopus://subject-areas — all SUBJAREA() discipline codes

  • scopus://api-reference — tool quota costs, identifier formats, workflow patterns

Start with the scopus://search-syntax resource for query syntax, or use a prompt to get a structured workflow for your research task.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
scopus_searchA

Search the Scopus academic database for papers using Boolean query syntax.

Common field codes:

  • TITLE-ABS-KEY(term) — search title, abstract, and keywords (most useful)

  • TITLE(term) — title only

  • AUTH(name) — author name, e.g. AUTH("Smith J")

  • AFFIL(institution) — author affiliation

  • PUBYEAR > 2020 — filter by publication year

  • DOCTYPE(ar) — document type: ar=article, re=review, cp=conference paper

Boolean operators: AND, OR, AND NOT Example: TITLE-ABS-KEY("machine learning" AND cancer) AND PUBYEAR > 2020

Read the scopus://search-syntax resource for the full syntax reference.

scopus_search_authorsA

Search for author profiles in the Scopus author index.

Query field codes:

  • AUTHLASTNAME(Smith) — last name

  • AUTHFIRST(John) — first name or initials

  • ORCID(0000-0002-1234-5678) — ORCID identifier

  • AF-ID(60027950) — affiliation ID

Example: AUTHLASTNAME(Smith) AND AUTHFIRST(J) AND AFFIL(MIT)

Use scopus_get_author with the returned author_id to fetch full metrics.

scopus_search_affiliationsA

Search for institution and affiliation records in Scopus.

Query examples:

  • AFFIL(MIT) — by name keyword

  • AFFIL(Harvard) AND COUNTRY(United States)

  • AFFIL-ID(60027950) — by Scopus affiliation ID

Returns affiliation_id needed for author searches and filtering.

scopus_get_abstractA

Retrieve full paper details from Scopus using any supported identifier.

Identifier types:

  • scopus_id — Scopus internal numeric ID (e.g. "85123456789")

  • doi — Digital Object Identifier (e.g. "10.1016/j.labeco.2024.102505")

  • eid — Electronic ID (e.g. "2-s2.0-85123456789")

  • pubmed_id — PubMed/MEDLINE numeric ID

Returns: title, full abstract, authors with affiliations, keywords, subject areas, citation count, DOI, and open access status.

scopus_get_abstractsA

Fetch metadata/abstracts for 1–25 identifiers of the same type. Returns each record or its error in input order; access depends on Elsevier entitlements.

scopus_get_authorA

Retrieve a researcher's full Scopus profile by their Scopus Author ID.

Returns: h-index, total citation count, document count, current institutional affiliation, subject areas, ORCID (if available), and publication year range.

To find an author's ID, first use scopus_search_authors. Example author IDs: '7401234567' or '57209123456'.

scopus_get_citation_countA

Get the current total citation count for a paper.

Provide either a Scopus ID or a DOI — at least one is required. This endpoint is lightweight and cached; use it for quick citation lookups without fetching the full abstract.

scopus_get_citations_overviewA

Get a year-by-year citation timeline for a paper.

Returns how many times the paper was cited in each calendar year within the specified date range. Useful for tracking research impact and citation trends over time.

Requires a Scopus ID. Use scopus_search or scopus_get_abstract first to obtain the scopus_id.

Prefer scopus_get_citation_count when you only need one total - it is a single cheap lookup. Use this when the shape of the citation curve over time matters.

Access depends on your Elsevier endpoint entitlement. An institutional token or approved network may be required; use scopus_check_access to diagnose access before retrying authorization failures.

scopus_check_accessA

Test each Scopus endpoint independently using seven live requests. Uses API quota; bypasses cache. Never returns credentials. Run when access is uncertain, not before every search.

scopus_get_referencesA

Retrieve one page of a paper's bibliography using Elsevier REF view, with FULL bibliography fallback when REF metadata is absent. Requires appropriate entitlement. Missing references are reported as unavailable, never assumed to mean no references. Follow next_start when present.

scopus_get_citing_documentsA

Find Scopus documents citing a paper using REFEID. This search field requires specific Elsevier access permission. Returns a paginated corpus of indexed citing documents, not a universal citation census.

scopus_analyze_resultsA

Aggregate a bounded Scopus search corpus by cover year, publication source and affiliation. Defaults to 100 documents; at most 5000. Reports truncation, continuation and unknown metadata explicitly. Counts describe retrieved documents only; do not extrapolate to all literature. Each institution counts once per document.

Prompts

Interactive templates invoked by user choice

NameDescription
systematic_literature_reviewGenerate a structured Scopus search strategy for a systematic literature review (SLR). Produces PICO-framed Boolean queries, inclusion/exclusion criteria, and a step-by-step workflow using scopus_search and scopus_get_abstract tools.
author_impact_analysisGenerate a step-by-step analysis plan for evaluating a researcher's academic impact using Scopus. Returns a structured workflow covering h-index, citation trends, co-authorship, and institutional affiliation, with ready-to-run tool calls.
research_trend_queryBuild a Scopus query set to map research trends over time for a given topic. Returns ready-to-run scopus_search queries grouped by decade and document type, plus a year-over-year publication count strategy.

Resources

Contextual data attached and managed by the client

NameDescription
Scopus Search Syntax GuideComplete reference for Scopus Boolean query syntax: field codes, operators, wildcards, document types, subject areas, and examples.
Scopus Subject Area CodesComplete list of Scopus SUBJAREA() codes organized by discipline. Use these codes to filter searches to a specific academic field.
Scopus MCP API ReferenceQuick reference for all 7 Scopus MCP tools: rate limits, quota costs, identifier formats, and recommended workflow patterns.

TDQS

A3.9/5.0

Scored across 12 tools

Disambiguation4/5

Each tool has a clearly distinct scope: search vs. retrieve vs. citation-graph vs. aggregate analysis. The only risky pairs are scopus_get_abstract vs. scopus_get_abstracts (singular/plural distinguished mostly by the batch size mentioned in the description) and scopus_get_citation_count vs. scopus_get_citations_overview, but the descriptions explicitly state when to prefer which, so an agent can disambiguate.

Naming Consistency5/5

All twelve tools share a single scopus_ prefix followed by a snake_case verb_noun pattern (search_authors, get_abstract, get_citations_overview, analyze_results). No camelCase or verb-style mixing; the singular/plural distinction is the only naming subtlety and it is deliberate.

Tool Count5/5

Twelve tools is well within the sweet spot and each maps to a genuine Elsevier/SCOPUS capability (paper search, author index, affiliation index, retrieval, citation metrics, reference graph, aggregation, access diagnostics). Nothing looks like filler or a redundant alias.

Completeness4/5

The surface covers the full research workflow: discovery (papers, authors, affiliations), detail retrieval (single and batch abstracts, author profiles), citation graph (count, timeline, references, citing documents), analysis, and access troubleshooting. Minor gaps: there is no get_affiliation detail tool despite affiliation_id being returned by search, and no direct lookup by ISSN/source title, but agents can work around both via scopus_search.

Maintenance

ActivityNo data
ResponsivenessOutdated data