Dati
Semantic gateway that turns common databases into MCP services, enriched with business metadata and parameterized SQL tools.
What can you do with Dati?
- Conversational Data Analysis (NL2SQL): Connect business databases and support NL2SQL analysis workflows with semantic metadata and built-in tools
- Lightweight App Development: Wrap databases as MCP services so agents can query and update data through conversation to build lightweight applications
Install
The installation steps are in the documentation below. Documentation
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
Contents
DatI - Database Semantic Gateway for AI Agents
DatI (Data Intelligence) is a lightweight semantic gateway connecting AI Agents with enterprise databases. Simply connect your database, enrich semantic metadata, and configure built-in or parameterized SQL tools to publish an MCP service — ready for your agents or any MCP host.
┌────────────────────┐ ┌────────────────────┐ ┌────────────────────┐
│ User A: OpenCode │ │ User B: WorkBuddy │ │ User N: DataAgent │
└──────────┬─────────┘ └──────────┬─────────┘ └──────────┬─────────┘
└───────────────────────┼───────────────────────┘
▼ MCP (Streamable HTTP)
┌─────────────────────────────── DatI ───────────────────────────────┐
│ Semantic │ Security │ Tools │
└──────────────────────────────────┬─────────────────────────────────┘
▼
┌────────────────────────────────────────────────────────────────────┐
│ MySQL │ PostgreSQL │ ClickHouse │ Doris │
└────────────────────────────────────────────────────────────────────┘
Try It Online
Demo URL: https://dati-demo.zhangyimin.me
The demo instance is preloaded with sample data and reset periodically.
Demo
Data and configuration reference the AdventureWorks sample and can be automated via the dati-ops skill.
1. Data Source Metadata Configuration (configurable tables, columns, and values)
View Demo
2. Business Subject Configuration (select relevant tables, define business terms)
View Demo
3. MCP Service Configuration (choose business subjects, enable built-in tools, add parameterized SQL tools)
View Demo
4. Configure MCP in Agent (e.g., Antigravity)
View Screenshot
5. Query Data in Agent
View Demo
Quick Start
git clone https://github.com/yimindev/dati.git && cd dati
cp .env.example .env # Configure JWT_SECRET and ES password
docker compose up -d
Open http://localhost:8085. Register with username admin to get super admin role. For production tuning and external DB setup, see Deployment Guide.
Why DatI?
- Multi-Database Support: Supports MySQL, PostgreSQL, ClickHouse, Doris, and other relational and analytical databases
- Semantic Enhancement: Supports business terms, column aliases, and automatic enum dictionary extraction. Combined with semantic search, it helps models understand business jargon and find the right tables
- Flexible Integration: Based on standard MCP (Streamable HTTP), easily integrates into your existing agents or workflows
- Effortless MCP Publishing: Ready-to-use built-in tools (schema inspection, SQL execution) and parameterized SQL tools to publish MCP services with zero extra deployment
- Security & Governance: Centrally managed database credentials with user-level permission and data scope isolation
Use Cases
- Conversational Data Analysis (NL2SQL): Connect business databases and support NL2SQL analysis workflows with semantic metadata and built-in tools
- Lightweight App Development: Wrap databases as MCP services so agents can query and update data through conversation to build lightweight applications
Tech Stack
- Backend: Spring Boot 3.5.x + Java 21 + JPA
- Frontend: Vue 3 + TypeScript + Vite + Element Plus + TailwindCSS 4
- Database: H2 (Development) / MySQL / PostgreSQL (Production)
- Search Engine: Elasticsearch (Semantic Retrieval)
Documentation
- Local Development Guide: Environment setup, backend/frontend startup, and project conventions
- Server Deployment Guide: Architecture overview, Docker Compose deployment, and operational maintenance
- Architecture Overview: High-level architecture, module index, and key design conventions
- Examples:
- Enterprise BI & Retail Analytics (AdventureWorks DW): Star schema Text-to-SQL, metric governance, multi-table joins, and parameterized acceleration
- Family Finance Assistant: Multi-user collaborative bookkeeping, parameterized permission control, transparent SQL queries, and self-healing agent workflows
- Agent Skills (Agent Skills Open Standard, auto-discovered by repository agents):
- dati-ops: User Skill — Configure and operate the platform via HTTP APIs (data sources, subjects & terms, MCP services); self-contained with built-in openapi.json and query tools, independently distributable; connected in-repo via
.agents/skills/dati-ops/ - e2e-tester: Developer Skill — E2E HTTP integration tests and API behavior validation (see test cases in e2e-tests/test-cases/)
- dati-ops: User Skill — Configure and operate the platform via HTTP APIs (data sources, subjects & terms, MCP services); self-contained with built-in openapi.json and query tools, independently distributable; connected in-repo via
- User Guide: docs/user-guide (VitePress site, bilingual)
- API Specification: docs/api/openapi.json (Used by E2E test toolchains)
- AI Coding Assistant Guidelines: AGENTS.md and .agents/rules/ (Backend, frontend, and design system rules)
Community
- Articles: DEV.to Series (DatI Devlog)
- Discussions: LINUX DO
- WeChat Official Account:
Frequently asked questions
What is Dati?
Semantic gateway that turns common databases into MCP services, enriched with business metadata and parameterized SQL tools.
How do I install Dati?
Follow the installation steps in its documentation, shown on this page and in its repository.
Is Dati open source?
Yes. Its code is on GitHub under the Apache-2.0 license.
Who maintains Dati?
It is published by yimindev. AI.tn lists it but does not maintain or endorse it.
From the community awesome-mcp-servers lists and the project's GitHub repository. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.