Skip to main content
Glama

ArXiv-MCP

by kelvingao
MIT License
  • Linux
  • Apple

Una implementación de servidor del Protocolo de Contexto Modelo (MCP) que permite a los agentes de IA buscar, recuperar y analizar artículos académicos de arXiv , el popular repositorio de acceso abierto de preimpresiones electrónicas.

Descripción general

Este proyecto proporciona un servidor MCP que permite a los agentes de IA interactuar con el repositorio arXiv, buscar artículos por palabras clave, recuperar información detallada sobre artículos específicos e incluso extraer y analizar su contenido. Sirve como herramienta práctica de apoyo a la investigación y como implementación de referencia para el desarrollo de servidores MCP.

La implementación sigue las mejores prácticas establecidas para la construcción de servidores MCP, lo que permite una integración perfecta con cualquier cliente compatible con MCP.

Características

El servidor proporciona varias herramientas potentes para la investigación académica:

  1. search_papers : Busque artículos en arXiv usando palabras clave y obtenga resúmenes completos
  2. get_paper_details : recupera información detallada sobre un artículo específico por su ID de arXiv
  3. extract_paper_content : Descarga y extrae el contenido del texto completo del PDF de un artículo
  4. analyze_paper : Analiza el contenido de un artículo y genera un resumen completo.

Prerrequisitos

  • Python 3.11+
  • Docker si se ejecuta el servidor MCP como contenedor (recomendado)

Instalación

Usando uv

  1. Instalar uv si no lo tienes:
    pip install uv
  2. Clonar este repositorio:
    git clone https://github.com/kelvingao/arxiv-mcp.git cd arxiv-mcp
  3. Instalar dependencias:
    uv pip install -e .
  4. Cree un archivo .env basado en .env.example :
    cp .env.example .env
  5. Configure sus variables de entorno en el archivo .env (ver sección Configuración)

Uso de Docker (recomendado)

  1. Construya la imagen de Docker:
    docker build -t mcp/arxiv --build-arg PORT=8050 .
  2. Cree un archivo .env basado en .env.example y configure sus variables de entorno

Configuración

Las siguientes variables de entorno se pueden configurar en su archivo .env :

VariableDescripciónEjemplo
TRANSPORTProtocolo de transporte (sse o stdio)sse
HOSTHost al que vincularse cuando se utiliza el transporte SSE0.0.0.0
PORTPuerto para escuchar cuando se utiliza el transporte SSE8050

Ejecución del servidor

Usando uv

Transporte SSE
# Set TRANSPORT=sse in .env then: python src/server.py

El servidor MCP se ejecutará como un punto final de API al que podrá conectarse con la configuración que se muestra a continuación.

Transporte de Studio

Con stdio, el cliente MCP puede iniciar por sí mismo el servidor MCP, por lo que no es necesario ejecutar nada en este momento.

Usando Docker

Transporte SSE
docker run --env-file .env -p 8050:8050 mcp/arxiv

El servidor MCP se ejecutará como un punto final de API dentro del contenedor al que puede conectarse con la configuración que se muestra a continuación.

Transporte de Studio

Con stdio, el propio cliente MCP puede poner en marcha el contenedor del servidor MCP, por lo que no hay nada que ejecutar en este momento.

Integración con clientes MCP

Configuración de SSE

Una vez que tenga el servidor funcionando con el transporte SSE, puede conectarse a él utilizando esta configuración:

{ "mcpServers": { "arxiv": { "transport": "sse", "url": "http://localhost:8050/sse" } } }

Nota para los usuarios de Windsurf : utilice serverUrl en lugar de url en su configuración:

{ "mcpServers": { "arxiv": { "transport": "sse", "serverUrl": "http://localhost:8050/sse" } } }

Nota para los usuarios de n8n : utilice host.docker.internal en lugar de localhost, ya que n8n tiene que llegar fuera de su propio contenedor a la máquina host:

Entonces la URL completa en el nodo MCP sería: http://host.docker.internal:8050/sse

Asegúrese de actualizar el puerto si está utilizando un valor distinto del predeterminado 8050.

