arxiv-research

Installation
CLI
npx skills add https://github.com/emi-dm/research-mcp --skill arxiv-research

Install this skill with the CLI and start using the SKILL.md workflow in your workspace.

Last updated 4/23/2026

Research-MCP

A comprehensive MCP (Model Context Protocol) server for academic research on arXiv, with integrated GitHub Copilot skills for enhanced research workflows.

šŸŽÆ Overview

This project provides powerful tools for researchers and AI assistants to:

  • Search and analyze academic papers from arXiv
  • Extract structured information from PDFs
  • Query papers with natural language
  • Conduct systematic literature reviews

šŸš€ Quick Start

Prerequisites

  • Python 3.10 or higher
  • uv package manager

Installation

  1. Clone the repository:
git clone <your-repo-url>
cd Research-MCP
  1. Install dependencies:
uv sync

Running the Server

Start the arXiv MCP server:

uv run arxiv-mcp/arxiv_mcp.py

The server will start on HTTP SSE transport (default port 8000).

šŸ“š Features

arXiv MCP Server

A FastMCP-based server providing:

  • Search Papers: Advanced search with filtering by categories, authors, dates, and publication periods
  • Date Filtering: Search papers from specific time periods (e.g., last 5 years, specific date ranges)
  • Get Paper Metadata: Retrieve detailed information for specific papers
  • Convert to Markdown: Extract and format PDF content
  • Query Papers: Ask questions about papers with LLM context
  • List Categories: Browse available arXiv categories

See arxiv-mcp/README.md for detailed documentation.
See docs/DATE_FILTERING.md for date filtering examples.

GitHub Copilot Skills

Enhanced research capabilities through specialized skills:

  • arxiv-research: Expert workflows for paper analysis and literature reviews
  • mcp-builder: Guide for creating MCP servers
  • software-tool-research: Repository analysis and documentation
  • skill-creator: Framework for creating new skills

Skills are located in .github/skills/.

šŸ“– Documentation

šŸ—ļø Project Structure

Research-MCP/
ā”œā”€ā”€ arxiv-mcp/              # MCP server implementation
│   ā”œā”€ā”€ arxiv_mcp.py        # Main server entry point
│   ā”œā”€ā”€ services/           # Core services (arXiv client, PDF processing)
│   ā”œā”€ā”€ tools/              # MCP tool implementations
│   ā”œā”€ā”€ utils/              # Utilities (errors, formatters)
│   └── README.md           # Server documentation
ā”œā”€ā”€ .github/
│   └── skills/             # GitHub Copilot skills
│       ā”œā”€ā”€ arxiv-research/
│       ā”œā”€ā”€ mcp-builder/
│       ā”œā”€ā”€ skill-creator/
│       └── software-tool-research/
ā”œā”€ā”€ pyproject.toml          # Project dependencies
└── README.md               # This file

šŸ› ļø Development

Running Tests

uv run pytest

Code Quality

Format code:

uv run black arxiv-mcp/

Lint code:

uv run ruff check arxiv-mcp/

šŸ“ Usage Examples

Searching Papers

# Basic search with category filter
{
  "query": "software testing machine learning",
  "max_results": 5,
  "categories": ["cs.SE"],
  "sort_by": "relevance"
}

# Search papers from the last 5 years
{
  "query": "automated test generation",
  "date_from": "2021",
  "max_results": 10,
  "categories": ["cs.SE"],
  "sort_by": "submitted_date"
}

# Search papers from a specific time period
{
  "query": "large language models",
  "date_from": "2022-01-01",
  "date_to": "2023-12-31",
  "max_results": 20,
  "categories": ["cs.CL", "cs.AI"]
}

Querying a Paper

{
  "arxiv_id": "2301.12345",
  "query": "What methodology do the authors use?",
  "max_pages": 100
}

See arxiv-mcp/EXAMPLES.md for more examples.

šŸ¤ Contributing

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch
  3. Add tests for new features
  4. Submit a pull request

šŸ“„ License

MIT License - See LICENSE file for details.

šŸ™ Acknowledgments

šŸ“§ Support

For issues or questions:


Made with ā¤ļø for researchers and AI-assisted research workflows