arXiv MCP Server

Busca y analiza artículos académicos en arXiv.

Documentación

arxiv-mcp-server

PyPI Downloads GitHub Stars GitHub Forks Tests Python License

Install in VS Code Install in VS Code Insiders Add to Kiro Claude Code OpenAI Codex Hermes Agent MCP Registry

Un servidor MCP para buscar en arXiv, descargar artículos, leer texto completo limitado, recuperar el LaTeX original por secciones, seguir grafos de citas y mantener alertas de investigación.

Se ejecuta localmente sobre stdio de forma predeterminada. Los artículos y los índices permanecen en tu máquina; la búsqueda, la recuperación de fuentes, los grafos de citas y las descargas recurren a sus respectivos servicios externos.

Instalación

Las integraciones basadas en comandos requieren uv, que proporciona uvx. Elige tu cliente a continuación; no se requiere clonar el repositorio ni configurar un entorno de Python.

Claude Code

Añade el servidor MCP para todos los proyectos:

claude mcp add --transport stdio --scope user arxiv -- uvx arxiv-mcp-server

Para la integración de plugin más completa —que instala la conexión MCP junto con la habilidad de investigación de arXiv incluida— registra este repositorio como marketplace e instala el plugin:

claude plugin marketplace add blazickjp/arxiv-mcp-server
claude plugin install arxiv-mcp-server@arxiv-mcp

Verifica la instalación directa de MCP con claude mcp get arxiv. Reinicia Claude Code o ejecuta /reload-plugins después de instalar el plugin.

OpenAI Codex

Añade el servidor MCP:

codex mcp add arxiv -- uvx arxiv-mcp-server

O instala la conexión MCP y la habilidad de investigación incluida como plugin de Codex:

codex plugin marketplace add blazickjp/arxiv-mcp-server
codex plugin add arxiv-mcp-server@arxiv-mcp

Verifica la instalación directa de MCP con codex mcp get arxiv. Codex CLI, la extensión de Codex para IDE y Codex en la aplicación de escritorio de ChatGPT comparten esta configuración de MCP.

Hermes Agent

Añade el servidor, aprueba las herramientas descubiertas y prueba la conexión guardada:

hermes mcp add arxiv --command uvx --args arxiv-mcp-server
hermes mcp test arxiv

Kiro y VS Code

Usa el botón Añadir a Kiro, Instalar en VS Code o Instalar en VS Code Insiders de arriba.

Para la integración más completa de Kiro Power, abre el panel Powers, elige Añadir Power personalizado → Importar power desde GitHub e introduce:

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

El Power instala la conexión MCP desde mcp.json y añade orientación centrada en la investigación de arXiv. Los usuarios de Kiro que prefieran la configuración manual pueden colocar la configuración genérica siguiente en .kiro/settings/mcp.json para un espacio de trabajo o en ~/.kiro/settings/mcp.json para todos los espacios de trabajo.

Paquete de Claude Desktop

Los usuarios de macOS pueden instalar una extensión .mcpb empaquetada desde la última versión de GitHub:

  • Apple Silicon: arxiv-mcp-server-darwin-arm64-<version>.mcpb
  • Intel: arxiv-mcp-server-darwin-x86_64-<version>.mcpb

Haz doble clic en el paquete, arrástralo a Claude Desktop o abre Configuración → Extensiones → Ajustes avanzados → Instalar extensión…. El paquete incluye las dependencias del servidor y requiere CPython 3.11.x.

Otros clientes MCP

Añade esta configuración stdio a clientes que acepten la forma JSON mcpServers, como Claude Desktop y Kiro. Otros clientes pueden usar un objeto servers de nivel superior, TOML o su propia interfaz de configuración; consulta la documentación de MCP del cliente.

{
  "mcpServers": {
    "arxiv": {
      "type": "stdio",
      "command": "uvx",
      "args": ["arxiv-mcp-server"]
    }
  }
}

El directorio de artículos predeterminado es ~/.arxiv-mcp-server/papers. Para elegir otro directorio, añade "--storage-path", "/absolute/path/to/papers" a args.

Para artículos antiguos que requieren conversión de PDF, ejecuta el paquete con su extra de PDF:

{
  "mcpServers": {
    "arxiv": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "--from",
        "arxiv-mcp-server[pdf]",
        "arxiv-mcp-server"
      ]
    }
  }
}

El paquete compatible se publica en PyPI. Un paquete npm no relacionado usa el mismo nombre, así que no instales este servidor con npm, pnpm ni npx arxiv-mcp-server.

Si una instalación existente carece de herramientas más recientes

uvx reutiliza entornos de herramientas en caché. Fuerza la resolución de la versión actual de PyPI con un intérprete compatible y luego reinicia tu cliente MCP:

uvx --python 3.11 --refresh-package arxiv-mcp-server arxiv-mcp-server

