crossref-local
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| CROSSREF_LOCAL_DB | Yes | Path to the CrossRef SQLite database file. |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_worksA | Search for academic works by title, abstract, or authors. Uses FTS5 full-text search index for fast searching across 167M+ papers. Supports FTS5 query syntax: AND, OR, NOT, "exact phrases". |
| search_by_doiB | Get detailed information about a work by DOI. |
| get_statusA | Report local CrossRef database status — path, work count (~167M), FTS5 index size, citation-graph edge count, and access mode (DB vs HTTP). Use when the user asks "is the CrossRef db ready?", "how many papers do I have?", "check crossref-local status", or before running a search to confirm the db is usable. Returns: JSON string with database path, work count, FTS index count, and citation count. |
| enrich_doisA | Enrich DOIs with full metadata including citation counts and references. Use this after search() to get detailed metadata for papers. The search() tool returns basic info (title, authors, year, journal). This tool adds: citation_count, references, volume, issue, publisher, etc. Typical workflow:
|
| check_citationsA | Check citations against the local CrossRef database. Validates whether DOIs exist in the database and checks metadata completeness. |
| check_bibtexA | Check all citations in a BibTeX file against the local database. |
| cache_createA | Create a paper cache from search query. Fetches full metadata for papers matching query and saves to disk cache. Use this to build a reusable paper collection for a research topic. |
| cache_queryA | Query cached papers with field filtering. Returns minimal data to reduce context usage. Specify only fields needed. |
| cache_statsB | Get cache statistics. Returns year distribution, top journals, citation stats without loading full data. |
| cache_listA | List all available caches. Returns: JSON array of cache info (name, path, paper_count, size) |
| cache_top_citedB | Get top cited papers from cache. |
| cache_citation_summaryA | Get citation statistics for cached papers. Returns mean, median, max citations and counts of highly cited papers. |
| cache_plot_scatterA | Generate year vs citations scatter plot. Saves plot to file and returns top cited papers. |
| cache_plot_networkB | Generate citation network visualization. Creates interactive HTML graph showing citation relationships. |
| cache_exportC | Export cache to file. |
| crossref_local_skills_listA | List the names of every skill page shipped by crossref-local. Returns |
| crossref_local_skills_getA | Fetch the full Markdown content of one crossref-local skill page. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/scitex-ai/crossref-local'
If you have feedback or need assistance with the MCP directory API, please join our Discord server