Glean Chatbot
Glean Chatbot
Indexa un pequeño conjunto de contratos internos en Glean, responde preguntas de esos
documentos mediante Search + Chat, y expone el mismo flujo como una herramienta MCP (ask_glean).
Requisitos
Python 3.10+
Una instancia de Glean
Un token de la API de indexación
Un token de API de cliente con permisos de Search y Chat
Related MCP server: search-context
Configuración
Clona el repositorio y entra en él:
git clone <your-repo-url>
cd glean-chatbotInstala las dependencias:
pip install -r requirements.txtCrea un
.enva partir del ejemplo y completa sus valores:
# macOS / Linux
cp .env.example .env
# Windows (PowerShell)
copy .env.example .envVariable | Obligatorio | Finalidad |
| sí | Nombre de la instancia ( |
| sí | Token de la API de indexación |
| sí | Token de API de cliente (Search + Chat) |
| sí* | Correo del usuario para |
| no | Nombre del origen de datos (por defecto |
| no | Nombre para mostrar en la interfaz de Glean |
| no | Expresión regular del |
.env se carga automáticamente mediante config.py (con python-dotenv). No necesitas hacer source de él.
Ejecución
Indexar documentos
python scripts/index_documents.py
# optional: wait until Search can find them
python scripts/index_documents.py --verifyPreguntar desde la CLI
python scripts/ask.py "Who owns the Enronry Tony contract?"
python scripts/ask.py "What must OKLightning Tony deliver before go-live?" --top-k 3MCP (Cursor)
La configuración del proyecto está en .cursor/mcp.json (ruta absoluta a src/mcp_server.py + variables de entorno).
Después de editarla, reinicia Cursor o recarga el MCP. La herramienta se llama ask_glean.
Haz una prueba de humo del servidor por separado:
python src/mcp_server.pyPruebas
python tests/test_pipeline.pySin red; simula Search/Chat.
Cómo funciona
scripts/index_documents.py envía data/documents.json a través de la API de indexación.
En el momento de la consulta, src/pipeline.py llama a Search y, solo si hay coincidencias,
a Chat con esas coincidencias como contexto de libro cerrado; devuelve una respuesta
junto con las fuentes. Tanto la CLI como el MCP usan ese mismo pipeline. Los resultados
se limitan a nuestros propios documentos; si Search no devuelve nada, se sugieren títulos
de documentos similares en lugar de inventar una respuesta.
Notas / Limitaciones
El sandbox compartido ignora
datasourcesFilter; filtramos del lado del cliente por el prefijo del id del documento (CUSTOM_<DATASOURCE>_Contract_).La indexación es asíncrona: los documentos pueden tardar unos minutos en ser buscables.
Los documentos de la demo utilizan
allowAnonymousAccess: true. No incluyas eso en producción.Los
viewURLde los documentos deben coincidir conGLEAN_URL_REGEXo la indexación los rechazará.
Consulta DESIGN_NOTE.md para conocer las ventajas e inconvenientes de usar la API y las notas de producción.
Related MCP Connectors
Cited answers from your organisation's documents. GDPR-compliant, hosted in Germany.
Ask your organization's connected business data in plain language, with each person's permissions.
Answer questions using your semantic layer and company knowledge graph.
Find recorded calls and meetings, read transcripts, and ask questions grounded in your recordings.
Related MCP Servers
AlicenseNot gradedqualityCmaintenanceEnables AI assistants and developer tools to securely access and interact with an organization's enterprise knowledge, documents, and people through natural language while respecting existing access permissions.166MIT- AlicenseAqualityFmaintenanceEnables semantic search across documentation stored in Gemini FileSearchStores, returning AI-generated answers with source citations.11MIT

Rememberizer MCP Serverofficial
AlicenseNot gradedqualityDmaintenanceEnables querying and managing personal/team internal knowledge from sources like Slack, Gmail, and Drive through semantic search and retrieval.Apache 2.0- FlicenseNot gradedqualityDmaintenanceEnables searching a knowledge base and asking grounded questions with hybrid retrieval, reranking, and cited answers.-