Python con configuración de Stdio

Agregue este servidor a su configuración de MCP para Claude Desktop, Windsurf o cualquier otro cliente de MCP:

{ "mcpServers": { "arxiv": { "command": "your/path/to/arxiv-mcp/.venv/bin/python", "args": ["your/path/to/arxiv-mcp/src/main.py"], "env": { "TRANSPORT": "stdio" } } } }

Docker con configuración de Stdio

{ "mcpServers": { "arxiv": { "command": "docker", "args": ["run", "--rm", "-i", "-e", "TRANSPORT", "mcp/arxiv"], "env": { "TRANSPORT": "stdio" } } } }

Ejemplos de uso

A continuación se muestran algunos ejemplos de cómo utilizar el servidor MCP de arXiv con un agente de IA:

Buscando documentos

Find recent papers about quantum computing published in the last year.

Obtener detalles del documento

Get details for the paper with arXiv ID 2303.08774

Extracción del contenido del papel

Extract the full text from the paper with arXiv ID 2303.08774

Analizando un artículo

Analyze the methodology section of the paper with arXiv ID 2303.08774

Construyendo su propio servidor MCP

Esta implementación proporciona una base para construir servidores MCP más complejos. Para construir el suyo propio:

  1. Agregue sus propias herramientas creando métodos con el decorador @mcp.tool()
  2. Crea tu propia función de vida útil para agregar tus propias dependencias (clientes, conexiones de base de datos, etc.)
  3. Modificar las herramientas existentes o agregar nuevas para mejorar la funcionalidad
  4. Agregue indicaciones y recursos con @mcp.resource() y @mcp.prompt()

Licencia

Licencia MIT

Expresiones de gratitud

-
security - not tested
A
license - permissive license
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Un servidor de protocolo de contexto de modelo que permite a los agentes de IA buscar, recuperar y analizar artículos académicos de arXiv, admitiendo funciones como búsqueda de palabras clave, recuperación de detalles de artículos, extracción de contenido y análisis de artículos.

  1. Características
    1. Prerrequisitos
      1. Instalación
        1. Usando uv
        2. Uso de Docker (recomendado)
      2. Configuración
        1. Ejecución del servidor
          1. Usando uv
          2. Usando Docker
        2. Integración con clientes MCP
          1. Configuración de SSE
          2. Python con configuración de Stdio
          3. Docker con configuración de Stdio
        3. Ejemplos de uso
          1. Buscando documentos
          2. Obtener detalles del documento
          3. Extracción del contenido del papel
          4. Analizando un artículo
        4. Construyendo su propio servidor MCP
          1. Licencia
            1. Expresiones de gratitud

              Related MCP Servers

              • A
                security
                A
                license
                A
                quality
                The ArXiv MCP Server bridges the gap between AI models and academic research by providing a sophisticated interface to arXiv's extensive research repository. This server enables AI assistants to perform precise paper searches and access full paper content, enhancing their ability to engage with scientific literature.
                Last updated -
                4
                1,218
                Python
                Apache 2.0
                • Linux
                • Apple
              • A
                security
                A
                license
                A
                quality
                Enables real-time search and retrieval of academic paper information from multiple sources, providing access to paper metadata, abstracts, and full-text content when available, with structured data responses for integration with AI models that support tool/function calling.
                Last updated -
                3
                11
                Python
                AGPL 3.0
              • A
                security
                A
                license
                A
                quality
                Enables AI assistants to search and access arXiv research papers through a simple Message Control Protocol interface, allowing for paper search, download, listing, and reading capabilities.
                Last updated -
                4
                1
                Python
                Apache 2.0
              • -
                security
                A
                license
                -
                quality
                Enables AI assistants to search, download, and read arXiv research papers through a Message Control Protocol interface, with support for paper filtering and local storage.
                Last updated -
                Apache 2.0

              View all related MCP servers

              MCP directory API

              We provide all the information about MCP servers via our MCP API.

              curl -X GET 'https://glama.ai/api/mcp/v1/servers/kelvingao/arxiv-mcp'

              If you have feedback or need assistance with the MCP directory API, please join our Discord server