# Arxiv Mcp

> MCP server for searching and reading arXiv papers with LLMs

- **Type:** MCP server
- **Install:** `agentstack add mcp-annasusu-arxiv-mcp`
- **Verified:** Pending review
- **Seller:** [AnnaSuSu](https://agentstack.voostack.com/s/annasusu)
- **Installs:** 0
- **Category:** [AI & ML](https://agentstack.voostack.com/c/ai-and-ml)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [AnnaSuSu](https://github.com/AnnaSuSu)
- **Source:** https://github.com/AnnaSuSu/arxiv-mcp
- **Website:** https://pypi.org/project/arxiv-paper-mcp-server/

## Install

```sh
agentstack add mcp-annasusu-arxiv-mcp
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# arXiv MCP Server

[](https://pypi.org/project/arxiv-paper-mcp-server/)
[](https://pypi.org/project/arxiv-paper-mcp-server/)
[](https://opensource.org/licenses/MIT)

A Model Context Protocol (MCP) server that enables LLMs to search, download, and read arXiv papers. Gives AI assistants direct access to scientific literature.

## Features

- **Search papers** - Search by title, keywords, author, or arXiv ID
- **Read full text** - Download PDFs and extract text automatically
- **Section extraction** - Get specific sections (abstract, introduction, methods, conclusion)
- **Local caching** - Downloaded papers are cached locally for fast re-access
- **Zero configuration** - Works out of the box with sensible defaults

## Getting Started

### Prerequisites

This MCP server uses `uvx` to run. First, install `uv`:

```bash
# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

# Or using Homebrew
brew install uv
```

After installation, restart your terminal.

### Installation

Install the arXiv MCP server with your client.

Standard config works in most tools:

```json
{
  "mcpServers": {
    "arxiv": {
      "command": "uvx",
      "args": ["arxiv-paper-mcp-server"]
    }
  }
}
```

Amp

```bash
amp mcp add arxiv -- uvx arxiv-paper-mcp-server
```

Claude Code

```bash
claude mcp add arxiv-server -- uvx arxiv-paper-mcp-server
```

Claude Desktop

Add to your `claude_desktop_config.json`:

- macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
- Windows: `%APPDATA%\Claude\claude_desktop_config.json`

```json
{
  "mcpServers": {
    "arxiv": {
      "command": "uvx",
      "args": ["arxiv-paper-mcp-server"]
    }
  }
}
```

Codex

```bash
codex mcp add arxiv -- uvx arxiv-paper-mcp-server
```

Cursor

Add to `~/.cursor/mcp.json`:

```json
{
  "mcpServers": {
    "arxiv": {
      "command": "uvx",
      "args": ["arxiv-paper-mcp-server"]
    }
  }
}
```

Factory

Add to Factory MCP settings:

```json
{
  "mcpServers": {
    "arxiv": {
      "command": "uvx",
      "args": ["arxiv-paper-mcp-server"]
    }
  }
}
```

Gemini CLI

```bash
gemini mcp add arxiv -- uvx arxiv-paper-mcp-server
```

Goose

Run `goose configure`, then add to `~/.config/goose/config.yaml`:

```yaml
extensions:
  arxiv:
    command: uvx
    args:
      - arxiv-paper-mcp-server
```

Kiro

Add to Kiro MCP settings:

```json
{
  "mcpServers": {
    "arxiv": {
      "command": "uvx",
      "args": ["arxiv-paper-mcp-server"]
    }
  }
}
```

LM Studio

Add to LM Studio MCP settings:

```json
{
  "mcpServers": {
    "arxiv": {
      "command": "uvx",
      "args": ["arxiv-paper-mcp-server"]
    }
  }
}
```

opencode

```bash
opencode mcp add arxiv -- uvx arxiv-paper-mcp-server
```

Qodo Gen

Add to Qodo Gen MCP configuration:

```json
{
  "mcpServers": {
    "arxiv": {
      "command": "uvx",
      "args": ["arxiv-paper-mcp-server"]
    }
  }
}
```

VS Code

Add to `.vscode/mcp.json` in your workspace:

```json
{
  "mcpServers": {
    "arxiv": {
      "command": "uvx",
      "args": ["arxiv-paper-mcp-server"]
    }
  }
}
```

Warp

Add to Warp MCP settings:

```json
{
  "mcpServers": {
    "arxiv": {
      "command": "uvx",
      "args": ["arxiv-paper-mcp-server"]
    }
  }
}
```

Windsurf

Add to `~/.windsurf/mcp.json`:

```json
{
  "mcpServers": {
    "arxiv": {
      "command": "uvx",
      "args": ["arxiv-paper-mcp-server"]
    }
  }
}
```

Using pip

```bash
pip install arxiv-paper-mcp-server
arxiv-mcp-server
```

## Tools

| Tool | Description |
|------|-------------|
| `search` | Search arXiv papers by title, keywords, or arXiv ID (e.g., `2401.12345`) |
| `get_paper` | Download and read the full text of a paper, with optional section filtering |
| `list_downloaded_papers` | List all locally cached papers |

### Tool Details

#### `search(query, max_results=10)`

Search for papers on arXiv. Supports:
- Keywords: `"transformer attention mechanism"`
- Paper ID: `"2401.12345"` or `"arXiv:2401.12345"`
- Author: `"Yann LeCun"`

Returns paper ID, title, authors, publication date, and abstract preview.

#### `get_paper(paper_id, section="all")`

Download and extract text from a paper.

| Section | Description |
|---------|-------------|
| `all` | Full paper text (default) |
| `abstract` | Abstract only |
| `introduction` | Introduction section |
| `method` | Methods/Approach section |
| `conclusion` | Conclusion/Discussion section |

#### `list_downloaded_papers()`

List all papers that have been downloaded and cached locally.

## Configuration

| Environment Variable | Description | Default |
|---------------------|-------------|---------|
| `ARXIV_STORAGE_DIR` | Directory for downloaded papers | `~/.arxiv-mcp/papers` |

## Usage Examples

**Search for papers:**
```
User: Find recent papers about prompt compression

Claude: [Uses search("prompt compression", max_results=5)]
Found 5 papers:
- 2504.16574: PIS: Linking Importance Sampling...
- ...
```

**Read a specific paper:**
```
User: Read the introduction of paper 2401.12345

Claude: [Uses get_paper("2401.12345", section="introduction")]
[Returns the introduction section]
```

**Review cached papers:**
```
User: What papers have I downloaded?

Claude: [Uses list_downloaded_papers()]
You have 3 papers cached locally:
- 2401.12345: Paper Title...
```

## Development

```bash
# Clone the repository
git clone https://github.com/AnnaSuSu/arxiv-mcp.git
cd arxiv-mcp

# Install dependencies
uv sync

# Run server locally
uv run arxiv-mcp-server
```

## Requirements

- Python 3.10+
- Dependencies: `mcp`, `arxiv`, `pymupdf`

## License

MIT License - see [LICENSE](LICENSE) for details.

## Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [AnnaSuSu](https://github.com/AnnaSuSu)
- **Source:** [AnnaSuSu/arxiv-mcp](https://github.com/AnnaSuSu/arxiv-mcp)
- **License:** MIT
- **Homepage:** https://pypi.org/project/arxiv-paper-mcp-server/

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** yes
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: flagged — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/mcp-annasusu-arxiv-mcp
- Seller: https://agentstack.voostack.com/s/annasusu
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
