Skip to main content
Glama

citeguard

Zurückgezogene Beiträge werden noch Jahre nach ihrer Zurücknahme zitiert. Andrew Wakefields betrügerischer Artikel von 1998, der die MMR-Impfung mit Autismus in Verbindung brachte — 2010 zurückgezogen —, wurde seither über tausendmal seit der Zurücknahme zitiert, und das von Forschenden, die kaum eine einfache Möglichkeit hatten, das zu erkennen. Eine JMIR-Studie aus dem Jahr 2026 ergab, dass frei verfügbare KI-Werkzeuge „retracted literature nicht zuverlässig erkennen können“, ausgerechnet in dem Moment, in dem KI-gestützte und Forschung und Schreiben explodiert. citeguard überbrückt dieses Lücke: eine Quellenangabe wird gegen Crossref — kostenlos, ohne API-Schlüssel — geprüft, bevor sie in ein Paper, eine Zusammenfassung oder ein Review einfließt.

Drei Anwendungsflächen, ein verifizierter Erkennungsalgorithmus:

Zugang

Anwendungsfall

Ort (Quellcode)

Python-Bibliothek + CLI

wissenschaftliche Schreibende, Skripte

src/citeguard/

MCP server

KI-Agenten für Recherche/Schreiben

mcp-server/

GitHub Action

CI in einem Lab- oder das Journal-Repo

action.yml

Warum das so aufgebaut ist

Die Erkennungslogik ist nicht aus Dokumentationen abgeleitet — sie wurde durch Anfragen an die echte Crossref-API für bekannte Fälle und das Lesen der tatsächlichen Antwortstrukturen erfunden. Anschließend wurden Tests gegen die gespeicherten echten Antworten geschrieben (committed in tests/fixtures/, gemeinschaftlich von der Python- und spätere TypeScript-Implementierung). Zwei echte Paper fungieren als Referenzfall der „Ground Truth“:

  • Wakefield et al., 1998, The Lancet (das MMR-Autismus-Paper): Die eigene Crossref-Metadaten des Verlags enthalten keinerlei strukturierte Rückzugsdaten — eine update-to-Prüfung allein würde das stillschweigend übersehen. Das eigentliche Signal steckt in einem separaten updated-by-Feld, in dem Crossref die Rücknahme (zusammen mit einer frühen 2004-Korrektur) aus der Retraction Watch database selbst nachgetragen hat. Dieses Feld zu ignorieren, hieße, das bedeutendste zurückgezogene Paper der Medizin zu ver passe.

  • Mehra et al., 2020, The Lancet (das Surgisphere-bezogene COVID-19/Hydroxychloroquine-Papper): Hier hat der Verlag strukturierte Daten direkt über update-to in den Datenerecord eingepflegt. Ein anderes Feld, eine andere Herkunft, die gleiche Inhaltliche Tatsache.

  • Watson & Crick, 1953, Nature wird in jedem Testsuite eingesetzt – eine eindeutig echte, definitiv nicht zurückgezogene Veröffentlichung, die niemals markiert werden darf.

The research follows daher drei unabhängige Signale in gegebener Reihenfolge: update-to (vom Verlag gemeldet), updated-by (oft aus der Retraction-Watch-Datenbank, erwischt, was Verlage auslassen) und eine psatzkategorie per Titelpräfix („RETRACTED:“, „WITHDRAWN:“ usw.) für ältere/unverbundene Fälle ohne strukturierte Metadaten in lie at one will both Feldern. Each Signal bekommt eine angemessene Schwere zugewiesen — ein Titel beginnend mit „Expression of Concern“ ist nicht identisch a retraction, and older Versionen, die diesen Unterschied eingeebnet haben, sind selbst als Bug enttarnt worden durch Testen an realen Titeln, nicht nur an synthetisch erzeugten. Siehe src/citeguard/analyze.py für die unter: kommentierte Implementierung.

Related MCP server: verification-mcp

Schnellstart

CLI:

