ต้นแบบ · รุ่นทดลอง: มีทุก server ในทะเบียนทางการ อัปเดตทุก 30 นาที รีวิวและบัญชีผู้ใช้จะมาในขั้นถัดไป
PopNx MCPที่รวม MCP สำหรับคนใช้ AI · อธิบายเป็นภาษาคน

Semantic Scholar MCP Server

โดย smanichesรุ่น 1.7.15i★ –iรันบนเครื่อง
ชื่อใน registryio.github.smaniches/semantic-scholar-mcp

ติดตั้ง

ภาพรวม

คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)

MCP server for the Semantic Scholar API: search 200M+ papers, citations, authors, recommendations.

สามเสาของ PopNx MCP

สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน

ใช้ทำอะไรได้

ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry

  • การเชื่อมต่อ: รันบนเครื่อง
  • ช่องทาง (transport): stdio
  • หมวด: ค้นข้อมูลและความจำของ AI
  • ต้องใส่ค่าเหล่านี้: SEMANTIC_SCHOLAR_API_KEY

ติดตั้ง

เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง

ก่อนติดตั้ง

ค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต

ต้องเตรียมก่อน

  • PyPIติดตั้ง uv ของ Python (มีคำสั่ง uvx) ในเครื่อง

คุณใช้แอปไหน

เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”

เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json

{
  "mcpServers": {
    "semantic-scholar": {
      "command": "uvx",
      "args": [
        "s2-mcp-server"
      ],
      "env": {
        "SEMANTIC_SCHOLAR_API_KEY": "ใส่ค่าของคุณ",
        "SEMANTIC_SCHOLAR_MIN_SECONDS_BETWEEN_REQUESTS": "ใส่ค่าของคุณ"
      }
    }
  }
}

พิมพ์คำสั่งนี้ใน Terminal

claude mcp add semantic-scholar --env SEMANTIC_SCHOLAR_API_KEY='ใส่ค่าของคุณ' --env SEMANTIC_SCHOLAR_MIN_SECONDS_BETWEEN_REQUESTS='ใส่ค่าของคุณ' -- uvx s2-mcp-server

เติมค่าที่เว้นว่างไว้ก่อนรัน

เปิดใน Cursor

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json

