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.


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


-
license - not tested
-
quality - not tested
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 Connectors

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/yadu0323/AI-Document-Assistant'

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