An open API service indexing awesome lists of open source software.

https://github.com/MCP-Mirror/blazickjp_arxiv-mcp-server

Mirror of https://github.com/blazickjp/arxiv-mcp-server
https://github.com/MCP-Mirror/blazickjp_arxiv-mcp-server

Last synced: 3 months ago
JSON representation

Mirror of https://github.com/blazickjp/arxiv-mcp-server

Awesome Lists containing this project

README

          

[![Python Version](https://img.shields.io/badge/python-3.11+-blue.svg)](https://www.python.org/downloads/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

# ArXiv MCP Server

> ๐Ÿ” Enable AI assistants to search and access arXiv papers through a simple MCP interface.

The ArXiv MCP Server provides a bridge between AI assistants and arXiv's research repository through the Message Control Protocol (MCP). It allows AI models to search for papers and access their content in a programmatic way.



๐Ÿค **[Contribute](https://github.com/blazickjp/arxiv-mcp-server/blob/main/CONTRIBUTING.md)** โ€ข
๐Ÿ“ **[Report Bug](https://github.com/blazickjp/arxiv-mcp-server/issues)**

## โœจ Core Features

- ๐Ÿ”Ž **Paper Search**: Query arXiv papers with filters for date ranges and categories
- ๐Ÿ“„ **Paper Access**: Download and read paper content
- ๐Ÿ“‹ **Paper Listing**: View all downloaded papers
- ๐Ÿ—ƒ๏ธ **Local Storage**: Papers are saved locally for faster access

## ๐Ÿš€ Quick Start

Install using uv:

```bash
uv pip install git+https://github.com/blazickjp/arxiv-mcp-server.git
```

For development:

```bash
# Clone and set up development environment
git clone https://github.com/blazickjp/arxiv-mcp-server.git
cd arxiv-mcp-server

# Create and activate virtual environment
uv venv
source .venv/bin/activate

# Install with test dependencies
uv pip install -e ".[test]"
```

### ๐Ÿ”Œ MCP Integration

Add this configuration to your MCP client config file:

```json
{
"mcpServers": {
"arxiv-mcp-server": {
"command": "uv",
"args": [
"run",
"arxiv-mcp-server",
"--storage-path", "/path/to/paper/storage"
]
}
}
}
```

## ๐Ÿ’ก Available Tools

The server provides four main tools:

### 1. Paper Search
Search for papers with optional filters:

```python
result = await call_tool("search_papers", {
"query": "transformer architecture",
"max_results": 10,
"date_from": "2023-01-01",
"categories": ["cs.AI", "cs.LG"]
})
```

### 2. Paper Download
Download a paper by its arXiv ID:

```python
result = await call_tool("download_paper", {
"paper_id": "2401.12345"
})
```

### 3. List Papers
View all downloaded papers:

```python
result = await call_tool("list_papers", {})
```

### 4. Read Paper
Access the content of a downloaded paper:

```python
result = await call_tool("read_paper", {
"paper_id": "2401.12345"
})
```

## โš™๏ธ Configuration

Configure through environment variables:

| Variable | Purpose | Default |
|----------|---------|---------|
| `ARXIV_STORAGE_PATH` | Paper storage location | ~/.arxiv-mcp-server/papers |

## ๐Ÿงช Testing

Run the test suite:

```bash
python -m pytest
```

## ๐Ÿ“„ License

Released under the MIT License. See the LICENSE file for details.

---

Made with โค๏ธ by the Pear Labs Team

ArXiv Server MCP server