Spaces:
Sleeping
title: RAG Books MCP v2 (ESL+ISLP+FES+PDSH+R4DS)
emoji: 📖
colorFrom: indigo
colorTo: purple
sdk: gradio
sdk_version: 5.50.0
app_file: app.py
pinned: false
license: apache-2.0
short_description: MCP v2 RAG sobre 5 libros (uso académico).
tags:
- mcp-server-track
- rag
- statistical-learning
- chromadb
- educational
📖 RAG Books MCP v2 — ESL + ISLP + FES + PDSH + R4DS
Servidor MCP que expone búsqueda semántica sobre cinco libros de referencia de Statistical Learning, Data Science y Data Wrangling, accesible por UI web y por clientes MCP (Kiro, Claude Desktop, Cursor, etc.).
| Libro | Autores | Rol |
|---|---|---|
| ESL — The Elements of Statistical Learning | Hastie, Tibshirani, Friedman | Teoría rigurosa |
| ISLP — An Introduction to Statistical Learning with Python | James, Witten, Hastie, Tibshirani | Teoría intuitiva con Python |
| FES — Feature Engineering and Selection | Kuhn, Johnson | Heurísticas de FE |
| PDSH — Python Data Science Handbook | VanderPlas | Implementación Python |
| R4DS — R for Data Science, 2nd Ed. | Wickham, Çetinkaya-Rundel, Grolemund | EDA iterativo y data wrangling |
ℹ️ R4DS y la cláusula NoDerivatives — R for Data Science está bajo licencia CC BY-NC-ND 3.0 US. Está incluido en este dataset únicamente para uso académico no comercial, con atribución explícita a sus autores. Si los autores o el editor (O'Reilly) consideran que excede su política, abre un issue y se retirará en menos de 24 h. Procedimiento y trazabilidad en el DATA_CARD del dataset.
⚠️ R4DS está escrito en R/tidyverse, no en Python. El valor de su indexación son los principios de EDA (ciclo iterativo, qué mirar primero, heurísticas de variación/covariación) que se traducen 1-a-1 a pandas/seaborn. El cliente MCP debe presentar el código resultante en el lenguaje del usuario, no copiar R como solución.
v1 vs v2
- v1: la base ChromaDB se empaqueta dentro del Space.
- v2 (este Space): la base ChromaDB se carga del dataset HF
gusdelact/rag-esl-islp-chromadbvíasnapshot_download. La primera tool call descarga ~95 MB; las siguientes son cache hit.
Endpoint MCP
https://<usuario>-<space-name>.hf.space/gradio_api/mcp/
Conexión desde un cliente MCP
{
"mcpServers": {
"rag-books-mcp-v2": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://<usuario>-<space-name>.hf.space/gradio_api/mcp/"
]
}
}
}
Variables de entorno reconocidas
| Variable | Default | Descripción |
|---|---|---|
RAG_CHROMA_DATASET |
gusdelact/rag-esl-islp-chromadb |
Repo del dataset con la base ChromaDB. |
RAG_CHROMA_REVISION |
main |
Revision (branch/tag/commit) a descargar. Recomendado pinear a v2.2.0. Usa v2.1.0 si quieres la versión sin R4DS. |
RAG_CHROMA_CACHE_DIR |
/data/chroma_db (si existe /data) o ~/.cache/... |
Cache local de la descarga. |
RAG_CHROMA_DIR |
— | Si está set y la carpeta existe, omite el download. |
HF_TOKEN |
— | Solo si el dataset es privado. |
Tools
| Tool | Descripción |
|---|---|
search_theory(query, book, top_k) |
Búsqueda semántica en los 5 libros. book ∈ {esl, islp, fes, pdsh, r4ds, both, all}. |
get_section(book, chapter, section, max_chunks) |
Sección específica por referencia. |
cite_foundation(topic, detail_level) |
Fundamentación teórica multi-libro. |
list_available_topics() |
Lista capítulos y secciones indexados. |
Stack
- Embeddings:
sentence-transformers/all-MiniLM-L6-v2(local, sin API key). - Vector store: ChromaDB descargado de HF Hub.
- UI / MCP: Gradio con
mcp_server=True. - Chunks publicados: 3689 (1093 ESL + 884 ISLP + 465 FES + 563 PDSH + 684 R4DS).