A Model Context Protocol (MCP) server that gives AI agents native access to academic papers, accurate BibTeX generation, and citation formatting via Google Scholar.
- ✓Open-source license (MIT)
- ✓Actively maintained (<30d)
- ✓Clear description
- ✓Topics declared
- ✓Documented (README)
claude mcp add cite-nexus-mcp -- uvx --from{
"mcpServers": {
"cite-nexus-mcp": {
"command": "uvx",
"args": ["--from"]
}
}
}MCP Servers overview
# CiteNexus MCP
<img src="https://raw.githubusercontent.com/akougkas/cite-nexus-mcp/v0.2.2/assets/cite-nexus.svg" alt="CiteNexus" width="88" height="88" align="right">
**Scholarly discovery and citations with evidence you can trace.**
CiteNexus connects research assistants to open scholarly metadata, specialist academic indexes,
and optional commercial databases through the Model Context Protocol. Search without an API key,
resolve stable identifiers, check references against their sources, and export citations without
asking a language model to invent the missing fields.
This is a citation and metadata service for the assistant you already use. It works alongside
reference managers such as Zotero and writing environments that support MCP.
**CiteNexus 0.2.2** includes the MCP service and the `cite-nexus-wtfp` companion.
The WTF-P integration targets its separate 0.7.0 release. Marketplace listings and native
client plugin qualification are tracked independently.
[Quick start](#quick-start) · [WTF-P integration](https://github.com/akougkas/cite-nexus-mcp/blob/v0.2.2/docs/wtf-p.md) ·
[Provider guide](https://github.com/akougkas/cite-nexus-mcp/blob/v0.2.2/docs/providers.md) · [Troubleshooting](https://github.com/akougkas/cite-nexus-mcp/blob/v0.2.2/docs/troubleshooting.md) ·
[Release information](https://github.com/akougkas/cite-nexus-mcp/blob/v0.2.2/docs/release/README.md)
- **Useful without credentials:** Crossref, DataCite and Europe PMC are the default search sources.
arXiv and Semantic Scholar are also available without mandatory keys.
- **Optional specialist and commercial access:** OpenAlex, Google Scholar through SerpAPI,
Scopus and Web of Science Starter have explicit configuration and provider selection.
- **Source-backed records:** namespaced identifiers, retrieval timestamps, field attribution,
incomplete-author warnings and provider-specific citation counts.
- **Deterministic export:** BibTeX, RIS and CSL-JSON from retrieved metadata. No model is required.
- **Current MCP:** Python SDK 2.2, the **2026-07-28** specification, structured tool results,
resources, prompts, progress, stdio and Streamable HTTP. Earlier clients remain supported by
the SDK's legacy protocol path.
## Quick start
Python 3.11+ and [uv](https://docs.astral.sh/uv/) are required.
```bash
uvx --from cite-nexus-mcp==0.2.2 cite-nexus-mcp --version
uvx --from cite-nexus-mcp==0.2.2 cite-nexus-mcp --no-env-file --list-providers
```
For an MCP client with a `mcpServers` configuration:
```json
{
"mcpServers": {
"cite-nexus": {
"command": "uvx",
"args": ["--from", "cite-nexus-mcp==0.2.2", "cite-nexus-mcp", "--no-env-file"]
}
}
}
```
The client starts MCP over stdio. No API key or `.env` file is required. Running the server
command directly waits for a client; it is not an interactive search shell. If your client
cannot find `uvx`, use its absolute executable path. The first run downloads the package and
its dependencies.
For a persistent installation, including the WTF-P companion:
```bash
uv tool install cite-nexus-mcp==0.2.2
cite-nexus-wtfp --check
```
The diagnostic starts the actual MCP service and lists providers without querying vendor APIs.
See the [WTF-P setup](https://github.com/akougkas/cite-nexus-mcp/blob/v0.2.2/docs/wtf-p.md) for the separate integration and executable-path setting.
For local HTTP clients:
```bash
uvx --from cite-nexus-mcp==0.2.2 cite-nexus-mcp --no-env-file --transport streamable-http --port 8000
```
Connect to `http://127.0.0.1:8000/mcp`. The CLI binds only to loopback and serves a single trust
boundary. A public, multi-user deployment needs authentication, credential isolation and its
own deployment integration; the CLI does not supply those features.
## Sources and access
| Provider ID | Coverage | Access | Setup |
|---|---|---|---|
| `crossref` | Publisher-deposited DOI metadata and citation counts | Free; default | Optional `CITE_NEXUS_CONTACT_EMAIL` for the polite pool |
| `datacite` | Datasets, software and other DOI-registered research outputs | Free; default | None |
| `europe_pmc` | Biomedical literature, PubMed/PMC records, references and citations | Free; default | None |
| `arxiv` | Preprints in physics, mathematics, computing and related fields | Free | Select explicitly; paced to one request per three seconds |
| `semantic_scholar` | Academic Graph discovery and citation traversal | Free/shared anonymous limits; optional key | Optional `SEMANTIC_SCHOLAR_API_KEY` |
| `openalex` | Multidisciplinary research graph | Free credits / metered account access | `OPENALEX_API_KEY` |
| `serpapi` | Google Scholar through a vendor API | Commercial; account allowances vary | `SERPAPI_API_KEY` |
| `scopus` | Elsevier's curated literature index | Institutional/commercial entitlement | `SCOPUS_API_KEY`; optional `SCOPUS_INSTTOKEN` |
| `wos` | Clarivate Web of Science Starter | Institutional/commercial entitlement | `WOS_API_KEY` |
`find-open-access` can additionally enrich DOI records with **Unpaywall** when
`UNPAYWALL_EMAIL` is configured. It returns reported legal OA locations and licensing information;
it does not download PDFs or bypass access restrictions.
Free access is subject to provider rate limits and terms. Anonymous Semantic Scholar can be
heavily throttled. OpenAlex access policies have changed over time; CiteNexus requires a key for
that adapter even when an anonymous request happens to succeed. Institution keys do not by
themselves guarantee subscription access or access outside an institution's network.
Commercial and metered adapters are called only when selected explicitly, when resolving their
own namespaced IDs, or when deliberately configured as search defaults. Setting a key alone does
not add a vendor to default searches. `list-providers` reports configuration, capabilities and
documentation links without testing access or revealing key values.
## Research workflows
Use CiteNexus to build a literature shortlist, repair an uncertain reference, check the source
behind a citation count, or prepare a bibliography for your writing tool. For a full writing
workflow, the [WTF-P companion](https://github.com/akougkas/cite-nexus-mcp/blob/v0.2.2/docs/wtf-p.md) connects discovery to evidence tables, outlines
and manuscript work while keeping candidate references visible for review.
Ask your assistant to use the tools directly, or start with the `literature-review` and
`bibliography-audit` MCP prompts. Example tool arguments:
```json
{"query": "reproducible machine learning benchmarks", "providers": ["crossref", "arxiv"], "limit": 5}
```
```json
{"identifier": "10.1038/nature14539", "format": "bibtex"}
```
```json
{"citation": "10.1038/nature14539", "expected_title": "Deep learning", "expected_year": 2015}
```
```json
{"identifier": "PMID:26017442", "direction": "references", "provider": "europe_pmc", "limit": 10}
```
```json
{"identifiers": ["10.1038/nature14539", "arxiv:1706.03762"], "format": "csl-json"}
```
| Tool | Purpose |
|---|---|
| `list-providers` | Inspect source capabilities, access tiers and credential configuration |
| `search-papers` | Concurrent federated search, conservative deduplication and per-source pagination |
| `resolve-paper` | Retrieve and validate a DOI or namespaced identifier; optionally merge selected sources |
| `get-citation` | Export one resolved record as `bibtex`, `ris` or `csl-json` |
| `verify-citation` | Check an identifier or single BibTeX entry, including supplied title and year |
| `batch-citations` | Resolve and export 1–20 identifiers with ordered results, partial failures and progress |
| `related-papers` | Page through a source's citations or references |
| `paper-metrics` | Return observed citation counts, separated by provider and index |
| `find-open-access` | Find source-reported OA locations, with optional Unpaywall enrichment |
| `enhance-citation` | Normalize BibTeX formatting while preserving supplied bibliographic facts |
| `find-scholar-id` | Legacy Scholar discovery through SerpAPI; returns candidates for review |
`search-papers` defaults to 10 results **per provider**, not 10 overall. Results interleave each
provider's ranking, then merge compatible records. `limit` is 1–50, or at most 20 when using
SerpAPI. Use each provider's `next_offsets` with the **same limit**, selecting that provider for
the next call. Europe PMC search uses `next_cursors` instead: pass its token as `cursor`,
select only `europe_pmc`, keep the same query and limit, and leave `offset` at zero.
Offsets must be multiples of the limit, up to 10,000. `year_from`, `year_to` and
`open_access_only` filter the fetched page; unknown values are excluded. Abstracts are omitted
from search results by default; set `include_abstract: true` or resolve a record to retrieve them.
Search records are compact by default: `field_sources` is empty while `sources` still names every
provider. Set `detail: "full"` or resolve a record for per-field provenance.
Provider search languages differ: explicit advanced queries use that provider's syntax.
Supported identifiers include `10.1038/nature14539`, `arxiv:1706.03762`, `PMID:26017442`,
`PMC12345`, `openalex:W2919115771`, `s2:<paperId>`, `s2:CorpusId:<number>`,
`scholar:<numericClusterId>`, `scopus:<numericId>`, and `WOS:<recordId>`. DOI, arXiv and PubMed
URLs are recognized. Arbitrary URLs are not fetched, and unprefixed numeric strings are not
assumed to be PubMed or Scholar IDs.
DOI resolution tries Crossref, DataCite and Europe PMC in order until a matching record is
retrieved. An explicit `providers` list instead checks each compatible selected source and
retains evidence and disagreements. Native identifiers route to their corresponding source.
A title search always returns candidates; it never silently declares the first result a match.
Read the MCP resources `cite-nexus://methodology`, `cite-nexus://providers` and
`cite-nexus://workflows` for machine-accessible guidance.
What people ask about cite-nexus-mcp
What is akougkas/cite-nexus-mcp?
+
akougkas/cite-nexus-mcp is mcp servers for the Claude AI ecosystem. A Model Context Protocol (MCP) server that gives AI agents native access to academic papers, accurate BibTeX generation, and citation formatting via Google Scholar. It has 1 GitHub stars and its last recorded update is dated 2026-09-17.
How do I install cite-nexus-mcp?
+
You can install cite-nexus-mcp by cloning the repository (https://github.com/akougkas/cite-nexus-mcp) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.
Is akougkas/cite-nexus-mcp safe to use?
+
Our security agent has analyzed akougkas/cite-nexus-mcp and assigned a Trust Score of 95/100 (tier: Verified). See the full breakdown of passed checks and flags on this page.
Who maintains akougkas/cite-nexus-mcp?
+
akougkas/cite-nexus-mcp is maintained by akougkas. The last recorded GitHub activity is dated 2026-09-17, with 1 open issues.
Are there alternatives to cite-nexus-mcp?
+
Yes. On ClaudeWave you can browse similar mcp servers at /categories/mcp, sorted by popularity or recent activity.
Deploy cite-nexus-mcp to your cloud
Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.
Maintain this repo? Add a badge to your README
Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.
[](https://claudewave.com/repo/akougkas-cite-nexus-mcp)<a href="https://claudewave.com/repo/akougkas-cite-nexus-mcp"><img src="https://claudewave.com/api/badge/akougkas-cite-nexus-mcp" alt="Featured on ClaudeWave: akougkas/cite-nexus-mcp" width="320" height="64" /></a>More MCP Servers
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
User-friendly AI Interface (Supports Ollama, OpenAI API, ...)
An open-source AI agent that brings the power of Gemini directly into your terminal.
Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface
🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl! Don't be shy, join here: https://discord.gg/EMgGbDceNQ
The fastest path to AI-powered full stack observability, even for lean teams.