Skip to main content
Glama
laibniz

scholarfetch

by laibniz

ScholarFetch

ScholarFetch Logo

ScholarFetch ist eine akademische Forschungsumgebung mit mehreren Suchmaschinen für:

  • terminalorientierte Literaturrecherche

  • MCP-gestützte Agent-Workflows

  • das Erstellen kuratierter Leselisten und exportierbarer Forschungskorpora

Es kombiniert:

  • eine umfangreiche interaktive CLI für Menschen

  • einen klassischen MCP-Server (stdio)

  • einen FastMCP-Server (stdio, sse, streamable-http)

Die Kernidee ist einfach: Starte mit Schlüsselwörtern, DOI oder Autoren, durchlaufe Paper und Referenzen, prüfe Abstracts und Volltexte, speichere, was wichtig ist, und exportiere dann ein kompaktes Korpus für die Synthese.

Was ScholarFetch tut

  • Durchsucht mehrere wissenschaftliche Suchmaschinen parallel

  • Löst mehrdeutige Autorenidentitäten auf und erweitert Autoren-Paperlisten

  • Behandelt Referenzen als erstklassige Forschungs-Knoten

  • Ruft Abstracts und maschinenlesbaren Volltext ab, sofern verfügbar

  • Verfolgt einen gespeicherten Paper-Satz während einer interaktiven Forschungssitzung

  • Exportiert Zitationen, Abstracts, BibTeX oder Volltext-Korpora

  • Stellt denselben Forschungs-Workflow für MCP-Agenten bereit

  • Verwaltet zustandsbehaftete Sammlungen gespeicherter Paper innerhalb einer MCP-Sitzung

Related MCP server: paper-search-mcp

Suchmaschinen

  • Elsevier (Scopus / Abstract- / Article-Abruf)

  • OpenAlex

  • Crossref

  • arXiv

  • Europe PMC

  • Springer Nature (Metadaten + Open Access)

  • Semantic Scholar (DOI-Anreicherungspfad)

Installation

git clone https://github.com/laibniz/scholarfetch.git
cd scholarfetch
python3 -m venv .venv
source .venv/bin/activate
pip install -e .
scholarfetch

Konsolen-Skripte:

  • scholarfetch

  • scholarfetch-mcp

  • scholarfetch-fastmcp

Alternative:

python3 scholarfetch.py

Zugangsdaten

ScholarFetch lädt Anbieter-Zugangsdaten serverseitig / clientseitig aus der Umgebung.

Standard-Env-Datei:

  • .scholarfetch.env

Typische Variablen:

ELSEVIER_API_KEY=...
ELSEVIER_INSTTOKEN=...
SPRINGER_META_API_KEY=...
SPRINGER_OPENACCESS_API_KEY=...

Hinweise:

  • ELSEVIER_INSTTOKEN ist optional

  • Anbieter-Berechtigungen und Rate Limits gelten weiterhin

  • MCP-Tools akzeptieren keine API-Schlüssel in Tool-Argumenten

CLI-Forschungsworkflow

Die ScholarFetch-CLI ist für die Traversierung von Forschungsliteratur konzipiert.

Typischer Ablauf:

  1. Starte mit einem Thema, einer DOI oder einem Autor.

  2. Prüfe Paper.

  3. Lies Abstracts oder Volltexte.

  4. Erweitere Referenzen.

  5. Springe zu verwandten Autoren.

  6. Speichere vielversprechende Paper.

  7. Exportiere ein Korpus für die Weiterverarbeitung.

Beispiel:

/search graph neural networks
/author Albert Einstein
/papers 1 has:abstract
/article 1
/refs 1
/saved
/export fulltext dummy corpus.txt

CLI-Funktionen

  • Interaktiver Picker mit Baum-Navigation

  • Breadcrumbs für die aktuelle Forschungsposition

  • Aktionsleiste für OPEN, ABSTRACT, TEXT, REFS und AUTHOR

  • Backspace, um zum übergeordneten Knoten zu gelangen

  • Esc, um zur Eingabeaufforderung zurückzukehren

  • S, um ein Paper aus Paperlisten oder Referenzlisten zu speichern

  • X, um ein Paper aus der gespeicherten Liste zu entfernen

  • Mit der AUTHOR-Aktion aus einem Paper kannst du jetzt auswählen:

    • einen einzelnen Autor

    • ALL AUTHORS

  • Referenzlisten verhalten sich wie Paperlisten:

    • open

    • abstract

    • text

    • refs

    • author

  • Automatische Verfügbarkeitshinweise für Paper:

    • Abstract-Verfügbarkeit

    • Volltext-Verfügbarkeit

  • Fortschrittsfeedback für aufwendige Übergänge

  • Unterbrechbarer Aufbau der Referenzvorschau mit Beibehaltung von Teilergebnissen

