spiculedata/saiku
Open-source semantic layer: one cube for Excel (MDX/XMLA), dashboards, and AI agents (MCP). Mondrian + Apache Calcite.
What it solves
Saiku provides a semantic layer for analytics, allowing users to query complex data cubes without needing to write MDX (Multi-Dimensional Expressions) or complex SQL. It bridges the gap between raw data sources and end-users or AI agents, providing a structured way to explore data through a drag-and-drop interface or a typed API.
How it works
Saiku acts as a middleware layer that translates high-level requests into optimized queries. It uses a fork of Mondrian with a Calcite-based SQL planner to connect to various data engines (such as Trino or Iceberg). For AI integration, it exposes a typed REST API that allows LLM agents to discover schemas, hierarchies, and measures, and then submit JSON-based questions which Saiku translates into validated MDX. It also includes a Model Context Protocol (MCP) wrapper to integrate directly with AI tools like Claude Desktop or Cursor.
Who it’s for
- Data Analysts: Who want to explore data via a browser-based drag-and-drop interface.
- AI Developers: Who need a reliable, typed way for LLM agents to query structured business data without the risk of hallucinating complex query languages.
- Enterprise Architects: Who require a semantic layer that can be embedded into other applications via web components.
Highlights
- AI-Ready API: A typed REST surface specifically designed for LLM agents with self-correcting validation errors.
- MCP Integration: Built-in support for the Model Context Protocol for seamless connection to AI IDEs and assistants.
- Semantic Layer: Supports hierarchies, levels, and measures to simplify data discovery.
- Modern Tech Stack: Built with SvelteKit 5, Apache Arrow for zero-copy data transfer, and OpenTelemetry for observability.
- Extensible AI Surface: Admins can define "Skills" (markdown workflows) and "Spaces" (scoped personas) to guide AI behavior without writing code.
Related
- Project
- Project
- Project
- Project
- Project