# Bibverify

Validates BibTeX citations against DOI, arXiv, and academic registries. Useful when checking research bibliographies before submission.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 98
- Author: Hylouis233
- License: MIT · policy=link-only · description only; the file stays with the author
- Source: https://github.com/Hylouis233/bibverify
- Updated: 2026-10-22
- HTML: https://affpapa.org/en/nevibecode/mcp/bibverify

## What it does

Bibverify matches bibliographic references against public scholarly indexes including Crossref, OpenAlex, Semantic Scholar, and PubMed. It checks explicit DOI, PMID, PMCID, and arXiv keys first. After that, it compares paper titles, contributor lists, release years, and page ranges to detect discrepancies.

By default, the server operates in a non-destructive manner and avoids rewriting the underlying `.bib` file. Custom metadata like personal notes or abstracts remains untouched. The tool requires an active internet connection to query metadata registries. Successful lookups are stored in an expiring SQLite cache to avoid repeated network hits.

## Requirements
- Needs: Python and uv (commands run via uvx)

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add bibverify -- uvx bibverify
```
uvx runs the command named after the package; if the README names another one, use uvx --from bibverify <command>

### Codex

**Platform CLI**
```bash
codex mcp add bibverify -- uvx bibverify
```
uvx runs the command named after the package; if the README names another one, use uvx --from bibverify <command>

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "bibverify": {
            "command": "uvx",
            "args": [
                "bibverify"
            ]
        }
    }
}
```
uvx runs the command named after the package; if the README names another one, use uvx --from bibverify <command>

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "bibverify": {
            "type": "stdio",
            "command": "uvx",
            "args": [
                "bibverify"
            ]
        }
    }
}
```
uvx runs the command named after the package; if the README names another one, use uvx --from bibverify <command>

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add bibverify uvx bibverify
```
uvx runs the command named after the package; if the README names another one, use uvx --from bibverify <command>

## When to use it
- detect metadata conflicts between a DOI and article title
- retrieve BibTeX records directly from a DOI or arXiv identifier
- verify bibliography citations against Crossref, PubMed, and Europe PMC
- update citation fields safely without dropping abstract or note tags

## Example prompts
- Check `references.bib` with Bibverify and flag any mismatched author names or publication years.
- Fetch a clean BibTeX entry for DOI `10.1038/nature12373` using key `nature2013`.
- Run a dry-run verification on my bibliography file and report missing database entries.

## Similar
- [Zotero MCP](https://affpapa.org/en/nevibecode/mcp/zotero-mcp.md) — MCP server · ★ 5548
- [arxiv-mcp-server](https://affpapa.org/en/nevibecode/mcp/arxiv-mcp-server.md) — MCP server · ★ 3231
- [PaperBanana](https://affpapa.org/en/nevibecode/mcp/paperbanana.md) — MCP server · ★ 2417
- [MATLAB MCP Server](https://affpapa.org/en/nevibecode/mcp/matlab-mcp-server.md) — MCP server · ★ 1716
- [Hex Research](https://affpapa.org/en/nevibecode/mcp/hex-research.md) — MCP server · ★ 583
- [DocsAgent — Zotero, Obsidian & Apple Notes MCP Server](https://affpapa.org/en/nevibecode/mcp/docsagent-zotero-obsidian-apple-notes-mcp-server.md) — MCP server · ★ 578

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
