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:
- Instala uv si aún no lo tienes:
- Instalar dependencias usando uv:
- Inicie la aplicación con el siguiente script:
- Acceda 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:
Configuración de desarrollo (servicios separados)
Si desea ejecutar los servicios por separado para el desarrollo:
Backend
- Navegue hasta el directorio backend:
- Instalar las dependencias con uv:
- Ejecute el servidor backend:
Interfaz
- Navegue hasta el directorio del frontend:
- Instalar las dependencias:
- Ejecute el servidor de desarrollo:
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
- AsecurityAlicenseAqualityA powerful Model Context Protocol framework that extends Cursor IDE with tools for web content retrieval, PDF processing, and Word document parsing.Last updated -89PythonMIT License
- -security-license-qualityA Retrieval-Augmented Generation server that enables semantic PDF search with OCR capabilities, allowing users to query document content through any MCP client and receive intelligent answers.Last updated -1PythonApache 2.0
- -security-license-qualityA TypeScript-based document processing server that supports various document formats (.docx, .pdf, .xlsx) and integrates with Model Context Protocol SDK for efficient document context management.Last updated -TypeScriptMIT License
- -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 -Apache 2.0