Package Exports
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (crossref-complete-mcp) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Crossref Complete MCP Server
A Model Context Protocol (MCP) server for accessing all Crossref API endpoints including works, journals, funders, members, and types. This package provides seamless integration with AI assistants and research tools through the MCP protocol.
โจ Features
- ๐ Complete API Coverage - Access all Crossref API endpoints
- ๐ Academic Works - Search and retrieve academic papers, references, and citations
- ๐ Journals - Search journals and retrieve journal information
- ๐๏ธ Funders - Search funding organizations and their supported works
- ๐ข Members - Search member organizations and their publications
- ๐ Types - Get all academic work types
- โก Fast Response - 30-second timeout with optimized performance
- ๐ก๏ธ Robust Error Handling - Comprehensive error management
- ๐ Detailed Logging - Debug-friendly logging system
- ๐ง Easy Integration - Simple MCP protocol implementation
๐ Quick Start
Installation
npm install -g crossref-complete-mcp
Usage
As a Global Command
crossref-complete-mcp
As an MCP Server
The server will start and listen for MCP protocol messages via stdio.
Integration with Claude Desktop
To use this MCP server with Claude Desktop, add the following to your Claude Desktop configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"crossref-complete-mcp": {
"command": "npx",
"args": ["-y", "crossref-complete-mcp"]
}
}
}
After adding this configuration, restart Claude Desktop and you'll be able to access all Crossref API functionality directly through the MCP interface.
Development Installation
git clone https://github.com/crossref-complete-mcp/crossref-complete-mcp.git
cd crossref-complete-mcp
npm install
npm start
๐ Usage
Available Tools
The server provides 14 tools for accessing Crossref API:
Academic Works (4 tools)
search_works
- Search academic worksget_work_by_doi
- Get work details by DOIget_work_references
- Get work referencesget_work_cited_by
- Get works that cite this work
Journals (3 tools)
search_journals
- Search journalsget_journal_by_issn
- Get journal details by ISSNget_journal_works
- Get works published in a journal
Funders (3 tools)
search_funders
- Search funding organizationsget_funder_by_id
- Get funder details by IDget_funder_works
- Get works funded by an organization
Members (3 tools)
search_members
- Search member organizationsget_member_by_id
- Get member details by IDget_member_works
- Get works from a member organization
Types (1 tool)
get_types
- Get all academic work types
Examples
Search Academic Works
{
"name": "search_works",
"arguments": {
"query": "artificial intelligence",
"rows": 10,
"filter": "type:journal-article",
"sort": "published",
"order": "desc"
}
}
Get Work by DOI
{
"name": "get_work_by_doi",
"arguments": {
"doi": "10.1038/nature12373"
}
}
Search Journals
{
"name": "search_journals",
"arguments": {
"query": "Nature",
"rows": 5
}
}
Search Funders
{
"name": "search_funders",
"arguments": {
"query": "National Science Foundation",
"rows": 10
}
}
๐ง Technical Details
- Timeout: 30 seconds
- Headers: Automatic Content-Type and User-Agent
- Error Handling: Distinguishes between network, API, and timeout errors
- Logging: Detailed request and response logging
- Base URL: https://api.crossref.org
๐ ๏ธ Error Handling
The server handles the following error types:
- Timeout Errors: Requests exceeding 30 seconds
- Network Errors: Unable to connect to API server
- API Errors: Server returning error status codes
- Parameter Errors: Missing required parameters or incorrect types
๐งช Testing
Run the test suite:
npm test
This will test:
- API connectivity
- Parameter validation
- Error handling
๐ Project Structure
โโโ server.js # Main server file
โโโ package.json # Project configuration and dependencies
โโโ README.md # Project documentation
โโโ LICENSE # MIT License
โโโ mcp-config-example.json # Example MCP configuration
โโโ test/
โโโ test-api.js # Test suite
๐ Development
Debug Mode
Run in debug mode with Node.js debugger:
npm run dev
Set breakpoints in your debugger for development.
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests for new functionality
- Submit a pull request
๐ License
MIT License - see LICENSE file for details.