loading…
Search for a command to run...
loading…
Resolve any scholarly identifier (DOI, PMID, PMCID, ISBN, arXiv, ISSN, ADS bibcode, WHO IRIS URL) into structured CSL JSON, format in 10,000+ citation styles, o
Resolve any scholarly identifier (DOI, PMID, PMCID, ISBN, arXiv, ISSN, ADS bibcode, WHO IRIS URL) into structured CSL JSON, format in 10,000+ citation styles, or export to BibTeX/RIS/EndNote/Zotero RDF/CSV. Single or batch. Install: npx -y scholar-sidekick-mcp.
MCP server for Scholar Sidekick — resolve any scholarly identifier (DOI, PMID, PMCID, ISBN, arXiv, ISSN, NASA ADS bibcode, WHO IRIS URL) into 10,000+ CSL styles or nine export formats, plus retraction, open-access, and citation-fabrication-detection checks, from any AI assistant.
checkRetraction surfaces retractions, corrections, and expressions of concern (Crossref / Retraction Watch); checkOpenAccess returns OA status and the best legal landing or PDF URL (Unpaywall). Both accept any identifier type and resolve it to a DOI under the hood.verifyCitation cross-checks a claimed citation against the resolved record at its identifier, detecting the dominant AI-driven fabrication pattern documented by Topaz et al. (Lancet 2026) — real DOI + invented title — that simple identifier resolution cannot catch. Long-form explainer at scholar-sidekick.com/citation-integrity.resolveIdentifier → formatCitation → exportCitation in one prompt for an end-to-end "raw IDs → exportable bibliography" pipeline.requestId, formatter, styleUsed, warnings) so the assistant can show users which engine produced each citation.| Tool | Description |
|---|---|
| resolveIdentifier | Resolve DOIs, PMIDs, PMCIDs, ISBNs, arXiv IDs, ISSNs, ADS bibcodes, and WHO IRIS URLs to structured bibliographic metadata (CSL JSON). Accepts a single identifier or a comma/newline-separated batch. |
| formatCitation | Format one or many identifiers into Vancouver, AMA, APA, IEEE, CSE, or any of 10,000+ CSL styles. Output as text, HTML, or JSON. Returns formatted citations plus a provenance metadata block. |
| exportCitation | Export one or many identifiers to BibTeX, RIS, CSL JSON, EndNote (XML/Refer), RefWorks, MEDLINE, Zotero RDF, CSV, or plain text — ready to write to disk or hand to a reference manager. |
| checkRetraction | Check whether a single work has been retracted, corrected, or had an expression of concern raised. Sourced from Crossref updated-by (Retraction Watch). Resolves DOI/PMID/PMCID/arXiv/ADS inputs to a DOI before lookup. One identifier per call. |
| checkOpenAccess | Check whether a single work is openly accessible and where to find the best legal version. Sourced from Unpaywall. Returns OA status (gold/green/hybrid/bronze/closed), best landing/PDF URL, license, and version. Resolves DOI/PMID/PMCID/arXiv/ISBN/ADS inputs to a DOI before lookup. One identifier per call. |
| verifyCitation | Verify a claimed citation against the resolved record at its identifier. Detects the Topaz et al. (Lancet 2026) fabrication pattern — real DOI + invented title — that resolveIdentifier alone cannot catch. Returns one of four verdicts (matched / mismatch / ambiguous / not_found) plus per-field similarity scores and the resolved record so the user can see where the cited title and the actual paper diverged. Optional Stage 3 LLM screen rescues informal-abbreviation false positives (paid plans / first-party authentication only). One citation per call. |
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"scholar-sidekick": {
"command": "npx",
"args": ["-y", "scholar-sidekick-mcp@latest"],
"env": {
"RAPIDAPI_KEY": "your-rapidapi-key"
}
}
}
}
claude mcp add scholar-sidekick \
-e RAPIDAPI_KEY=your-rapidapi-key \
-- npx -y scholar-sidekick-mcp@latest
Add to .cursor/mcp.json or .vscode/mcp.json:
{
"mcpServers": {
"scholar-sidekick": {
"command": "npx",
"args": ["-y", "scholar-sidekick-mcp@latest"],
"env": {
"RAPIDAPI_KEY": "your-rapidapi-key"
}
}
}
}
Install a companion Agent Skill that teaches Claude Code, Cline, and other agents when and how to use these tools — it complements the server config above:
npx skills add mlava/scholar-sidekick-mcp
| Variable | Required | Description |
|---|---|---|
RAPIDAPI_KEY |
Yes | Your RapidAPI subscription key |
RAPIDAPI_HOST |
No | RapidAPI host (defaults to scholar-sidekick.p.rapidapi.com) |
SCHOLAR_SIDEKICK_TIMEOUT_MS |
No | Request timeout in milliseconds (default: 30000) |
Scholar Sidekick supports 10,000+ CSL styles, including all major formats used in academic publishing:
| Style | Keyword |
|---|---|
| Vancouver | vancouver |
| APA (7th ed.) | apa |
| AMA | ama |
| IEEE | ieee |
| CSE | cse |
| Chicago (author-date) | chicago-author-date |
| Harvard | harvard-cite-them-right |
| MLA | modern-language-association |
| Turabian | turabian-fullnote-bibliography |
| Nature | nature |
| BMJ | bmj |
| Lancet | the-lancet |
Any CSL style ID can be passed as the style parameter.
Once connected, ask your AI assistant:
Single identifier
Batch input (comma- or newline-separated — every tool handles it)
End-to-end workflow (the assistant chains resolveIdentifier → formatCitation → exportCitation in one prompt)
.bib file at the end: PMID:30049270, arXiv:2301.08745, 10.1038/s41586-021-03819-2"Retraction & open-access checks (one identifier per call)
isRetracted: true with the retraction notice and date10.1056/NEJMoa2033700)PMID:30049270)PMC7793608)ISBN:9780192854087)2301.08745)Every formatCitation and exportCitation response is followed by a metadata block so the assistant — and the user — can see exactly which engine produced each citation:
formatter — builtin (one of Vancouver, AMA, APA, IEEE, CSE — hand-tuned in TypeScript) or csl (citeproc-js with a CSL stylesheet).styleUsed — the canonical style ID after alias and dependent-style resolution (e.g. asking for harvard resolves to harvard-cite-them-right).requestId — for support, reproducibility, and log correlation.warnings — populated when a fallback was used or the requested style was a dependent of another.Identifier resolution is deterministic given the same inputs and pinned upstream metadata. Repeated identical requests are cache-hit on the underlying REST API and surface that via the x-scholar-cache header.
For programmatic access outside of MCP clients, Scholar Sidekick is also available as a REST API on RapidAPI. Your same RapidAPI key works for both.
npm install
npm run build # Bundle to dist/mcp-server.mjs
npm test # Run tests
npm run typecheck
MIT
Run in your terminal:
claude mcp add mlava-scholar-sidekick-mcp -- npx pro tip
Just installed mlava/scholar-sidekick-mcp? Say to Claude: "remember why I installed mlava/scholar-sidekick-mcpand what I want to try" — it'll save into your Vault.
how this works →Security
Low riskAutomated heuristic from public metadata — not a security guarantee.