Skip to main content
Glama
yadu0323

AI Document Assistant MCP Server

by yadu0323

{"type": "text"}# AI Document Assistant

Un asistente de documentos impulsado por IA construido con RAG (Retrieval-Augmented Generation), FAISS, MCP (Model Context Protocol), Ollama y Streamlit.

Sube documentos PDF, haz preguntas sobre su contenido, genera resúmenes, extrae palabras clave y responde preguntas de conocimiento general usando la integración con Wikipedia.


Características

Respuesta a preguntas sobre documentos

  • Haz preguntas sobre documentos PDF subidos.

  • Recupera fragmentos relevantes del documento mediante la búsqueda vectorial de FAISS.

  • Genera respuestas en lenguaje natural usando Ollama.

Resumen de documentos

  • Genera resúmenes concisos de los documentos subidos.

Extracción de palabras clave

  • Extrae palabras clave y temas importantes de los documentos.

Preguntas de conocimiento general

  • Integración con Wikipedia para preguntas fuera del documento subido.

Integración MCP

  • Expone herramientas a través de MCP.

  • Permite el descubrimiento y la ejecución de herramientas a través de clientes MCP.

Soporte para subir PDF

  • Sube archivos PDF directamente desde la interfaz de Streamlit.

  • Crea automáticamente embeddings e indexa documentos para su recuperación.

Interfaz de Streamlit

  • Interfaz de chat sencilla y fácil de usar.

  • Sube PDFs e interactúa con los documentos en tiempo real.


Related MCP server: MinerU Document Explorer

Arquitectura

PDF
 │
 ▼
PDF Loader
 │
 ▼
Text Chunking
 │
 ▼
Embeddings
 │
 ▼
FAISS Vector Store
 │
 ▼
Retrieval
 │
 ▼
LLM (Ollama)
 │
 ▼
Answer Generation

Stack Tecnológico

Backend

  • Python

LLM

  • Ollama

  • Qwen 2.5 Coder 7B

Base de datos vectorial

  • FAISS

Embeddings

  • Sentence Transformers

Protocolo

  • MCP (Model Context Protocol)

Frontend

  • Streamlit

Conocimiento externo

  • Wikipedia API


Estructura del proyecto

AI-Document-Assistant/
│
├── datas/
│
├── src/
│   ├── pdf_loader.py
│   ├── chunker.py
│   ├── embeddings.py
│   ├── vector_store.py
│   └── rag_store.py
│
├── tools/
│   ├── search_tool.py
│   ├── summary_tool.py
│   ├── keyword_tool.py
│   ├── qa_tool.py
│   └── wiki_tool.py
│
├── app.py
├── agent.py
├── build_rag.py
├── mcp_client.py
├── mcp_server.py
├── requirements.txt
├── README.md
└── .gitignore

Instalación

Clonar el repositorio

git clone https://github.com/yourusername/AI-Document-Assistant.git

cd AI-Document-Assistant

Crear un entorno virtual

python -m venv .venv

Activar el entorno

Windows:

.venv\Scripts\activate

Linux/macOS:

source .venv/bin/activate

Instalar dependencias

pip install -r requirements.txt

Instalar Ollama

Descarga e instala Ollama:

https://ollama.com

Descarga el modelo:

ollama pull qwen2.5-coder:7b

Inicia Ollama:

ollama serve

Ejecutar la aplicación

streamlit run app.py

Abre:

http://localhost:8501

Cómo funciona

Preguntas sobre documentos

Ejemplo:

What is MySQL Workbench?

El asistente:

  1. Busca fragmentos relevantes del documento.

  2. Recupera el contexto coincidente usando FAISS.

  3. Envía el contexto a Ollama.

  4. Genera una respuesta final.


Preguntas de conocimiento general

Ejemplo:

Who is Elon Musk?

El asistente:

  1. Detecta que la pregunta no es específica del documento.

  2. Usa Wikipedia.

  3. Devuelve una respuesta concisa.


Herramientas MCP

Herramientas MCP disponibles:

document_search

Busca fragmentos relevantes del documento.

document_summary

Genera resúmenes de documentos.

document_keywords

Extrae palabras clave importantes.

ask_document

Respuesta a preguntas sobre documentos subidos.

wiki_search

Consulta de conocimiento general usando Wikipedia.


Mejoras futuras

  • Soporte para múltiples PDF

  • Memoria del historial de chat

  • Contexto de conversación

  • Citas de fuentes

  • Búsqueda híbrida (BM25 + búsqueda vectorial)

  • Base de datos vectorial persistente

  • Despliegue con Docker

  • Autenticación y gestión de usuarios



Autor

Yadu


Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    An MCP-based AI agent that retrieves and processes documents to answer queries using a RAG pipeline with LangChain and Claude models. It enables document indexing, context-aware retrieval, and multi-tool orchestration for research and knowledgebase applications.
    1
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI agents to search, deep-read, and build knowledge bases from Markdown, PDF, DOCX, and PPTX documents via MCP tools for retrieval, document navigation, and ingestion.
    27 npm
    641
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables RAG (Retrieval-Augmented Generation) with tools for vector search, document access, and OpenAI integration, plus MySQL storage and file system operations via MCP.
    -