MCP Refchecker
mcp-refchecker
Ein MCP-Server, mit dem Claude akademische Zitate in Echtzeit gegen Semantic Scholar, OpenAlex und Crossref überprüfen kann – um halluzinierte oder inkorrekte Referenzen zu finden, bevor sie in Ihrer Arbeit landen.
Basiert auf academic-refchecker (MIT).
Tool
verify_citation — überprüft, ob ein zitiertes Paper existiert und ob dessen Metadaten (Titel, Autoren, Jahr, Veranstaltungsort) mit dem Zitat übereinstimmen.
Parameter | Typ | Erforderlich | Beschreibung |
| string | ja | Titel des zitierten Papers |
| string[] | nein | Liste der Autorennamen |
| integer | nein | Erscheinungsjahr |
| string | nein | DOI (z. B. |
| string | nein | arXiv ID (z. B. |
| string | nein | Direkte URL zum Paper |
Gibt JSON zurück:
{
"verified": true,
"url": "https://...",
"matched_paper": {
"title": "...",
"authors": [...],
"year": 2023,
"venue": "..."
},
"possible_match": null,
"errors": null,
"warnings": null,
"info": null
}Ergebnisfelder
verified—true, wenn das Paper gefunden wurde und alle bereitgestellten Metadaten (Jahr, Autoren, Veranstaltungsort) übereinstimmen.false, wenn ein tatsächlicher Metadatenkonflikt vorliegt oder das Paper nicht gefunden werden konnte.matched_paper— die maßgeblichen Metadaten aus der Verifizierungsquelle.possible_match— ein Crossref-Fallback-Treffer, wenn der exakte Titel nicht gefunden wurde, aber eine ähnliche Variante existiert (siehe "Fuzzy-Fallback" unten).errors— schwerwiegende Fehler, die die Verifizierung blockieren (falsches Jahr, falsche Autoren, Paper nicht gefunden).warnings— leichte Warnungen, die die Verifizierung nicht blockieren (arXiv v1 vs. v2 Unterschiede, arXiv-Preprint vs. veröffentlichter Veranstaltungsort, unvollständige Eingabe-Metadaten).info— informative Vorschläge (z. B. "Referenz könnte arXiv-URL enthalten").
Was zählt als Fehler vs. Warnung
academic-refchecker gibt eine flache Liste von Problemen mit gewissen Inkonsistenzen zurück (Jahresabweichungen werden als Warnungen markiert, während Autorenabweichungen als Fehler markiert werden). Dieser Wrapper normalisiert die Ausgabe:
Hochgestuft zu schwerwiegenden Fehlern: einfache
year/author/venue-Abweichungen, bei denen die zitierten Metadaten tatsächlich von der Realität abweichen. Diese blockierenverified.Heruntergestuft zu Warnungen: "fehlendes Feld"-Fehler, wenn das Paper gefunden wurde, der Benutzer das Feld jedoch gar nicht erst angegeben hat. Fehlende Eingabe-Metadaten sind kein Beweis für ein halluziniertes Zitat.
Beibehalten als Warnungen: arXiv-Versionsunterschiede (v1 vs. v2), Hinweise zu Preprint- vs. veröffentlichtem Veranstaltungsort.
Fuzzy-Fallback und seine Grenzen
Wenn academic-refchecker meldet, dass ein Paper nicht verifiziert werden konnte, führt dieser Wrapper eine sekundäre Abfrage bei Crossref unter Verwendung von Fuzzy-Titelabgleich und fuzzywuzzy.ratio durch. Wenn ein Kandidat mit ≥ 85 % Ähnlichkeit gefunden wird, wird dieser als possible_match mit einer Warnung zurückgegeben.
Was der Fuzzy-Fallback erkennt:
Stilistische Titelvariationen (Groß-/Kleinschreibung, Interpunktion, Wortreihenfolge)
Geringfügige Umformulierungen
Titel, bei denen der strikte Vergleich von refchecker einen ansonsten gültigen Treffer abgelehnt hat
Was der Fuzzy-Fallback NICHT erkennt:
Echte Tippfehler in markanten Titelwörtern (z. B. "Atention Is All You Need")
Stark verstümmelte Titel
Dies ist eine grundlegende Einschränkung kostenloser akademischer Such-APIs. Crossref, OpenAlex und Semantic Scholar verwenden alle eine schlüsselwort-/tokenbasierte Suche – sobald ein markantes Wort falsch geschrieben ist, befindet es sich einfach nicht im Suchindex, und das echte Paper erscheint nicht in den Ergebnissen, unabhängig davon, wie Sie diese nachbearbeiten. Das Erkennen echter Tippfehler würde semantische Einbettungen von einer kostenpflichtigen API (OpenAI, Voyage usw.) oder eine Volltext-Fuzzy-Suchmaschine erfordern, von denen keine durch kostenlose wissenschaftliche Datenquellen bereitgestellt wird.
Wenn Sie einen Tippfehler vermuten, verify_citation aber "nicht verifiziert" zurückgibt, ist die beste Lösung, den Titel in der kanonischsten Form, die Sie finden können, neu zu schreiben und es erneut zu versuchen.
Related MCP server: Lyra's Expanded Research MCP
Installation & Konfiguration
Empfohlen: uvx (kein Installationsschritt)
Wenn Sie uv installiert haben, ist keine separate Installation erforderlich. Fügen Sie dies direkt zu Ihrer claude_desktop_config.json hinzu:
{
"mcpServers": {
"refchecker": {
"command": "uvx",
"args": ["mcp-refchecker"]
}
}
}uvx lädt das Paket automatisch herunter und führt es in einer isolierten Umgebung aus. Starten Sie Claude Desktop nach dem Speichern der Konfiguration neu.
Alternative: pip
pip install mcp-refcheckerFügen Sie dann dies zu claude_desktop_config.json hinzu:
{
"mcpServers": {
"refchecker": {
"command": "mcp-refchecker"
}
}
}Aus dem Quellcode
git clone https://github.com/JonasBaath/mcp-refchecker
cd mcp-refchecker
pip install .Optionale Umgebungsvariablen
SEMANTIC_SCHOLAR_API_KEY— beantragen Sie hier einen für höhere Ratenlimits auf dem primären Verifizierungspfad von refchecker.CROSSREF_MAILTO— Ihre Kontakt-E-Mail-Adresse, die verwendet wird, um dem polite pool von Crossref beizutreten, für einen zuverlässigeren Zugriff auf den Fuzzy-Fallback.MCP_REFCHECKER_DEBUG— auf einen beliebigen nicht leeren Wert setzen, um Debug-Protokolle vom Fuzzy-Fallback-Pfad nach stderr zu drucken.
Beispiel mit allen optionalen Einstellungen (uvx):
{
"mcpServers": {
"refchecker": {
"command": "uvx",
"args": ["mcp-refchecker"],
"env": {
"SEMANTIC_SCHOLAR_API_KEY": "your-key-here",
"CROSSREF_MAILTO": "you@example.com"
}
}
}
}Lizenz
MIT — © Jonas Bååth. Basiert auf academic-refchecker (MIT).
Available Tools
1 toolverify_citationA
Verify that an academic citation is accurate by checking it against Semantic Scholar, OpenAlex, and CrossRef. Returns whether the paper exists and flags mismatches in title, authors, year, or venue.
Args: title: Title of the cited paper (required). authors: List of author names. year: Publication year. doi: DOI of the paper (e.g. 10.1145/12345). arxiv_id: arXiv ID (e.g. 2301.00001). url: Direct URL to the paper.
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | ||
| authors | No | ||
| year | No | ||
| doi | No | ||
| arxiv_id | No | ||
| url | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explains what the tool checks (title, authors, year, venue) and the sources used, adding behavioral context beyond the schema. However, with no annotations provided, this dimension carries full weight; the description does not cover all potential behaviors such as rate limits, authentication requirements, or error handling, but given the straightforward nature of a citation verification tool, the disclosure is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured, with a clear first paragraph stating the tool's purpose followed by a bulleted list of parameters. Every sentence adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (6 parameters, 1 required, output schema present), the description covers the essential information. It explains the verification process and parameter meanings, but lacks details on output structure. However, since an output schema exists, this omission is acceptable. The description is sufficiently complete for effective usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description provides brief semantic information for each parameter, defining what they represent (e.g., 'DOI of the paper', 'arXiv ID'). However, the input schema's title fields already convey most of this information (e.g., 'Doi', 'Arxiv Id'), and the description does not add significant new meaning. Schema description coverage is 0%, so the description compensates minimally.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: verifying academic citations by checking against three specific databases (Semantic Scholar, OpenAlex, CrossRef). It precisely describes the verification outputs: existence check and mismatch flags for title, authors, year, or venue. This is specific and informative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly lists parameters with their types and example formats, providing guidance on how to use the tool. However, it does not indicate when not to use this tool or mention alternatives, which would be beneficial since there are no sibling tools. The clarity of the parameter descriptions partly compensates.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
v0.1.0- First observed
verify_citation
TDQS
Scored across 1 tool
Only one tool exists, so there is no ambiguity between tools. The single tool has a clear, singular purpose.
With only one tool, consistency with other tools is not applicable. The name itself (verify_citation) follows a reasonable verb_noun pattern, but no pattern across tools can be evaluated.
The server provides only one tool for the domain of citation verification. While verifying a citation is a focused task, real-world usage often requires additional operations like batch verification, retrieving paper details, or checking multiple citations at once, making the single tool feel too limited.
The tool covers a single operation (verifying a citation) but lacks other related operations such as searching for papers, listing citations for a paper, or bulk verification. For a comprehensive citation checking service, the coverage is incomplete.
Maintenance
Related MCP Connectors
OpenCitations MCP — citation index (COCI + general Index API).
Academic research MCP server for paper search, citation checks, graphs, and deep research.
MCP server for Altmetric APIs - track research attention across news, policy, social media, and more
Crossref MCP — wraps the Crossref REST API (academic papers, free, no auth)
Related MCP Servers
- AlicenseAqualityCmaintenanceComprehensive MCP server for academic research workflows, enabling paper searching across multiple sources, manuscript processing with citation placeholders, search caching, and citation export.11MIT
- FlicenseNot gradedqualityDmaintenanceA unified MCP server providing programmatic access to three major academic research APIs: Semantic Scholar, OpenAlex, and PubMed.2-
- AlicenseAqualityCmaintenanceUnified MCP server for scientific literature search and extraction, integrating databases like Scopus, OpenAlex, Semantic Scholar, and Unpaywall to enable AI agents to discover papers, track citations, and analyze content.27MIT
- AlicenseAqualityCmaintenanceAn MCP server that verifies the existence, metadata accuracy, and claim support of academic citations by querying sources like OpenAlex, Crossref, and arXiv, enabling AI agents to fact-check references.768 PyPI1MIT