Zentrale CLI-Befehle

  • /search <keywords|doi|person name>

  • /author <name>

  • /papers <author name|index> [filters]

  • /doi <doi>

  • /open <index>

  • /abstract <doi|index>

  • /article <doi|index>

  • /refs <doi|index>

  • /ref <index>

  • /saved

  • /export [format style path ...]

  • /import [path]

  • /pick [mode]

  • /config

  • /engines

  • /help

Paper-Filter

Verwende mit /papers:

  • year>=YYYY, year<=YYYY, year=YYYY

  • has:abstract, has:doi, has:pdf, has:fulltext

  • venue:<text>, title:<text>, doi:<text>

Beispiele:

/papers 1 year>=2020 has:abstract
/papers 1 has:fulltext
/papers andrea de mauro venue:marketing

Exportmodi

ScholarFetch unterstützt vier Exportmodi aus dem gespeicherten Paper-Satz.

  • bib

    • BibTeX für Literaturverwaltungsprogramme und bibliografische Werkzeuge

  • citations

    • Nur-Zitationen-Export im Format harvard, apa oder ieee

  • abstracts

    • Metadaten + Abstract für jedes gespeicherte Paper

  • fulltext

    • Metadaten + Abstract + Volltext, sofern verfügbar

    • optionale Einbeziehung von Referenzen

Das macht ScholarFetch zu einem nützlichen Korpus-Builder für nachgelagerte Synthese-Agenten.

MCP-Server

ScholarFetch stellt dasselbe Forschungsmodell über MCP bereit.

Modi:

  • Klassischer MCP (stdio): python3 scholarfetch_mcp.py

  • FastMCP stdio: python3 scholarfetch_fastmcp.py --transport stdio

  • FastMCP SSE: python3 scholarfetch_fastmcp.py --transport sse --host 127.0.0.1 --port 8000

  • FastMCP streamable HTTP: python3 scholarfetch_fastmcp.py --transport streamable-http --host 127.0.0.1 --port 8000 --http-path /mcp

Validierung:

python3 scholarfetch_mcp.py --self-test
python3 scholarfetch_fastmcp.py --self-test

Öffentliche Demo-Endpunkte:

MCP-Forschungsmodell

Der MCP-Server ist für Agent-Workflows konzipiert, nicht nur für einmalige Aufrufe.

Ein Agent kann:

  1. Paper suchen

  2. Autoren auflösen

  3. Zu Autoren-Papern erweitern

  4. Abstracts / Volltexte lesen

  5. Referenzen erweitern

  6. Vielversprechende Paper in eine benannte In-Memory-Leseliste speichern

  7. Die Leseliste exportieren als:

    • Zitationen

    • Abstracts

    • BibTeX

    • Volltext-Korpus

So kann ein Agent innerhalb einer MCP-Sitzung einen fokussierten Forschungs-Satz aufbauen und anschließend ein Export-Artefakt an einen weiteren Synthese-Schritt übergeben.

Siehe MCP_SERVER.md für das detaillierte Tool-Modell.

Repository-Dateien

  • scholarfetch.py: CLI-Einstiegspunkt

  • scholarfetch_cli.py: Kern-CLI + Abruflogik

  • scholarfetch_mcp.py: klassischer MCP-Server

  • scholarfetch_fastmcp.py: FastMCP-Server

  • MCP_SERVER.md: MCP-Nutzungsanleitung

  • AGENTS.md: Workflow-Anleitung für Agenten

  • SKILL.md: strukturierter Leitfaden für Research-Skills

  • SKILLS.md: Index für agentenorientierte Skill-Dokumente

  • CONTRIBUTING.md: Hinweise für Mitwirkende

Für Agenten

Wenn du ScholarFetch über ein MCP-kompatibles System ausführst, lies:

Diese Dokumente erklären, wie du ScholarFetch als Literaturrecherche-Umgebung nutzt und nicht als einfache Such-API.

Mitwirken

Siehe CONTRIBUTING.md.

Sicherheit

Siehe SECURITY.md.

Lizenz

MIT-Lizenz. Siehe LICENSE.

Related MCP Connectors

Related MCP Servers

  • F
    license
    A
    quality
    D
    maintenance
    Enables agents to search papers across Semantic Scholar and arXiv, read and extract text from arXiv PDFs, align records across sources, and produce structured literature-analysis digests.
    10
    1
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables LLM agents to search academic literature across multiple sources (IEEE, arXiv, ACM, Semantic Scholar, CORE, Scite, Consensus) and index/search local PDFs.
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI agents to search 1m+ open-access papers, standards, textbooks, and legal documents, resolve identifiers such as RFCs, DOIs, and legal citations, download PDFs, and retrieve citations and metadata through MCP tools.
    MIT