IACR ePrint Archive

Search and retrieve cryptographic research papers from the IACR Cryptology ePrint Archive.

IACR ePrint Archive MCP Server

License: MIT Node.js TypeScript

A Model Context Protocol (MCP) server that provides access to the IACR Cryptology ePrint Archive, enabling AI assistants to search and retrieve cryptographic research papers.

✨ Features

  • šŸ” Smart Search: Search papers by title, abstract, author, or keywords (RSS-based filtering)
  • šŸ“„ Paper Details: Get comprehensive information about specific papers
  • šŸ“° Recent Papers: Retrieve the latest published papers from RSS feed
  • šŸ”— Direct Links: Get web page and PDF URLs for papers
  • šŸ“‹ Download Info: Get download information for paper PDFs
  • šŸ”’ Privacy Focused: No cookies, no tracking, respects ePrint Archive guidelines

šŸš€ Quick Start

Installation

Option 1: Direct Installation

# Clone the repository
git clone https://github.com/YOUR_USERNAME/eprint-mcp-server.git
cd eprint-mcp-server

# Install dependencies and build
npm install
npm run build

Option 2: Using npx (Coming Soon)

npx eprint-mcp-server

Claude Desktop Setup

  1. Find your Claude Desktop config file:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
  2. Add the server configuration:

    {
      "mcpServers": {
        "eprint": {
          "command": "node",
          "args": ["/path/to/eprint-mcp-server/dist/index.js"]
        }
      }
    }
    
  3. Restart Claude Desktop completely (⌘+Q then reopen)

šŸ“– Usage Examples

Search Papers

Find papers about "zero knowledge proofs"

Get Recent Papers

Show me the 10 most recent cryptography papers

Get Paper Details

Tell me about paper 2025/123

Find by Author

Find papers by Goldreich from 2024

šŸ› ļø Development

Prerequisites

  • Node.js 18.0.0 or higher
  • npm or yarn

Setup

git clone https://github.com/YOUR_USERNAME/eprint-mcp-server.git
cd eprint-mcp-server
npm install

Development Commands

# Development with hot reload
npm run dev

# Build for production
npm run build

# Run tests
npm test

# Type checking
npm run type-check

Project Structure

eprint-mcp-server/
ā”œā”€ā”€ src/
│   ā”œā”€ā”€ index.ts          # Main MCP server
│   ā”œā”€ā”€ eprintClient.ts   # ePrint Archive API client
│   └── types.ts          # TypeScript type definitions
ā”œā”€ā”€ dist/                 # Compiled JavaScript output
ā”œā”€ā”€ tests/               # Test files
ā”œā”€ā”€ package.json
└── README.md

šŸ”§ Configuration

Environment Variables

  • DEBUG: Set to 1 to enable debug logging
  • MAX_RESULTS: Maximum number of search results (default: 100)

MCP Server Options

{
  "mcpServers": {
    "eprint": {
      "command": "node",
      "args": ["./dist/index.js"],
      "env": {
        "DEBUG": "0",
        "MAX_RESULTS": "50"
      }
    }
  }
}

šŸ“š Available Tools

ToolDescriptionParameters
search_papersSearch for papersquery, maxResults, author, dateFrom, dateTo
get_paperGet paper detailspaperId
get_recent_papersGet recent paperslimit
download_paperGet download infopaperId, outputPath
get_paper_urlGet paper URLspaperId

šŸ” Search Limitations

Currently, the ePrint Archive's search API endpoint is not publicly available, so this server uses RSS feed filtering for search functionality. This means:

  • āœ… Search works within recent papers (last ~100 papers from RSS)
  • āš ļø Historical search is limited
  • šŸ”„ We're working on implementing full search capabilities

šŸ¤ Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

šŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

šŸ™ Acknowledgments

šŸ“ž Support

šŸ”„ Changelog

v1.0.0 (2025-06-25)

  • ✨ Initial release
  • šŸ” RSS-based search functionality
  • šŸ“„ Paper details retrieval
  • šŸ“° Recent papers listing
  • šŸ”— Direct URL generation

Made with ā¤ļø for the cryptography research community

Related Servers