Skip to main content
Glama

🇵🇱 Versión en polaco

RAG Pipeline

Un pipeline de recuperación local, acelerado por GPU, para artículos de investigación: analiza PDFs con fragmentación consciente del diseño, obtiene metadatos bibliográficos reales (DOI → CrossRef), genera embeddings híbridos densos + dispersos y almacena todo en Qdrant para búsqueda híbrida con reordenamiento. Diseñado para ser consultado directamente desde Claude a través de un servidor MCP.

Por qué

Dejar artículos en una carpeta los hace invisibles para la búsqueda. Esto convierte un montón de PDFs en algo consultable: fragmentos adecuados por sección/párrafo (no un divisor de caracteres ingenuo), metadatos listos para citar obtenidos automáticamente de CrossRef, y recuperación híbrida densa+dispersa para que funcionen tanto las consultas semánticas como las de términos exactos — todo expuesto como herramientas MCP para que Claude pueda buscar e ingerir artículos directamente.

Related MCP server: Personal Research Assistant MCP

Características

  • Análisis de PDFs consciente del diseño mediante Docling — fragmenta por párrafo/sección en lugar de un divisor de caracteres ingenuo, conserva números de página y encabezados de sección por fragmento.

  • Metadatos bibliográficos reales — extrae un DOI de la página 1 mediante regex, resuelve los datos completos de la cita (título, autores, revista, año, volumen/número/páginas) a través de la API de CrossRef, y recurre a los metadatos propios del PDF cuando no se encuentra un DOI.

  • Embeddings híbridos — vectores densos (BAAI/bge-m3) + dispersos (SPLADE, prithvida/Splade_PP_EN_v1) por fragmento, almacenados juntos en Qdrant para recuperación híbrida.

  • Ingesta en segundo plano — un worker de Redis + RQ para que los PDFs grandes no bloqueen una solicitud; contenedor Docker habilitado para GPU para la generación de embeddings.

  • Servidor MCP que expone dos herramientas a Claude — search_papers (búsqueda híbrida con reordenamiento) y ingest_paper (deja un PDF directamente en el índice) — pensado para funcionar como una memoria de artículos de investigación que Claude puede consultar directamente.

  • Dockerizado — contenedores de Qdrant + Redis + API/worker habilitados para GPU mediante docker-compose.

Stack tecnológico

Python · Docling (análisis de PDFs) · sentence-transformers (embeddings densos BGE-M3) · fastembed (embeddings dispersos SPLADE) · Qdrant (búsqueda vectorial híbrida) · Redis + RQ (cola de trabajos en segundo plano) · FastAPI (capa API planificada) · MCP (servidor de Protocolo de Contexto de Modelo para Claude) · Docker Compose, contenedor GPU CUDA 12.9.

Estado

Trabajo en progreso — aún no está completamente conectado de extremo a extremo.

Funciona hoy: ingest.py se ejecuta de forma independiente desde la CLI — analiza un PDF, obtiene sus metadatos, lo incrusta (denso + disperso) y lo sube a Qdrant. Apúntalo a una instancia de Qdrant en ejecución y funciona.

Falta: main.py, el servicio FastAPI que se supone que expone /search, /ingest y /health — el Dockerfile lo copia, el healthcheck de Docker Compose lo verifica, el worker de RQ espera que algo le encargue trabajos, y las dos herramientas de Claude en mcp_server.py lo llaman por HTTP en localhost:8000. Sin él, el worker no tiene nada que consumir, las herramientas MCP no tienen backend con el que hablar, y docker-compose up no compilará (el paso de construcción de la imagen API/worker copia un archivo que no existe).

Los bind mounts de docker-compose.yml también siguen apuntando a una ruta de Windows (S:\RAG-data\...) de una configuración anterior — ajústalos a donde quieras que vivan los datos de Qdrant/Redis/caché de modelos antes de ejecutarlo.

Ejecutarlo (hoy)

uv sync

# Qdrant needs to be running somewhere ingest.py can reach:
docker run -p 6333:6333 qdrant/qdrant

python ingest.py path/to/paper.pdf

El pipeline completo (stack de Docker Compose, API /search y /ingest, herramientas MCP) funcionará una vez que exista main.py.

Install Server
F
license - not found
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables Claude to perform hybrid search across local documents by combining semantic vector retrieval and BM25 keyword matching for optimal context recovery. It supports multiple file formats including PDF, CSV, and Markdown, leveraging local Ollama models for private and efficient document querying.
    4
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables semantic search and conversational querying across a personal research library of PDFs, DOCX, and other documents using a vector database. It provides tools for document summarization, finding related papers, and high-accuracy retrieval for AI clients like Claude Desktop.
  • A
    license
    B
    quality
    C
    maintenance
    Enables Claude Code to interact with Jupyter notebooks, perform semantic search over knowledge files, and manage research projects.
    33
    4
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    A second brain for researchers — gives Claude persistent memory of your papers, field, and working history, with answers cited from your own indexed library
    100
    3
    AGPL 3.0

View all related MCP servers

Related MCP Connectors

  • Search arXiv/Semantic Scholar/OpenAlex + medical evidence (PubMed/Europe PMC) + LaTeX/PDF tools.

  • Search arXiv and ACL Anthology, retrieve citations and references, and browse web sources to accel…

  • Search 340M+ academic papers — citation graphs, semantic similarity, and AI literature reviews.

View all MCP Connectors

Latest Blog Posts

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/jansc4/rag-pipeline'

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