pip install -e .
citeguard doi 10.1016/S0140-6736(97)11096-0
citeguard file references.bib --fail-on retracted   # for CI, see below

MCP server (tragen Sie ihn in die Konfiguration Ihres Clients ein, z. B. .mcp.json):

{ "mcpServers": { "citeguard": { "command": "node", "args": ["/path/to/citeguard/mcp-server/dist/index.js"] } } }

GitHub Action (in einem Workflow eines anderen Repos):

- uses: wedo911/citeguard@main
  with:
    path: references.bib
    fail-on: concern   # never | retracted | concern | corrected

Was das nicht ist

  • Kein Beweis für die inhaltliche Korrektheit eines Papers. Sie prüft nur den Rückzugsstatus, nicht ob die Ergebnisse eines nicht zurückgezogenen Papers stichhaltig sind.

  • Nicht vollständig. Die Titelpräfix-Heuristik erkennt nur Verlagskonventionen, gegen die sie getestet wurde; ein sauberes Ergebnis heißt „kein bekanntes Signal gefunden“ und nicht „garantiert nie zurückgezogen“.

  • Kein Massen-abrufwerkzeug. Es ist gebaut für die Größe eines echten Literaturverzeichnisses (einige Dutzend Zitate), mit einer kleinen festen Verzögerung zwischen Crossref-Anfragen und einem optionalen persistenten Cache (src/citeguard/cache.py) — ein fairer APInnutzungsverhalten gegenüber einem kostenlosen öffentlichen Service, und kein Instrument zum Scannen von Millionen von DOIs.

Tests ausführen

# Python (55 tests, including against the real fixtures above)
pip install -e ".[dev]" && pytest -v

# MCP server (17 tests against the same real fixtures)
cd mcp-server && npm install && npm run build && npm test

Beide Testumgebungen sind netzwerkfrei und deterministisch — sie laufen gegen die gespeicherten echten API-Antworten statt gegen Live-Calls die Langsam und hängen nicht davon ab, dass Crossref erreichbar ist. Das echte Ende-zu Ende-Verhalten (das tatsächliche CLI, das echte MCP-Tool, das Ansprechen der realen API) wurde während der Entwicklung manuell und separat verifiziert. Die GitHub Action hat zusätzlich einen eigenen CI-Job (action-smoke-test), der die reale Composite Action bei jedem Push gegen eine bekannte zurückgezogene und eine bekannte saubere Literaturliste ausführt; damit wird die Action selbst — nicht nur die zugrunde liegende Bibliothek — kontinuierlich mit der Live-API getestet.

Mitwirken

Neue Signaltypen, zusätzliche Verlags-Titelkonventionen und Fehlermeldungen zu False-Positives sind gern willkommen. Wenn Sie einen neuen Fall hinzufügen, bevorzugen Sie möglichst eine echtes, ausführlich zitierten Crossref-Fixture vor einer synthetischen — genau das hat zwei echte Bugs entdeckt, die die erwartete Testsuite der Projekts während der Entwicklung gefunden hat (einen URL-Encoding-Bug im DOI-Anfragepfad und einen BibTeX-Parser, der beim Verarbeiten eines fehlerhaften @comment-Blocks den benachbarten Eintrag verschlucken konnte).

Lizenz

MIT — siehe LICENSE.

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)
Commit activity

Related MCP Servers

  • F
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to fact-check claims, verify citations, and check source freshness using Wikipedia, Wikidata, Crossref, and Wayback Machine.
    1
  • A
    license
    Not graded
    quality
    C
    maintenance
    Ground citations before your agent emits them by checking references against public scholarly registries and flagging hallucinated or retracted ones.
    MIT

View all related MCP servers

Related MCP Connectors

  • Catch AI-fabricated citations (real DOI + fake title). Retraction, open-access, 10,000+ CSL styles.

  • Real-time fact-check, citation verification, and source-freshness for AI agents.

  • AI research grounded in 300M scientific works — every citation a verifiable DOI.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/wedo911/citeguard'

If you have feedback or need assistance with the MCP directory API, please join our Discord server