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:
search_papers: Busque artículos en arXiv usando palabras clave y obtenga resúmenes completosget_paper_details: recupera información detallada sobre un artículo específico por su ID de arXivextract_paper_content: Descarga y extrae el contenido del texto completo del PDF de un artículoanalyze_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
Instalar uv si no lo tienes:
pip install uvClonar este repositorio:
git clone https://github.com/kelvingao/arxiv-mcp.git cd arxiv-mcpInstalar dependencias:
uv pip install -e .Cree un archivo
.envbasado en.env.example:cp .env.example .envConfigure sus variables de entorno en el archivo
.env(ver sección Configuración)
Uso de Docker (recomendado)
Construya la imagen de Docker:
docker build -t mcp/arxiv --build-arg PORT=8050 .Cree un archivo
.envbasado en.env.exampley configure sus variables de entorno
Configuración
Las siguientes variables de entorno se pueden configurar en su archivo .env :
Variable  | Descripción  | Ejemplo  | 
  | Protocolo de transporte (sse o stdio)  | 
  | 
  | Host al que vincularse cuando se utiliza el transporte SSE  | 
  | 
  | Puerto para escuchar cuando se utiliza el transporte SSE  | 
  | 
Ejecución del servidor
Usando uv
Transporte SSE
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
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:
Nota para los usuarios de Windsurf : utilice
serverUrlen lugar deurlen 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:
Docker con configuración de 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
Obtener detalles del documento
Extracción del contenido del papel
Analizando un artículo
Construyendo su propio servidor MCP
Esta implementación proporciona una base para construir servidores MCP más complejos. Para construir el suyo propio:
Agregue sus propias herramientas creando métodos con el decorador
@mcp.tool()Crea tu propia función de vida útil para agregar tus propias dependencias (clientes, conexiones de base de datos, etc.)
Modificar las herramientas existentes o agregar nuevas para mejorar la funcionalidad
Agregue indicaciones y recursos con
@mcp.resource()y@mcp.prompt()
Licencia
Expresiones de gratitud
arXiv por proporcionar acceso abierto a artículos de investigación
El equipo del Protocolo de Contexto Modelo para la creación del estándar MCP
This server cannot be installed
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.
Related MCP Servers
- Asecurity-licenseAqualityEnables 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 -46Apache 2.0
 - Asecurity-licenseAqualityA Model Context Protocol server that enables natural language interaction with arXiv.org, allowing users to search, retrieve metadata, download PDFs, and load scholarly articles into LLM context.Last updated -531MIT License
 - -security-license-qualityA comprehensive Model Context Protocol server that provides AI assistants with direct access to Semantic Scholar's academic database, enabling advanced paper discovery, citation analysis, author research, and AI-powered recommendations.Last updated -4
 - Asecurity-licenseAqualityA TypeScript implementation of the Model Context Protocol server that enables searching arXiv papers and extracting paper information through standardized client-server communication.Last updated -21