Skip to main content

verify-citation

Verify whether a claimed citation matches the actual paper at its identifier (detects the real-DOI/fake-title fabrication pattern common in LLM hallucinations).

الانتقال إلى التثبيت

معلومات المصدر

المستودع
mlava/scholar-sidekick-cursor-plugin
آخر نشاط في المصدر
٢٦ مايو ٢٠٢٦ في ١٠:٤٨
لغة SKILL.md المكتشفة
الإنجليزية
النجوم
٠
التفرعات
٠

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
verify-citation
description
Verify whether a claimed citation matches the actual paper at its identifier (detects the real-DOI/fake-title fabrication pattern common in LLM hallucinations).
# verifyCitation Cross-checks a _claimed_ citation (title, plus optional authors/year/container and one identifier) against the metadata resolved from that identifier. Catches the dominant fabrication pattern documented by Topaz et al. (Lancet, 2026): a real, resolvable DOI paired with an invented title and authors. `resolveIdentifier` alone never catches this — it returns whatever the registry has for the identifier. `verifyCitation` is the only tool that compares the _claim_ against _reality_. ## When to use - A user pastes a citation from an LLM transcript and asks "is this real?" - An agent is auditing references in a manuscript draft for hallucinations. - A reviewer wants to flag suspected fabricated citations before submission. ## Inputs Wrap the citation fields inside a `claimed` object (one citation per call): - `claimed` (object, required): - `title` (string, required) — the title exactly as cited. - one identifier — `doi`, `pmid`, `pmcid`, `isbn`, `arxiv`, `issn`, `ads`, or `whoIrisUrl`. - `authors` (array, optional) — `[{ "family": "...", "given": "..." }]`; sharpens the verdict. - `year` (number, optional); `container` (string, optional — the journal or book title). - `options` (object, optional) — e.g. `{ "bypassCache": true }`. ## Outputs ```json { "ok": true, "verdict": "matched" | "mismatch" | "not_found" | "ambiguous", "confidence": "high" | "medium" | "low", "matched": { "...": "the resolved CSL item, when one was found" } } ``` - `matched` — the claim agrees with the record at the identifier. - `mismatch` — the identifier resolves but the title does not (the fabrication pattern; flag it clearly). - `ambiguous` — the identifier resolves to one paper but the claimed title matches a _different_ real paper (a wrong-identifier error, not a fabrication). - `not_found` — neither identifier nor title resolves anywhere. Every produced verdict returns `200 OK` — the verdict _is_ the answer, not a failure. 4xx/5xx are reserved for protocol errors. ## Underlying surfaces - **REST**: `POST /api/verify` with `{ "claimed": { … } }`. One citation per call. - **Web UI**: [`/tools/citation-verifier`](https://scholar-sidekick.com/tools/citation-verifier). - **MCP tool**: `verifyCitation` in `scholar-sidekick-mcp` v0.7.0+. ## Example ```bash curl -sS -X POST "https://scholar-sidekick.com/api/verify" \ -H "Content-Type: application/json" \ -d '{"claimed":{"title":"The title exactly as cited","doi":"10.1038/nphys1170","authors":[{"family":"Verlinde"}],"year":2011}}' ``` ## See also - `checkRetraction` for retraction status (different concern — fake vs. retracted). - [`/citation-integrity`](https://scholar-sidekick.com/citation-integrity) for the broader trust surface.
عرض على GitHub