Si tu cliente aún lanza un entorno antiguo, añade "--python", "3.11" antes de "arxiv-mcp-server" en su array args.

Si un cliente de escritorio no encuentra uvx

Las aplicaciones de escritorio no siempre heredan el mismo PATH que tu terminal. Si uvx arxiv-mcp-server funciona en una terminal pero el cliente informa que el servidor no pudo conectarse, encuentra la ruta absoluta del ejecutable:

# macOS and Linux
command -v uvx
# Windows PowerShell
(Get-Command uvx).Source

Reemplaza "command": "uvx" con la ruta absoluta devuelta y luego reinicia el cliente. Mantén el valor de args sin cambios.

Instalación de comando persistente

Para colocar arxiv-mcp-server en tu PATH en lugar de lanzarlo a través de uvx:

uv tool install arxiv-mcp-server

Si el comando no está disponible de inmediato, ejecuta uv tool update-shell y reinicia la terminal. Después, usa "command": "arxiv-mcp-server" y omite el nombre del paquete en args.

Integraciones de plugins

El repositorio ahora empaqueta el mismo servidor MCP y la misma habilidad de investigación para ambos sistemas principales de plugins:

IntegraciónManifiestoMarketplace
Claude Code.claude-plugin/plugin.json.claude-plugin/marketplace.json
OpenAI Codex / ChatGPT Work.codex-plugin/plugin.json.agents/plugins/marketplace.json
Kiro PowerPOWER.mdmcp.json
Lanzamiento MCP compartido.mcp.json para Claude y clientes locales del repositorio; .codex-mcp.json para plugins de Codexuvx arxiv-mcp-server
Flujo de investigación compartidoskills/arxiv-mcp-server/SKILL.mdSe instala con cualquiera de los dos plugins

La instalación directa de MCP es el camino más corto. Instala el plugin si también quieres el flujo de investigación que orienta al cliente hacia búsquedas centradas, lecturas limitadas, recorrido de citas y recuperación de LaTeX por secciones.

Herramientas

El servidor expone actualmente 14 herramientas.

HerramientaPropósitoNotas
search_papersBuscar en arXiv por consulta, categoría, fecha y orden de clasificaciónAPI remota de arXiv
get_abstractObtener metadatos y un resumen por ID de arXivNo descarga el artículo
download_paperDescargar y convertir un artículo a Markdown localHTML primero; el respaldo de PDF usa [pdf]
list_papersListar artículos almacenados localmenteDevuelve IDs de arXiv
read_paperLeer contenido de artículos almacenados localmenteAdmite start y max_chars
get_paper_latexRecuperar LaTeX limitado enviado por el autorArchivo fuente remoto de arXiv
list_paper_latex_sectionsDevolver un esquema de LaTeX paginadoAdmite start y max_sections
get_paper_latex_sectionLeer una sección de LaTeX limitadaSeleccionar por ID de esquema o título exacto
citation_graphObtener referencias y artículos que citanAPI remota de Semantic Scholar
export_citationsExportar BibTeX para uno o más IDs de arXivMetadatos autoritativos de arXiv
watch_topicGuardar o actualizar un seguimiento de tema de arXivSe almacena localmente
check_alertsComprobar seguimientos guardados en busca de artículos nuevosDevuelve artículos desde la última comprobación
semantic_searchBuscar en artículos descargados por similitud semánticaRequiere [pro]
reindexReconstruir el índice semántico localRequiere [pro]

Buscar e inspeccionar un artículo

Pide a tu cliente MCP que llame a search_papers con:

{
  "query": "\"Kolmogorov-Arnold Networks\"",
  "categories": ["cs.LG", "cs.AI"],
  "max_results": 5,
  "sort_by": "date"
}

Luego llama a get_abstract con:

{
  "paper_id": "2404.19756"
}

Descargar y leer texto completo

Llama a download_paper con:

{
  "paper_id": "2404.19756",
  "max_chars": 12000
}

Luego recorre el contenido en caché con read_paper:

{
  "paper_id": "2404.19756",
  "start": 0,
  "max_chars": 12000
}

Las respuestas de contenido grande incluyen content_length, returned_chars, next_start y is_truncated. Pasa next_start a la siguiente llamada para continuar leyendo.

Leer LaTeX original por sección

Llama a get_paper_latex con:

{
  "paper_id": "1706.03762"
}

Obtén la primera página de su esquema de secciones con list_paper_latex_sections:

{
  "paper_id": "1706.03762",
  "start": 0,
  "max_sections": 100
}

Luego llama a get_paper_latex_section usando un ID de ese esquema:

{
  "paper_id": "1706.03762",
  "section_id": "3.2",
  "max_chars": 12000
}

Los archivos LaTeX se validan, se limitan en tamaño y se guardan en caché localmente antes de devolver el contenido.

Dependencias opcionales

