semantic-scholar-api

semantic-scholar-api is a skill for Claude Code, Codex from LuuOW/meridian-mcp. It costs 85 tokens per session (2,186 once invoked), scanned A, original, MIT.

A reference for using the Semantic Scholar and OpenAlex services, which are databases of academic papers and their citation links. It helps trace which papers cite, reference, or relate to a starting paper.

In plain words
What is it for?
Use it to find citing and referenced papers, discover related work, identify an author’s publications, or build a citation-based research recommender.
Why use it?
It removes the limits of ordinary keyword searches when you need a paper’s research neighborhood, reliable metadata, or author identity matching.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit Use it to find citing and referenced papers, discover related work, identify an author’s publications, or build a citation-based research recommender.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/luuow/meridian-mcp/semantic-scholar-api
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add LuuOW/meridian-mcp --skill semantic-scholar-api
Clone the repo
git clone --depth 1 https://github.com/LuuOW/meridian-mcp

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for semantic-scholar-api

README.md
[![agentmods](https://agentmods.dev/badge/skills/luuow/meridian-mcp/semantic-scholar-api/github.svg)](https://agentmods.dev/skills/luuow/meridian-mcp/semantic-scholar-api)
Your own site
<a href="https://agentmods.dev/skills/luuow/meridian-mcp/semantic-scholar-api"><img src="https://agentmods.dev/badge/skills/luuow/meridian-mcp/semantic-scholar-api/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for semantic-scholar-api

Your own site · 80×15
<a href="https://agentmods.dev/skills/luuow/meridian-mcp/semantic-scholar-api"><img src="https://agentmods.dev/badge/skills/luuow/meridian-mcp/semantic-scholar-api.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 85 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,186 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00085 $0.02186
Opus 5 $0.00043 $0.01093
Sonnet 5 $0.00017 $0.00437
Haiku 4.5 $0.00009 $0.00219

Measured 8d ago against content hash 7c295cc68fa7, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-12, from the pricing page.

Security

Grade A, and why

semantic-scholar-api scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 8d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

r = requests.get(f"{BASE}/paper/{pid}", params={"fields": fields}, headers=HEADERS, timeout=15)
skills/semantic-scholar-api/SKILL.md · 186 lines

How it starts

The opening of the file, as written. The whole thing — 186 lines — stays where its author put it; the contents beside it link to each section on GitHub.

semantic-scholar-api

When to invoke

  • User has a seed paper and wants its citation neighborhood
  • Building a recommender that extends past keyword match
  • Author disambiguation (two people with same name)
  • Finding "influential" papers in a topic (citation-weighted)
  • Getting canonical abstract/DOI when arXiv's metadata is incomplete

Two complementary APIs

API Strength Rate limit (no key)
Semantic Scholar api.semanticscholar.org/graph/v1/ Rich citation graph, influence scoring, AI-extracted tldr 1 req/sec
OpenAlex api.openalex.org/ Larger coverage (250M+ works), institution + funding data 10 req/sec with email in User-Agent

Use S2 for depth (citations, references, influence), OpenAlex for breadth (coverage, metadata richness).

Semantic Scholar — core endpoints

GET /graph/v1/paper/{id}
GET /graph/v1/paper/{id}/citations    # who cites this paper
GET /graph/v1/paper/{id}/references   # what this paper cites
GET /graph/v1/paper/search?query=...
GET /graph/v1/author/{id}/papers

Paper ID formats S2 accepts

  • arXiv: arXiv:2604.13012 or ARXIV:2604.13012
  • DOI: 10.1038/s41586-023-06792-0
  • PubMed: PMID:34567890
  • CorpusId: CorpusId:12345678
  • S2 SHA: 649def34f8be52c8b66281af98ae884c09aef38b

Minimal citation walk

import requests, time
BASE = "https://api.semanticscholar.org/graph/v1"
HEADERS = {"User-Agent": "research-tool/1.0 ([email protected])"}

def paper(pid, fields="title,abstract,tldr,year,citationCount,authors"):
    r = requests.get(f"{BASE}/paper/{pid}", params={"fields": fields}, headers=HEADERS, timeout=15)
    r.raise_for_status()
    return r.json()

def citations(pid, limit=20, fields="title,year,citationCount,authors"):
    r = requests.get(
        f"{BASE}/paper/{pid}/citations",
        params={"fields": fields, "limit": limit},
        headers=HEADERS, timeout=15,
    )
    r.raise_for_status()
    return [c["citingPaper"] for c in r.json().get("data", [])]

def references(pid, limit=20, fields="title,year,citationCount"):
    r = requests.get(
        f"{BASE}/paper/{pid}/references",
        params={"fields": fields, "limit": limit},
        headers=HEADERS, timeout=15,
    )
    r.raise_for_status()
    return [c["citedPaper"] for c in r.json().get("data", [])]

# Example: walk 1 hop out from an arxiv paper
seed = paper("arXiv:2604.13032")
print(seed["title"], "→", seed["tldr"])
time.sleep(1)  # rate limit
for citer in citations("arXiv:2604.13032", limit=5):
    print(" cited by:", citer["title"])

Read the full file on GitHub · 186 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 8d ago First seen · 186 lines · 85 tokens per session scan A 7c295cc68fa7

Subscribe to this mod's changes

semantic-scholar-api is a skill published in the GitHub repository LuuOW/meridian-mcp (0 stars, last pushed yesterday), licensed MIT. It adds 85 tokens to every session and 2,186 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.

Related

Other skills, from other repositories

academic-research

Nested swiss-knife reference for academic literature work — find papers, fetch full-text PDFs, trace citations, write LaTeX manuscripts. First action for any "get me this paper" request: python3 /scripts/fetchpaper.py — walks arXiv → Unpaywall → Europe PMC → CORE → in-house publisher-page extraction…

Lingtai-AI/lingtai · 180 tokens

Paper Writing Skills Index

Routing and workflow skill family for paper-writing tasks. Covers manuscript drafting, journal and conference papers, grant proposals, lab reports, group-meeting reports, talks, workshop notes, reviewer rebuttals, academic HTML/PDF/LaTeX output with editable-block contracts, citation grounding, evidence checking, and…

aristoteleo/PantheonOS · 76 tokens

sciverse-paper-search

Use this skill for scientific literature search, evidence retrieval, paper metadata screening, and cited research synthesis with Sciverse. This LazyLLM-adapted version supports SciverseSearch search, metasearch, metacatalog, and getcontent only; it does not assume full Sciverse MCP resource or attachment APIs are…

LazyAGI/LazyMind · 68 tokens

paper-search

Primary skill for searching, retrieving, and reading academic papers from arXiv.

LazyAGI/LazyMind · 19 tokens

choosing-an-api

Use when the user or agent needs to pick a public API for a task (weather, images, finance, etc.). Queries public-apis-live for reachable, deduped options.

Manavarya09/public-apis-live · 42 tokens

onecite

Validate, clean, and audit academic references with OneCite from a local repository checkout. Use when a workflow needs deterministic citation verification, BibTeX cleanup, benchmark gating, or template discovery.

HzaCode/OneCite · 42 tokens