{
  "mcpServers": {
    "semantic-scholar": {
      "command": "uvx",
      "args": [
        "s2-mcp-server"
      ],
      "env": {
        "SEMANTIC_SCHOLAR_API_KEY": "ใส่ค่าของคุณ",
        "SEMANTIC_SCHOLAR_MIN_SECONDS_BETWEEN_REQUESTS": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

เปิดใน VS Code

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .vscode/mcp.json ของโปรเจกต์

{
  "servers": {
    "semantic-scholar": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "s2-mcp-server"
      ],
      "env": {
        "SEMANTIC_SCHOLAR_API_KEY": "ใส่ค่าของคุณ",
        "SEMANTIC_SCHOLAR_MIN_SECONDS_BETWEEN_REQUESTS": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น

ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี

ค่าที่ต้องใส่เอง

  • SEMANTIC_SCHOLAR_API_KEY ความลับ env
    Semantic Scholar API key; introductory keys are currently assigned 1 request/second across all endpoints
  • SEMANTIC_SCHOLAR_MIN_SECONDS_BETWEEN_REQUESTS env
    Minimum seconds between authenticated requests. Default 1.1; lower only when Semantic Scholar has explicitly assigned the key a higher quota.

ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README

ทำอะไรได้บ้าง

รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง

ผลตรวจเบื้องต้นi

เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 9 พ.ย. 2569

  • ✓ ผ่าน

    ตัวตนผู้ทำตรงกับ repo

    ชื่อใน registry ยืนยันด้วยบัญชี GitHub smaniches ซึ่งเป็นเจ้าของ repo

  • … ยังไม่ตรวจ

    ยังมีคนดูแล

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • … ยังไม่ตรวจ

    มีสัญญาอนุญาต (license)

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • – ไม่เกี่ยว

    endpoint ตอบ

    ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต

  • – ไม่เกี่ยว

    ล็อกอินแบบ OAuth

    ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน

  • … ยังไม่ตรวจ

    คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง

    รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต

เทียบกับตัวอื่นในหมวด ค้นข้อมูลและความจำของ AIi

  • ดาวมากกว่า 0% ของอีก 5754 ตัวในหมวดนี้
  • ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 91% ของอีก 5754 ตัวในหมวดนี้
  • ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 5754 ตัวในหมวดนี้

เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo

คำถามที่พบบ่อย

Semantic Scholar MCP Server ปลอดภัยไหม?

จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น

ต้องใช้กุญแจหรือรหัสอะไรบ้าง?

ต้องใส่ค่าเหล่านี้: SEMANTIC_SCHOLAR_API_KEY

ตัวนี้รันบนเครื่องหรือบนคลาวด์?

รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)

ยังมีคนดูแลอยู่ไหม?

repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (1.7.15) เข้า registry 3 วันที่ผ่านมา

ใช้กับโปรแกรมไหนได้บ้าง?

โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Python (uv) ในเครื่องด้วย

มีตัวไหนใช้แทนได้บ้าง?

ในหมวดเดียวกันมี Context7, Codebase Memory, Exa

ตัวที่ใช้แทนได้

server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว

อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi

Context7

ส่งคู่มือการใช้ไลบรารีและเฟรมเวิร์กรุ่นล่าสุดให้ AI อ่านก่อนตอบ ช่วยให้โค้ดที่ AI เขียนไม่ใช้คำสั่งเก่าที่เลิกใช้แล้ว

โดย upstashใช้กันมาก↓ 972.7K/สัปดาห์★ 64.2Kอัปเดต 3 วันที่ผ่านมา

บนเครื่องหรือคลาวด์

Codebase Memory

Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.

โดย DeusDataใช้กันมาก↓ 18K/สัปดาห์★ 48.1Kอัปเดต 23 วันที่ผ่านมา

รันบนเครื่อง

Exa

Connect AI agents to Exa for web search, content fetching, and multi-step research.

โดย exa-labsใช้กันมาก★ 5.2Kอัปเดต 2 เดือนที่ผ่านมา

รันบนคลาวด์✓ exa.ai

README จากผู้ทำ

เปิดอ่าน README

ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ

Semantic Scholar MCP Server

A 14-tool Semantic Scholar MCP server for academic research workflows. Direct access to 200M+ papers from Semantic Scholar — paper search, citation graph traversal, author profiles, and recommendations — from any Model Context Protocol client (e.g., Claude Desktop, Claude Code, Cursor, Cline, Continue, and others).

Every release ships verifiable supply-chain provenance: Sigstore-signed SLSA build-provenance attestations on the wheel, sdist, and container image; PEP 740 attestations on the PyPI upload; and a CycloneDX SBOM — so you can prove the artifact you installed was built from this repo. See Provenance & supply chain.

Author: Santiago Maniches · ORCID 0009-0005-6480-1987 · TOPOLOGICA LLC

Research authorship: Santiago Maniches independently directs and maintains this project and is the sole scientific author of its research contributions. AI-assisted tools have supported coding, documentation, and internal review; they do not constitute scientific coauthors or independent validation. Semantic Scholar content and reused software and methods are attributed to their respective sources.


Quick start

uvx s2-mcp-server                                      # run instantly, no install

claude mcp add semantic-scholar -- uvx s2-mcp-server # or register it in Claude Code

Runtime support (October 2026). Python 3.11–3.13 are the recommended, CI-tested interpreters. Python 3.10 reached upstream end of life on October 1, 2026 and no longer receives security fixes. The package retains Requires-Python >=3.10 and a legacy Python 3.10 compatibility test to avoid breaking existing installs, but Python 3.10 is not a security-supported runtime. Migrate deployed clients to Python 3.11 or newer. Python 3.14+ remains outside the declared CI verification matrix; installability is not a claim of tested support. The development dependency security audit runs on Python 3.12 and checks its hash-pinned closure, not every legacy environment.

No API key is needed to start. Set SEMANTIC_SCHOLAR_API_KEY to use your assigned Semantic Scholar quota and avoid the shared unauthenticated pool. Semantic Scholar currently assigns introductory API keys a 1 request/second limit across all endpoints. Claude Desktop, Docker, pip, and remote (Streamable HTTP) setups are in Installation.


Provenance & supply chain

A research tool is only as trustworthy as the chain from its source to the binary you run. Every release of this server ships cryptographically verifiable supply-chain evidence, all generated in CI from the tagged commit:

GuaranteeWhat it provesWhere it is produced
SLSA build provenance (wheel + sdist)the published distributions were built by this repo's publish.yml from the released tag, not hand-uploadedpublish.yml — actions/attest-build-provenance (build job)
SLSA build provenance (container image)the ghcr.io image digest was built by this repo's docker.ymldocker.yml — actions/attest-build-provenance, push-to-registry (lines 141–147)
PEP 740 attestationsthe PyPI upload itself carries Sigstore-backed attestations under Trusted Publishingpublish.yml — attestations: true (publish-pypi job)
CycloneDX SBOMa machine-readable bill of materials, generated in an unprivileged job from the exact wheel's statically resolved dependency metadata (wheels only, none of it executed), SHA-256-bound to that wheel, then attested against the wheel alonepublish.yml — cyclonedx-py + scripts/release_sbom.py (sbom job) + actions/attest-sbom (attest-sbom job)
SHA-pinned Actionsevery CI action is pinned to a commit SHA, so the release pipeline itself cannot silently changeall jobs in .github/workflows/ (e.g. publish.yml, docker.yml)

Verify the wheel and the container image against their attestations with the GitHub CLI:

# Wheel / sdist (download from the PyPI project or the release assets first)

gh attestation verify s2_mcp_server-*.whl --repo smaniches/semantic-scholar-mcp

Container image

gh attestation verify oci://ghcr.io/smaniches/semantic-scholar-mcp:latest \ --repo smaniches/semantic-scholar-mcp

The full supply-chain posture, including the known-limitations list, is in SECURITY.md. This is release-time provenance (proving how the artifact was built); the server does not currently attach a per-response receipt to individual API results.


How it compares

There is no public Semantic Scholar MCP standard, so the most useful comparison is against the obvious alternative: calling the Semantic Scholar REST API yourself from an agent. Everything in the right-hand column is plumbing this server already owns and the caller would otherwise reimplement.

This serverRaw S2 REST API from an agent
Tool surface14 typed MCP tools (search, retrieval, recommendations, status)caller composes raw HTTP requests
Citation graphboth directions (citations and references) in get_papermanual paging over two endpoints
Bulk operationspapers (≤500) and authors (≤1000) in one callcaller batches and paginates
Full-text snippet searchsnippet_search with surrounding contextseparate endpoint, caller-assembled
Paper-ID resolutionseven formats — Semantic Scholar ID, DOI, ArXiv, PubMed, Corpus ID, ACL, URL — validated pre-flight (validators.py)caller normalizes and validates IDs
Rate limitingclient-side limiter with a conservative S2-compatible authenticated default and configurable assigned quota (client.py)caller throttles by hand
Retry / backoffbounded, jittered retry on 429/502/503/timeout, honors Retry-After (client.py)caller implements retry
Errorstyped exception hierarchy, branchable by caller (errors.py)parse HTTP status strings
Outputchat-tuned Markdown or JSON per call (formatters.py)raw JSON
Supply-chain provenanceSLSA + PEP 740 + CycloneDX SBOM per release (see above)n/a
Citabilityminted Zenodo DOI, MIT licensedn/a

Installation

Option 1: One-Line Install (Recommended)
# No cloning needed — runs directly from PyPI

uvx s2-mcp-server

Option 2: Claude Code
claude mcp add semantic-scholar -- uvx s2-mcp-server
Option 3: Claude Desktop (Windows)

Add to %APPDATA%\Claude\claude_desktop_config.json:

{

"mcpServers": { "semantic-scholar": { "command": "uvx", "args": ["s2-mcp-server"], "env": { "SEMANTIC_SCHOLAR_API_KEY": "your-key-here" } } } }

Option 4: Claude Desktop (macOS)

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{

"mcpServers": { "semantic-scholar": { "command": "uvx", "args": ["s2-mcp-server"], "env": { "SEMANTIC_SCHOLAR_API_KEY": "your-key-here" } } } }

Option 5: pip / From Source
pip install s2-mcp-server

or

git clone https://github.com/smaniches/semantic-scholar-mcp.git cd semantic-scholar-mcp && pip install -e .

Option 6: Docker
docker pull ghcr.io/smaniches/semantic-scholar-mcp:latest

docker run -e SEMANTIC_SCHOLAR_API_KEY=your-key ghcr.io/smaniches/semantic-scholar-mcp

Option 7: Remote server (Streamable HTTP) — requires ≥ 1.5.0
# Serve MCP over HTTP at http://127.0.0.1:8000/mcp instead of stdio

(--from pins the floor: uvx may otherwise reuse a cached older version)

uvx --from "s2-mcp-server>=1.5.0" s2-mcp-server --transport http

See [Remote access (Streamable HTTP)](#remote-access-streamable-http) for client

configuration, per-request API keys, and deployment guidance.

Note: An API key is optional for most public Semantic Scholar endpoints. This

server conservatively throttles unkeyed requests to about one per second,

but anonymous users share an upstream pool. Semantic Scholar can return HTTP

429 even when this server respects its local interval. For dependable,

sustained research workflows, configure an assigned API key.

See Known Limitations.


Architecture

flowchart LR

Client["MCP client (Claude Desktop, Claude Code, Cursor, Cline, Continue, …)"] subgraph Server ["s2-mcp-server (this package)"] direction TB FastMCP["FastMCP runtime (stdio / Streamable HTTP, lifespan)"] Tools["14 @mcp.tool functions (server.py)"] Models["Pydantic input models

  • field sets (models.py)"] Validators["Paper-ID validator

(validators.py)"] Cache["TTL cache (cache.py)"] Fmt["Markdown formatters (formatters.py)"] HTTP["httpx client

  • rate limit + retry/backoff

(client.py)"] Errors["Typed exceptions (errors.py)"] Log["Structured JSON logger (logging_config.py)"] end S2Graph["Semantic Scholar Graph API"] S2Recs["Semantic Scholar Recommendations API"]

Client <-- "stdio or Streamable HTTP (JSON-RPC)" --> FastMCP FastMCP --> Tools Tools --> Models Tools --> Validators Tools --> Cache Tools --> HTTP Tools --> Fmt HTTP --> Errors HTTP --> Log HTTP -- "GET / POST x-api-key" --> S2Graph HTTP -- "GET / POST x-api-key" --> S2Recs

Module responsibilities (src/semantic_scholar_mcp/):

ModuleResponsibility
server.pyFastMCP instance, 14 @mcp.tool registrations, lifespan, main() entry. Re-exports the helper surface for back-compat.

| transport.py | Streamable

ตัดมาแค่ช่วงต้น อ่านต่อใน repo

ถาม PopNx