Scholar Sidekick
Was dieses MCP kann
Resolves scholarly identifiers, verifies citations, checks retractions and open access, formats citations, and exports bibliographies.
Tools
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'checks': {'type': 'array', 'items': {'enum': ['retraction'], 'type': 'string'}, 'description': "Per-entry enrichment checks. Defaults to ['retraction'] (flags retracted / corrected / expression-of-concern works via Crossref + Retraction Watch, keyed on each resolved DOI). Pass [] to skip the retraction lookup."}, 'claims': {'type': 'array', 'items': {'type': 'object', 'required': ['title'], 'properties': {'ads': {'type': 'string', 'maxLength': 50, 'description': "NASA ADS bibcode, e.g. '2019A&A...625A.135L'."}, 'doi': {'type': 'string', 'maxLength': 200, 'description': "DOI as cited, with or without a prefix ('10.1038/nphys1170' or a doi.org URL)."}, 'isbn': {'type': 'string', 'maxLength': 50, 'description': 'ISBN-10 or ISBN-13; hyphens are tolerated.'}, 'issn': {'type': 'string', 'maxLength': 50, 'description': 'ISSN of the containing journal. Identifies a container, not a paper, so it cannot resolve an entry on its own — supply it alongside another identifier.'}, 'pmid': {'type': 'string', 'maxLength': 50, 'description': "PubMed ID, digits only or 'PMID:' prefixed."}, 'year': {'type': 'integer', 'maximum': 9999, 'minimum': 0, 'description': 'Publication year as cited. Refinement only — it never decides a verdict alone.'}, 'arxiv': {'type': 'string', 'maxLength': 50, 'description': "arXiv ID, e.g. '2301.00001' or 'arXiv:2301.00001'."}, 'pmcid': {'type': 'string', 'maxLength': 50, 'description': "PubMed Central ID, e.g. 'PMC1234567'."}, 'title': {'type': 'string', 'maxLength': 2000, 'description': 'Title exactly as the citation claims it. Required — the audit compares this against the title of the record the identifier actually resolves to, and that comparison is the fabrication check.'}, 'author': {'type': 'string', 'maxLength': 200, 'description': "First-author family name as cited. Refines the comparison; a disagreement here can downgrade a verdict to 'ambiguous'."}, 'container': {'type': 'string', 'maxLength': 500, 'description': 'Journal or book title as cited. Refinement only, same role as `year`.'}, 'whoIrisUrl': {'type': 'string', 'maxLength': 2000, 'description': 'WHO IRIS publication URL.'}}}, 'maxItems': 25, 'description': 'Pre-parsed citations to audit — an alternative to `bibliography` for agents that already hold structured references. Each needs a `title` plus whatever identifiers the citation carries.'}, 'format': {'enum': ['bibtex', 'ris', 'csl-json'], 'type': 'string', 'description': 'Override format auto-detection for `bibliography`.'}, 'bibliography': {'type': 'string', 'maxLength': 131072, 'description': 'Raw bibliography text to parse and audit — BibTeX, RIS, or CSL-JSON. Provide EITHER this or `claims`, not both. Format is auto-detected from the content; override with `format`. Capped at 25 entries per call (excess is dropped and reported via `truncated`).'}, 'screenWithLlm': {'type': 'boolean', 'description': 'Opt-in Stage 3 LLM screen applied per entry (same gating as verifyCitation: authenticated first-party key or paid RapidAPI tier). Default false.'}}}
Ausgabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'format': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': "Detected input format ('bibtex' | 'ris' | 'csl-json'), or null for the claims[] path."}, 'entries': {'type': 'array', 'items': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'description': "One result per verifiable entry: { index, sourceKey?, status: 'ok'|'error', verdict, confidence, matched, mismatches, retraction, _provenance }. `index` is 1-BASED and counts position in the submitted input, so entry 1 is the first reference — do not add 1 again when you report it to a user. `sourceKey` is the entry's own key in the source file (BibTeX cite key, RIS `ID`, or CSL-JSON `id`) and is the reliable way to map a verdict back to the user's bibliography; it is absent on the claims[] path and on formats that carry no key. `status:'error'` means that one entry failed to verify, not that the batch failed. Entries appear in input order."}, 'summary': {'type': 'object', 'description': 'Corpus roll-up: { total, matched, mismatch, ambiguous, not_found, errored, retracted }. `total` counts verifiable entries only, so it excludes `parseErrors` and anything past the cap. `retracted` is a separate axis from the verdict counts, and an entry can be both matched and retracted — never add the fields together.', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'truncated': {'type': 'number', 'description': 'Count of entries dropped beyond the 25-entry cap. Non-zero means the audit is incomplete — split the bibliography and call again for the rest.'}, 'parseErrors': {'type': 'array', 'items': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'description': 'Entries that could not be parsed or lacked a title: { index, error, message }. Same 1-based `index` space as `entries`, so the two arrays never collide: a given input position appears in exactly one of them. Report these to the user as unchecked, NOT as clean.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'string', 'maxLength': 500, 'minLength': 1, 'description': "A single scholarly identifier to check. 1–500 characters. Non-DOI inputs are resolved to a DOI server-side before the lookup; if no DOI can be derived, the tool returns doi=null with reason='no_doi'. Pass exactly one identifier — comma/newline batches are NOT accepted by this tool; loop one call per identifier for multiple papers. Accepted: DOI, PMID, PMCID, arXiv ID, ISBN, or NASA ADS bibcode (with or without prefixes)."}}}
Ausgabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['doi', 'result'], 'properties': {'doi': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'reason': {'type': 'string'}, 'result': {'anyOf': [{'type': 'object', 'properties': {'isOa': {'type': 'boolean'}, 'title': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'oaStatus': {'enum': ['gold', 'green', 'hybrid', 'bronze', 'closed'], 'type': 'string'}, 'locations': {'type': 'array', 'items': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}, 'bestLocation': {'anyOf': [{'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, {'type': 'null'}]}}, 'additionalProperties': False}, {'type': 'null'}], 'description': 'Open-access status, or null when no DOI resolved.'}, 'resolvedFrom': {'type': 'object', 'required': ['type', 'value'], 'properties': {'type': {'type': 'string'}, 'value': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'string', 'maxLength': 500, 'minLength': 1, 'description': "A single scholarly identifier to check. 1–500 characters. Non-DOI inputs are resolved to a DOI server-side before the lookup; if no DOI can be derived, the tool returns doi=null with reason='no_doi'. Pass exactly one identifier — comma/newline batches are NOT accepted by this tool; loop one call per identifier for multiple papers. Accepted: DOI, PMID, PMCID, arXiv ID, or NASA ADS bibcode (with or without prefixes). ISBN inputs are accepted but always return doi=null since books are not in the retraction graph."}}}
Ausgabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['doi', 'result'], 'properties': {'doi': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'Resolved DOI, or null when none could be derived.'}, 'reason': {'type': 'string', 'description': "Why result is null (e.g. 'no_doi')."}, 'result': {'anyOf': [{'type': 'object', 'properties': {'title': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'notices': {'type': 'array', 'items': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}, 'hasConcern': {'type': 'boolean'}, 'isRetracted': {'type': 'boolean'}, 'hasCorrections': {'type': 'boolean'}}, 'additionalProperties': False}, {'type': 'null'}], 'description': 'Retraction status, or null when no DOI resolved.'}, 'resolvedFrom': {'type': 'object', 'required': ['type', 'value'], 'properties': {'type': {'type': 'string'}, 'value': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['text', 'format'], 'properties': {'lang': {'type': 'string', 'description': 'Locale for formatting (e.g. en-US)'}, 'text': {'type': 'string', 'description': 'One or more identifiers (DOIs, PMIDs, ISBNs, etc.) separated by newlines or commas'}, 'style': {'type': 'string', 'description': 'Citation style (used only for txt export)'}, 'format': {'enum': ['bib', 'ris', 'csv', 'csl', 'endnote-refer', 'endnote-xml', 'refworks', 'medline', 'zotero-rdf', 'txt'], 'type': 'string', 'description': 'Export format'}}}
Ausgabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['content', 'format'], 'properties': {'format': {'type': 'string', 'description': 'The export format that was produced.'}, 'content': {'type': 'string', 'description': 'The entire bibliography in the requested format, as one string.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['text'], 'properties': {'lang': {'type': 'string', 'description': 'Locale for formatting (e.g. en-US, en-GB, fr-FR)'}, 'text': {'type': 'string', 'description': 'One or more identifiers (DOIs, PMIDs, ISBNs, arXiv IDs, etc.) separated by newlines or commas'}, 'style': {'type': 'string', 'description': 'Citation style: vancouver (default), ama, apa, ieee, cse, or any CSL style ID'}, 'output': {'enum': ['text', 'html', 'json'], 'type': 'string', 'description': 'Output format (default: text)'}, 'footnote': {'type': 'boolean', 'description': 'Format as footnotes instead of bibliography entries'}}}
Ausgabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'html': {'type': 'string', 'description': 'Formatted citation HTML (when output=html).'}, 'lang': {'type': 'string', 'description': 'Locale used for formatting.'}, 'text': {'type': 'string', 'description': 'Formatted citation text (when output=text).'}, 'items': {'type': 'array', 'items': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'description': 'Structured CSL items (when output=json).'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'formatter': {'type': 'string', 'description': "Which engine formatted: 'builtin' or 'csl'."}, 'styleUsed': {'type': 'string', 'description': 'Canonical style ID after alias/dependent-style resolution.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['text'], 'properties': {'text': {'type': 'string', 'description': 'One or more identifiers to resolve (DOIs, PMIDs, PMCIDs, ISBNs, arXiv IDs, ISSNs, ADS bibcodes) separated by newlines or commas'}}}
Ausgabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'description': 'Resolved CSL JSON items, one per identifier.'}}, 'additionalProperties': False}
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['title'], 'properties': {'ads': {'type': 'string', 'maxLength': 50, 'description': 'NASA ADS bibcode (19 chars).'}, 'doi': {'type': 'string', 'maxLength': 200, 'description': 'DOI as cited (with or without https://doi.org/ prefix). Provide whichever identifier(s) the cited reference carries; the verifier uses the first one in priority order doi > pmid > pmcid > arxiv > ads > isbn > issn > whoIrisUrl.'}, 'isbn': {'type': 'string', 'maxLength': 50, 'description': 'ISBN (10- or 13-digit, hyphens tolerated).'}, 'issn': {'type': 'string', 'maxLength': 50, 'description': 'ISSN for journal-level resolution.'}, 'pmid': {'type': 'string', 'maxLength': 50, 'description': "PubMed ID as cited (digits only, or with 'PMID:' prefix)."}, 'year': {'type': 'integer', 'maximum': 9999, 'minimum': 0, 'description': 'Publication year as cited. Wrong year alone does not flip the verdict, but >=2-year gap from the resolved record lowers confidence.'}, 'arxiv': {'type': 'string', 'maxLength': 50, 'description': "arXiv ID (e.g. '2301.08745' or 'arXiv:2301.08745'; old-style 'hep-ph/0501023' accepted)."}, 'pmcid': {'type': 'string', 'maxLength': 50, 'description': "PubMed Central ID (e.g. 'PMC1234567' or 'PMCID:1234567')."}, 'title': {'type': 'string', 'maxLength': 2000, 'minLength': 1, 'description': 'The title as it appears in the cited reference. This is the field the verifier cross-checks against the resolved record at the supplied identifier. Required.'}, 'author': {'type': 'string', 'maxLength': 200, 'description': "First-author family name as cited. Refines the verdict — a title-vs-resolved-title match plus an author mismatch raises suspicion of fabrication. Pass only the family name (e.g. 'Topaz', not 'Topaz, Maxim')."}, 'container': {'type': 'string', 'maxLength': 500, 'description': "Journal or container name as cited (e.g. 'The Lancet', 'Neuroscience'). Soft signal — surfaced as a mismatch field but does not gate the verdict."}, 'whoIrisUrl': {'type': 'string', 'maxLength': 2000, 'description': 'WHO IRIS URL (https://iris.who.int/...).'}, 'screenWithLlm': {'type': 'boolean', 'description': 'Opt-in Stage 3 LLM screen. Fires only when the pre-LLM verdict is mismatch with low confidence (the informal-abbreviation false-positive bucket). Gated: requires an authenticated first-party API key or a paid RapidAPI tier; anonymous / free callers receive 400 LLM_SCREEN_FORBIDDEN. Default false.'}}}
Ausgabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'matched': {'anyOf': [{'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, {'type': 'null'}], 'description': 'The resolved record at the identifier, or null on not_found.'}, 'verdict': {'enum': ['matched', 'mismatch', 'not_found', 'ambiguous'], 'type': 'string'}, 'candidates': {'type': 'array', 'items': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}, 'confidence': {'enum': ['high', 'medium', 'low'], 'type': 'string'}, 'mismatches': {'type': 'array', 'items': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}, '_provenance': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}, 'additionalProperties': False}
Letzte Tool-Änderungen
Ähnliche MCP-Server
concordance
Provides deterministic claim verification and audit receipts, along with Bible references, commentary, geography, indexed knowled…
canton-ccpedia
Searches and explains Canton Network and Daml documentation, governance proposals, forums, code examples, APIs, releases, and eco…
BNM Data Shop
Sells access to cached official reports, enforcement orders, regulatory documents, inspection records, and other public-source te…
api-evangelist
Provides API governance analysis, OpenAPI overlays and version diffs, security-sensitive field classification, code samples, matu…
OpenHelvetia Gateway
Provides sourced access to Swiss federal legislation and political data, including law metadata, versions, amendments, citations,…
website-search
Provides security article search and structured guidance, templates, frameworks, and review criteria for incident response, threa…
The Ainglish Project
Maintains a measured, auditable register of language constructs, proposals, evidence, adoption, contributors, protocols, and rati…
Torah Library
Provides searchable Jewish texts, commentaries, source sheets, dictionaries, manuscripts, calendars, learning schedules, parasha …