Elige la variante de instalación que coincida con las funciones que necesitas:

# Base server
uv tool install arxiv-mcp-server

# Base server plus PDF conversion
uv tool install "arxiv-mcp-server[pdf]"

# Base server plus local semantic search
uv tool install "arxiv-mcp-server[pro]"

Si la herramienta base ya está instalada, reinstala la variante seleccionada:

uv tool install --force "arxiv-mcp-server[pdf]"

El extra pdf instala pymupdf4llm y pymupdf-layout para artículos sin HTML de arXiv utilizable. El extra pro añade dependencias de incrustación local para semantic_search y reindex; la búsqueda semántica solo opera sobre artículos ya descargados al directorio de almacenamiento configurado.

Prompts integrados

El servidor proporciona siete flujos de trabajo de prompt MCP. La disponibilidad de prompts depende del cliente; el servidor proporciona instrucciones de flujo de trabajo pero no ejecuta un modelo por separado.

PromptArgumentos requeridosPropósito
research-discoverytopicMapear terminología, búsquedas, artículos, clústeres de investigación y una ruta de lectura
deep-paper-analysispaper_idAnalizar un artículo en profundidad
summarize_paperpaper_idResumir métodos, resultados y limitaciones
compare_paperspaper_idsComparar varios artículos
literature_reviewtopicSintetizar un tema y un conjunto opcional de artículos
literature-synthesispaper_idsSintetizar temas, métodos, cronologías o brechas entre artículos
research-questionpaper_ids, topicFormular preguntas de investigación fundamentadas y falseables

HTTP transmisible (Streamable HTTP)

Para despliegues donde stdio no sea práctico:

TRANSPORT=http HOST=127.0.0.1 PORT=8080 \
  uvx arxiv-mcp-server --storage-path /absolute/path/to/papers

PowerShell:

$env:TRANSPORT = "http"
$env:HOST = "127.0.0.1"
$env:PORT = "8080"
uvx arxiv-mcp-server --storage-path C:\absolute\path\to\papers

Conecta clientes a:

{
  "mcpServers": {
    "arxiv": {
      "type": "http",
      "url": "http://127.0.0.1:8080/mcp"
    }
  }
}

El servidor se vincula a 127.0.0.1 de forma predeterminada y habilita la protección contra rebote de DNS de MCP. Si un proxy inverso expone el servidor, mantén el proceso en una interfaz privada y proporciona autenticación y controles de red en el nivel superior. Usa ALLOWED_HOSTS y ALLOWED_ORIGINS para los valores de host y origen reenviados por el proxy.

Configuración

AjustePredeterminadoPropósito
--storage-path~/.arxiv-mcp-server/papersAlmacenamiento de artículos, caché de fuentes, alertas e índices
MAX_RESULTS50Límite del lado del servidor para conteos de resultados
REQUEST_TIMEOUT60Tiempo de espera de descarga de respaldo de PDF en segundos
TRANSPORTstdiostdio, http o streamable-http
HOST127.0.0.1Host de vinculación HTTP
PORT8000Puerto de vinculación HTTP
ALLOWED_HOSTSvacíoValores adicionales aceptados de HTTP Host
ALLOWED_ORIGINSvacíoValores adicionales aceptados de HTTP Origin

Los nombres de las variables de entorno no distinguen entre mayúsculas y minúsculas mediante la configuración de Pydantic. --storage-path es una opción de línea de comandos en lugar de un ajuste de entorno.

Seguridad

El texto de los artículos y el LaTeX son contenido externo no confiable. Un artículo puede contener texto diseñado para manipular a un cliente de IA para que ignore sus instrucciones o llame a herramientas no relacionadas.

  • No trates las instrucciones que se encuentran dentro de un artículo como comandos confiables.
  • Usa controles de aprobación del cliente para herramientas de shell, navegador, sistema de archivos y mensajería.
  • Revisa los resúmenes generados antes de realizar acciones externas.
  • Mantén Streamable HTTP privado a menos que la autenticación se proporcione en el nivel superior.

Consulta SECURITY.md para conocer la política de reporte y los detalles de amenazas.

Desarrollo

git clone https://github.com/blazickjp/arxiv-mcp-server.git
cd arxiv-mcp-server
uv sync --extra test --extra dev
uv run pytest
uv run black --check .

Ejecuta la copia de desarrollo desde un cliente MCP con:

{
  "mcpServers": {
    "arxiv-dev": {
      "command": "uv",
      "args": [
        "--directory",
        "/absolute/path/to/arxiv-mcp-server",
        "run",
        "arxiv-mcp-server"
      ]
    }
  }
}

Las contribuciones son bienvenidas. Lee CONTRIBUTING.md antes de abrir una solicitud de extracción y usa GitHub Issues para errores reproducibles o propuestas de funciones acotadas.

Licencia

Apache License 2.0. Consulta LICENSE.