Servidor PDF RAG MCP
Un potente sistema de base de conocimiento de documentos que aprovecha el procesamiento de PDF, el almacenamiento vectorial y MCP (Protocolo de Contexto de Modelo) para ofrecer funciones de búsqueda semántica para documentos PDF. Este sistema permite cargar, procesar y consultar documentos PDF a través de una moderna interfaz web o mediante el protocolo MCP para su integración con herramientas de IA como Cursor.
Características
Carga y procesamiento de documentos PDF : cargue archivos PDF y extraiga, fragmente y vectorice contenido automáticamente
Estado de procesamiento en tiempo real : actualizaciones de estado en tiempo real basadas en WebSocket durante el procesamiento de documentos
Búsqueda semántica : Búsqueda semántica basada en vectores en todos los documentos procesados
Compatibilidad con el protocolo MCP : se integra con herramientas de IA como Cursor mediante el protocolo de contexto de modelo
Interfaz web moderna : interfaz de usuario React/Chakra para gestión y consulta de documentos
Gestión rápida de dependencias : utiliza uv para una gestión eficiente de las dependencias de Python
Arquitectura del sistema
El sistema consta de:
Backend FastAPI : gestiona solicitudes de API, procesamiento de PDF y almacenamiento de vectores
React Frontend : proporciona una interfaz fácil de usar para administrar documentos.
Base de datos vectorial : almacena incrustaciones para búsqueda semántica
Servidor WebSocket : proporciona actualizaciones en tiempo real sobre el procesamiento de documentos
Servidor MCP : expone la base de conocimientos a clientes compatibles con MCP
Inicio rápido
Prerrequisitos
Python 3.8 o posterior
uv - Instalador y solucionador rápido de paquetes de Python
Git
Cursor (opcional, para integración con MCP)
Instalación y puesta en marcha rápida con uv y run.py
Clonar el repositorio:
git clone https://github.com/yourusername/PdfRagMcpServer.git cd PdfRagMcpServerInstala uv si aún no lo tienes:
curl -sS https://astral.sh/uv/install.sh | bashInstalar dependencias usando uv:
uv init . uv venv source .venv/bin/activate uv pip install -r backend/requirements.txtInicie la aplicación con el siguiente script:
uv run run.pyAcceda a la interfaz web en http://localhost:8000
Uso con cursor
Vaya a Configuración -> Configuración del Cursor -> MCP -> Agregar nuevo servidor MCP global y pegue la siguiente información en el archivo Cursor ~/.cursor/mcp.json. Consulte la documentación de Cursor MCP para obtener más información.
También puedes cambiar "localhost" a la IP del host donde implementaste el servicio. Después de agregar esta configuración al JSON de MCP, verás que el servidor MCP se muestra en la página de configuración de Cursor MCP. Actívalo para habilitarlo:
Construyendo el frontend (para desarrolladores)
Si necesita reconstruir el frontend, tiene dos opciones:
Opción 1: Utilizar el script proporcionado (recomendado)
Este script automáticamente:
Instalar dependencias del frontend
Construir el frontend
Copiar la salida de la compilación al directorio estático del backend
Opción 2: Proceso de construcción manual
Después de crear la interfaz, puede iniciar la aplicación utilizando el script run.py.
Configuración de producción sencilla
Para un entorno de producción donde ya se han creado los archivos estáticos:
Coloque su frontend prediseñado en el directorio
backend/static
Iniciar el servidor:
cd backend uv pip install -r requirements.txt python -m app.main
Configuración de desarrollo (servicios separados)
Si desea ejecutar los servicios por separado para el desarrollo:
Backend
Navegue hasta el directorio backend:
cd backendInstalar las dependencias con uv:
uv pip install -r requirements.txtEjecute el servidor backend:
python -m uvicorn app.main:app --host 0.0.0.0 --port 8000 --reload
Interfaz
Navegue hasta el directorio del frontend:
cd frontendInstalar las dependencias:
npm installEjecute el servidor de desarrollo:
npm run dev
Uso
Carga de documentos
Acceda a la interfaz web en http://localhost:8000
Haga clic en "Cargar nuevo PDF" y seleccione un archivo PDF
El sistema procesará el archivo, mostrando el progreso en tiempo real.
Una vez procesado, el documento estará disponible para su búsqueda.
Búsqueda de documentos
Utilice la función de búsqueda en la interfaz web
O integrar con Cursor usando el protocolo MCP
Integración de MCP con Cursor
Cursor abierto
Vaya a Configuración → IA y MCP
Agregar servidor MCP personalizado con URL:
http://localhost:8000/mcp/v1
Guardar la configuración
Ahora puedes consultar tu base de conocimiento PDF directamente desde Cursor
Solución de problemas
Problemas de conexión
Verifique que el puerto 8000 no esté en uso por otras aplicaciones
Compruebe que la conexión WebSocket funciona correctamente
Asegúrese de que su navegador admita WebSockets
Problemas de procesamiento
Comprueba si tu PDF contiene texto extraíble (es posible que algunos PDF escaneados no lo contengan)
Asegúrese de que el sistema tenga suficientes recursos (memoria y CPU)
Consulte los registros del backend para ver mensajes de error detallados
Estructura del proyecto
Contribuyendo
¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.
Licencia
Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Un sistema de base de conocimiento de documentos que permite a los usuarios cargar archivos PDF y consultarlos semánticamente a través de una interfaz web o mediante el Protocolo de Contexto de Modelo, lo que permite la integración con herramientas de IA como Cursor.
Related MCP Servers
- -securityAlicense-qualityA Model Context Protocol (MCP) based server that efficiently manages PDF files, allowing AI coding tools like Cursor to read, summarize, and extract information from PDF datasheets to assist embedded development work.Last updated -7Apache 2.0
- -securityFlicense-qualityIntelligent knowledge base management tool that enables searching, browsing, and analyzing documents across multiple datasets with smart document analysis capabilities.Last updated -16
- -securityAlicense-qualityA Model Context Protocol server that enables intelligent document search and retrieval from PDF collections, providing semantic search capabilities powered by OpenAI embeddings and ChromaDB vector storage.Last updated -2MIT License
- -securityAlicense-qualityEnables interaction with BookStack knowledge management systems through the BookStack API. Supports searching, reading, creating, and updating documentation content with secure authentication and dual transport modes for flexible deployment.Last updated -MIT License