Zaturn

Zaturn

An open-source MCP server that connects to various data sources (SQL databases, CSV, Parquet files), allowing AI models to execute SQL queries and generate data visualizations for analytics and business intelligence.

Category
Visit Server

README

<p align="center"> <img src="https://github.com/kdqed/zaturn/raw/main/brand/logo.png" width="128" height="128"> </p>

Zaturn: Your Co-Pilot For Data Analytics & BI

https://github.com/user-attachments/assets/d42dc433-e5ec-4b3e-bef0-5cfc097396ab

Zaturn is an open source, AI-powered data analysis/BI tool that can connect to your data sources, run SQL queries on it, and give you useful insights. Think of it like vibe data analysis, in the spirit of vibe coding. Currently Zaturn is available as an MCP (Model Context Protocol) Server that can be integrated into your favorite MCP Client (Claude, Cursor, etc.) A full fledged notebook interface is on the roadmap.

Join The Discord

Features:

Multiple Data Sources

Zaturn can currently connect to the following data sources:

  • SQL Databases: PostgreSQL, SQLite, DuckDB, MySQL
  • Files: CSV, Parquet

Connectors for more data sources are being added.

Visualizations

In addition to providing tabular and textual summaries, Zaturn can also generate the following image visualizations

  • Scatter and Line Plots
  • Histograms
  • Strip and Box Plots
  • Bar Plots

NOTE: The visuals will be shown only if your MCP client supports image rendering (e.g. Claude Desktop)

If you MCP client does not support images (e.g. Cursor) add the --noimg argument in the MCP config. Then the plots will be stored as files and the file location will be returned. You can view the plots with your file browser.

More visualization capabilities are being added.

How Does Zaturn Work?

The naivest way to have an LLM analyze your data is to upload a dataset with a prompt. But that won't get you far, because AI has context window limitations, and it can only go through a few thousand rows at the best. Also, LLM's are not great at doing math.

Using an MCP like Zaturn will keep your data where it is, and enable AI to draft and run SQL queries on the data. The LLM now processes only the queries and results instead of your entire dataset.

Installation & Setup

  1. Install uv

  2. Install Zaturn with uv:

uv tool install zaturn
  1. Add to MCP config, with data sources:
"mcpServers": {
  "zaturn": {
    "command": "zaturn_mcp",
    "args": [
      "postgresql://username:password@host:port/dbname",
      "mysql+pymysql://username:password@host:3306/dbname",
      "sqlite:////full/path/to/sample_dbs/northwind.db",
      "/full/path/to/sample_dbs/titanic.parquet",
      "/full/path/to/sample_dbs/ny_aq.csv",
      "/full/path/to/sample_dbs/duckdb_sample.duckdb"
    ]
  },
}

OR add a sources.txt to the Zaturn config directory:

postgresql://username:password@host:port/dbname
mysql+pymysql://username:password@host:3306/dbname
sqlite:////full/path/to/sample_dbs/northwind.db
/full/path/to/sample_dbs/titanic.parquet
/full/path/to/sample_dbs/ny_aq.csv
/full/path/to/sample_dbs/duckdb_sample.duckdb

This file needs to be at ~/.config/zaturn/sources.txt on Linux/MacOS and at %APPDATA%\zaturn\sources.txt on Windows.

If your MCP client does not support image rendering, add the --noimg argument:

...
    "args": [
      "--noimg",
      "mysql+pymysql://username:password@host:3306/dbname",
...
  1. Set a system prompt if your LLM/IDE allows you to:
You are a helpful data analysis assistant. Use only the tool provided data sources to process user inputs. Do not use external sources or your own knowledge base.
  1. Ask a question and watch the magic:
User: List the top 5 customers by revenue for Northwind
AI: 
The top 5 customers by revenue for Northwind are:

1. B's Beverages with a revenue of $6,154,115.34
2. Hungry Coyote Import Store** with a revenue of $5,698,023.67
3. Rancho grande with a revenue of $5,559,110.08
4. Gourmet Lanchonetes with a revenue of $5,552,597.90
5. Ana Trujillo Emparedados y helados with a revenue of $5,534,356.6

Roadmap

  • Support for more data source types
  • More data visualizations
  • Predictive analysis and forecasting, e.g.:
Based on the revenue of the last 3 months, forecast next month's revenue.
  • Generate Presentations & PDFs
Manager: 
  I need a presentation to show the boss. Can you do it by EOD?
Analyst: 
  EOD?! Are you still in the 2010s? 
  I can get it done right now. Actually, you can do it right now.
  You know what? The boss can do it right now.
  • A native notebook interface

Support And Feedback

Raise an issue or join the Discord.

Example Dataset Credits

The pokemon dataset compiled by Sarah Taha and PokéAPI has been included under the CC BY-NC-SA 4.0 license for demonstration purposes.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured