Governance First
DSL-based queries, parameter binding, and field-level permissions reduce direct SQL exposure and make query evidence easier to review.
Access Control
Let AI assistants query business data through governed semantic models, structured DSL, and MCP tools
| Problem | Impact |
|---|---|
| Governance Risks | AI-generated SQL can drift away from permission and audit boundaries |
| Schema Exposure | Must share complete database schema with AI |
| No Business Semantics | What does order_status=3 mean? AI doesn't know |
| Complex JOINs | Multi-table relationships and aggregations are fragile |
AI → JSON DSL Query → Semantic Layer → Governed SQL → Database
↓
• Uses structured query payloads
• Applies access control
• Handles multi-table JOINs
• Abstracts database dialectsExample: AI only needs to know semantic meaning, not database internals
{
"model": "FactSalesQueryModel",
"columns": ["customer$name", "sum(totalAmount)"],
"filters": [{"field": "orderDate", "op": ">=", "value": "2024-01-01"}],
"orderBy": [{"field": "totalAmount", "dir": "DESC"}],
"limit": 10
}Docker One-Click Start:
git clone https://github.com/foggy-projects/foggy-data-mcp-bridge.git
cd foggy-data-mcp-bridge/docker/demo
docker compose up -dClaude Desktop Configuration:
{
"mcpServers": {
"foggy-dataset": {
"url": "http://localhost:7108/mcp/analyst/rpc"
}
}
}Then query data using natural language:
| Module | Description | Docs |
|---|---|---|
| foggy-dataset-model | Semantic layer engine - TM/QM modeling, DSL query execution | Guide |
| foggy-dataset | Database abstraction - Multi-database dialect support | Query Layer |
| foggy-fsscript | Script engine - JavaScript-like syntax for TM/QM files | FSScript Guide |
| foggy-dataset-mcp | MCP server - AI assistant integration | MCP Service |