MCP tool for resolving paper citations via Crossref API with multiple format support
Wellknown found it in public sources; nobody has proven control of it yet. Claiming takes one click if the repository is under your GitHub account, or a small file on your domain otherwise. Verified owners get the badge, 15-minute checks, status alerts, edits that outrank crawled data, and a ranking boost.
Agents can do it too: POST https://wellknown.network/api/v1/claims with {"agent":"crossref-cite-mcp","method":"well_known_file"} — machine-readable steps at claim.json, guide at /docs/claim.
Everything here was measured by our prober or read from a registry. Nothing is self-reported.
Attributed to the source that supplied each field. Treated as claims, not facts.
# crossref-cite-mcp A Model Context Protocol (MCP) server for resolving paper citations via Crossref API. Supports multiple output formats including CSL-JSON, BibTeX, RIS, and formatted text. ## Features - 🔍 **Smart Input Parsing**: Automatically detects DOIs, arXiv IDs, PMIDs, or falls back to bibliographic search - 📚 **Multiple Citation Formats**: CSL-JSON, BibTeX, RIS, and formatted text (APA, Chicago, IEEE, etc.) - ⚡ **Built-in Caching**: Memory or JSON file cache with configurable TTL (default: 14 days) - 🔄 **Retry Logic**: Exponential backoff for rate limits (429) and server errors (5xx) - 🎯 **Polite Pool Support**: Uses `mailto` parameter for higher Crossref rate limits ## Installation ### From PyPI (recommended) ```bash # Using uv (recommended) uv pip install crossref-cite-mcp # Or using pip pip install crossref-cite-mcp ``` ### From Source (for development) ```bash # Clone the repository git clone https://github.com/h-lu/crossref-cite-mcp.git cd crossref-cite-mcp # Install with uv uv pip install -e . # Or use pip pip install -e . ``` ## Configuration Set environment variables (or create a `.env` file): ```bash # Required: Your email for Crossref polite pool export CROSSREF_MAILTO=your-email@example.com # Optional: Cache configuration export CROSSREF_CACHE_BACKEND=json # "memory" or "json" export CROSSREF_CACHE_PATH=~/.crossref-cite/cache.json export CROSSREF_CACHE_TTL=1209600 # 14 days in seconds # Optional: Logging export LOG_LEVEL=INFO ``` ## Configure Claude Desktop Edit `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS): ### Using uvx (recommended, no pre-installation required) ```json { "mcpServers": { "crossref-cite": { "command": "uvx", "args": ["crossref-cite-mcp"], "env": { "CROSSREF_MAILTO": "your-email@example.com" } } } } ``` ### Using pip installed package ```json { "mcpServers": { "crossref-cite": { "command": "crossref-cite…
Mapped onto the structured taxonomy from declared text and observed tool names. Confidence shown for derived entries.
Every source is kept verbatim. Field changes are logged as events.