Skip to main content
Glama
calvinchengx

data-agent-service

by calvinchengx

Servicio de Agente de Datos

CI Docs release License: Apache 2.0

python coverage go coverage witnesses

Haz una pregunta a tu almacén de datos en inglés. Obtén una respuesta que puedas defender.

Preguntas en lenguaje natural sobre los almacenes, bases de datos y APIs que ya tienes: Fabric y Azure SQL, PostgreSQL, Databricks y cualquier servicio REST, incluido uno de recuperación, fundamentadas en el glosario, las métricas y el esquema que se guardan en OpenMetadata. Cada consulta se autoriza dos veces: las reglas de rol en el servicio y luego el propio origen con la identidad de quien llama. Cualquier cliente MCP, sin cambios, contra Azure real.

📖 Sitio de documentación — la referencia completa, también consultable como Markdown en docs/.

Por qué existe esto

"¿Qué equipo de soporte resuelve las incidencias más rápido?" solo tiene una respuesta correcta si todos se ponen de acuerdo sobre lo que significa resolver. Si apuntas un agente SQL de propósito general al almacén, este lo deducirá a partir de los nombres de las columnas, con fluidez y sin avisar cuando se equivoca.

Con los datos propios de este repositorio, esa inferencia señala al equipo equivocado. El tiempo transcurrido en el reloj dice que Frontline es el más rápido y Billing el peor. La definición real de la empresa —el Tiempo de Resolución, que excluye las horas de espera al cliente— lo invierte: Billing es el más rápido. Un ganador equivocado no es un error de redondeo, y nada en la respuesta te indicaría que ha ocurrido.

Este servicio está construido para que ese tipo de error sea estructuralmente difícil, no solo improbable.

Qué obtienes

Cómo

Prueba

El significado proviene de tu catálogo, no del modelo

Los términos del glosario, las fórmulas de métricas y las descripciones de columnas se leen de OpenMetadata en tiempo de consulta. La semántica de negocio nunca se integra en un prompt

make eval — una ablación puntúa las mismas preguntas reteniendo el catálogo

Cada respuesta se ejecuta como la persona que pregunta

El token del usuario se intercambia en nombre de este hasta el motor, de modo que los permisos de filas y columnas son decisión del motor, no del agente

make test — dos personas, misma pregunta, filas diferentes

No puede escribir, divagar ni eludir una denegación

Un único SELECT de solo lectura, analizado en lugar de comparado con patrones; lista blanca de esquemas; límite de filas aplicado por ti; una denegación se notifica, no se evita

make conformance — un contrato de 28 aserciones que el ejecutor debe cumplir

Responde con su razonamiento adjunto

La cifra, la definición aplicada, las tablas de las que procede y cualquier advertencia que haya planteado el catálogo

make ask Q="..."

Cualquier cliente MCP, sin código personalizado

Claude, Cursor, VS Code y los SDK se conectan mediante MCP estándar con detección de OAuth

docs/09-mcp-clients.md

Se ejecuta en tu portátil y se despliega en Azure real sin cambios

Toda la pila se ejecuta en la familia de emuladores; cambiar a Fabric, APIM y Entra es configuración, no una ruta de código

docs/10-production.md

Nada de lo que hay aquí se afirma sin algo que lo compruebe

Cada capacidad lleva un comando que la demuestra; cuando algo está diseñado pero no construido, los documentos lo indican

88 testigos de extremo a extremo, en CI en cada push

Estado: Fases 0-16 completadas — consulta docs/00-plan.md.

Related MCP server: MCP-DB-Server

Inicio rápido

make doctor   # toolchain, docker, ~14 GB memory
make up       # entra, keyvault, arm, fabric (+ SQL Server), OpenMetadata 1.13.2, apim
make status   # "stack OK" is the verdict

Luego make seed, make test, make eval, make load, make ask Q="…" — o make stack para hacer todo el arranque desde cero, que es lo que ejecuta CI.

Qué hay aquí

Ruta

Propósito

docker-compose.yml

Solo imágenes publicadas y fijadas; las dependencias se usan tal cual

.env.example

Todos los ajustes DAS_*; copia a .env (local) o .env.prod (Azure real)

docs/00-plan.md

Arquitectura, decisiones, fases, evaluación, carga, autorización, extensión

docs/

Inicio rápido, arquitectura, autorización, evaluación, carga, clientes MCP, añadir un origen, producción, CI

services/

El ejecutor de consultas del almacén (Python y Go) y el contrato al que ambos responden

agent/, evals/, e2e/

El agente, el conjunto de precisión y los testigos

seed/

Conjuntos de datos, aprovisionamiento del almacén, semántica de OpenMetadata, configuración de identidad

infra/terraform/

Terraform para Azure real; docs/10-production.md es el manual

.github/workflows/ci.yml

Cuatro trabajos; docs/11-ci.md explica qué demuestra cada uno

website/

El sitio de documentación — Astro + Starlight, generado desde docs/, que sigue siendo la fuente de verdad

scripts/

doctor.sh, status.sh, check-discipline.sh, preflight.py

Disciplina

  1. Los emuladores y OpenMetadata nunca se modifican; las posibles incidencias van a docs/upstream-issues.md.

  2. No hay rutas de código solo para emuladores. Solo protocolos estándar (OIDC/OAuth2, incluido OBO, protocolo de App Service de identidad administrada, TDS FedAuth, ARM, Graph, OM REST/MCP). ENV=prod intercambia .env y nada más.

Familia de emuladores

Construido sobre entra-emulator, azure-keyvault-emulator, arm-emulator, fabric-emulator, azure-apim-emulator; compuesto según azure-emulators. Nivel: hoja.

Licencia

Apache-2.0.

A
license - permissive license
Not graded
quality - not tested
A
maintenance

Maintenance

Maintainers
Response time
0dRelease cycle
3Releases (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 Servers

  • F
    license
    Not graded
    quality
    Not graded
    maintenance
    Enables natural language querying of Microsoft Fabric Data Warehouses with intelligent SQL generation, metadata exploration, and business-friendly result summarization. Features two-layer architecture with MCP-compliant server and agentic AI reasoning for production-ready enterprise data access.
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables natural language querying of SQL databases with robust safety guarantees including read-only enforcement, AST validation, and row caps.
  • A
    license
    A
    quality
    B
    maintenance
    Enables natural language querying of OLAP/SSAS cubes with verified MDX generation, self-consistency checks, and honest abstention when queries are ambiguous.
    4
    Apache 2.0
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables natural-language querying of PostgreSQL databases with schema grounding and self-correcting error recovery. Provides a live audit trace and verifies results through exploratory decomposition and empty-result sanity checks.

View all related MCP servers

Related MCP Connectors

  • Query PostgreSQL databases in plain English — LLM-generated, safety-validated SQL.

  • The grounded data layer for any LLM: governed SQL, metrics, lineage and catalog over your data.

  • GibsonAI MCP server: manage your databases with natural language

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/calvinchengx/data-agent-service'

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