zaturn 0.1.7__tar.gz → 0.2.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. {zaturn-0.1.7 → zaturn-0.2.0}/CHANGELOG.md +5 -0
  2. zaturn-0.2.0/PKG-INFO +128 -0
  3. zaturn-0.2.0/README.md +90 -0
  4. {zaturn-0.1.7 → zaturn-0.2.0}/pyproject.toml +13 -3
  5. {zaturn-0.1.7 → zaturn-0.2.0}/uv.lock +407 -5
  6. zaturn-0.2.0/zaturn/mcp/__init__.py +97 -0
  7. zaturn-0.2.0/zaturn/studio/__init__.py +5 -0
  8. zaturn-0.2.0/zaturn/studio/agent_wrapper.py +131 -0
  9. zaturn-0.2.0/zaturn/studio/app.py +288 -0
  10. zaturn-0.2.0/zaturn/studio/static/fira_code.ttf +0 -0
  11. zaturn-0.2.0/zaturn/studio/static/inter_ital_var.ttf +0 -0
  12. zaturn-0.2.0/zaturn/studio/static/inter_var.ttf +0 -0
  13. zaturn-0.2.0/zaturn/studio/static/js/htmx-multi-swap.js +44 -0
  14. zaturn-0.2.0/zaturn/studio/static/js/htmx.min.js +1 -0
  15. zaturn-0.2.0/zaturn/studio/static/noto_emoji.ttf +0 -0
  16. zaturn-0.2.0/zaturn/studio/storage.py +85 -0
  17. zaturn-0.2.0/zaturn/studio/templates/_shell.html +38 -0
  18. zaturn-0.2.0/zaturn/studio/templates/ai_message.html +4 -0
  19. zaturn-0.2.0/zaturn/studio/templates/c_settings_updated.html +1 -0
  20. zaturn-0.2.0/zaturn/studio/templates/c_source_card.html +19 -0
  21. zaturn-0.2.0/zaturn/studio/templates/chat.html +22 -0
  22. zaturn-0.2.0/zaturn/studio/templates/css/style.css +406 -0
  23. zaturn-0.2.0/zaturn/studio/templates/function_call.html +7 -0
  24. zaturn-0.2.0/zaturn/studio/templates/loader.html +1 -0
  25. zaturn-0.2.0/zaturn/studio/templates/manage_sources.html +45 -0
  26. zaturn-0.2.0/zaturn/studio/templates/nav.html +5 -0
  27. zaturn-0.2.0/zaturn/studio/templates/new_conversation.html +13 -0
  28. zaturn-0.2.0/zaturn/studio/templates/settings.html +29 -0
  29. zaturn-0.2.0/zaturn/studio/templates/setup_prompt.html +6 -0
  30. zaturn-0.2.0/zaturn/studio/templates/user_message.html +4 -0
  31. zaturn-0.2.0/zaturn/tools/__init__.py +13 -0
  32. {zaturn-0.1.7/zaturn → zaturn-0.2.0/zaturn/tools}/config.py +7 -9
  33. zaturn-0.2.0/zaturn/tools/core.py +97 -0
  34. {zaturn-0.1.7/zaturn → zaturn-0.2.0/zaturn/tools}/query_utils.py +52 -2
  35. zaturn-0.2.0/zaturn/tools/visualizations.py +267 -0
  36. zaturn-0.2.0/zaturn.egg-info/PKG-INFO +128 -0
  37. zaturn-0.2.0/zaturn.egg-info/SOURCES.txt +46 -0
  38. zaturn-0.2.0/zaturn.egg-info/entry_points.txt +3 -0
  39. {zaturn-0.1.7 → zaturn-0.2.0}/zaturn.egg-info/requires.txt +9 -0
  40. zaturn-0.1.7/PKG-INFO +0 -185
  41. zaturn-0.1.7/README.md +0 -156
  42. zaturn-0.1.7/zaturn/__init__.py +0 -14
  43. zaturn-0.1.7/zaturn/core.py +0 -140
  44. zaturn-0.1.7/zaturn/visualizations.py +0 -155
  45. zaturn-0.1.7/zaturn.egg-info/PKG-INFO +0 -185
  46. zaturn-0.1.7/zaturn.egg-info/SOURCES.txt +0 -21
  47. zaturn-0.1.7/zaturn.egg-info/entry_points.txt +0 -2
  48. {zaturn-0.1.7 → zaturn-0.2.0}/.gitignore +0 -0
  49. {zaturn-0.1.7 → zaturn-0.2.0}/LICENSE +0 -0
  50. {zaturn-0.1.7 → zaturn-0.2.0}/run_sse_server.py +0 -0
  51. {zaturn-0.1.7 → zaturn-0.2.0}/setup.cfg +0 -0
  52. {zaturn-0.1.7/brand → zaturn-0.2.0/zaturn/studio/static}/logo.png +0 -0
  53. {zaturn-0.1.7/brand → zaturn-0.2.0/zaturn/studio/static}/logo.svg +0 -0
  54. {zaturn-0.1.7/zaturn → zaturn-0.2.0/zaturn/tools}/example_data/all_pokemon_data.csv +0 -0
  55. {zaturn-0.1.7 → zaturn-0.2.0}/zaturn.egg-info/dependency_links.txt +0 -0
  56. {zaturn-0.1.7 → zaturn-0.2.0}/zaturn.egg-info/top_level.txt +0 -0
@@ -1,3 +1,8 @@
1
+ ### v0.2.0 (2025-07-01)
2
+ - The Studio Interface: Now use Zaturn with an inbuilt UI, with your own LLM API.
3
+ - Refactored MCP Code.
4
+ - Removed `show_query_result` tool. Query results will now be returned directly.
5
+
1
6
  #### v0.1.7 (2025-05-06)
2
7
  - Ensured Read-Only For SQLite and MySQL
3
8
 
zaturn-0.2.0/PKG-INFO ADDED
@@ -0,0 +1,128 @@
1
+ Metadata-Version: 2.4
2
+ Name: zaturn
3
+ Version: 0.2.0
4
+ Summary: AI Data Analysis MCP & Studio
5
+ Author-email: Karthik Devan <krtdvn@gmail.com>
6
+ Maintainer-email: Karthik Devan <krtdvn@gmail.com>
7
+ Project-URL: Homepage, https://github.com/kdqed/zaturn
8
+ Project-URL: Issues, https://github.com/kdqed/zaturn/issues
9
+ Requires-Python: >=3.11
10
+ Description-Content-Type: text/markdown
11
+ License-File: LICENSE
12
+ Requires-Dist: clickhouse-connect>=0.8.17
13
+ Requires-Dist: cryptography>=44.0.2
14
+ Requires-Dist: duckdb>=1.2.1
15
+ Requires-Dist: fastmcp>=0.4.1
16
+ Requires-Dist: flask[async]>=3.1.1
17
+ Requires-Dist: function-schema>=0.4.5
18
+ Requires-Dist: kaleido==0.2.1
19
+ Requires-Dist: mistune>=3.1.3
20
+ Requires-Dist: openai>=1.82.1
21
+ Requires-Dist: openai-agents>=0.0.16
22
+ Requires-Dist: pandas>=2.2.3
23
+ Requires-Dist: pillow>=11.2.1
24
+ Requires-Dist: platformdirs>=4.3.7
25
+ Requires-Dist: plotly[express]>=6.0.1
26
+ Requires-Dist: psycopg2-binary>=2.9.10
27
+ Requires-Dist: pyarrow>=19.0.1
28
+ Requires-Dist: pymysql>=1.1.1
29
+ Requires-Dist: python-lsp-server>=1.12.2
30
+ Requires-Dist: python-slugify>=8.0.4
31
+ Requires-Dist: seaborn>=0.13.2
32
+ Requires-Dist: setuptools>=78.1.0
33
+ Requires-Dist: sqlalchemy>=2.0.40
34
+ Requires-Dist: tabulate>=0.9.0
35
+ Requires-Dist: tomli-w>=1.2.0
36
+ Requires-Dist: werkzeug>=3.1.3
37
+ Dynamic: license-file
38
+
39
+ <h1>
40
+ <img src="https://github.com/kdqed/zaturn/raw/main/zaturn/studio/static/logo.png" width="24" height="24">
41
+ <span>Zaturn: Your Co-Pilot For Data Analytics & Business Insights</span>
42
+ </h1>
43
+
44
+ <a href="https://discord.gg/K8mECeVzpQ">
45
+ <img src="https://zaturn.pro/assets/discord-full.png" height="20" width="133" alt="Discord Logo">
46
+ </a>
47
+
48
+ ## Just Chat With Your Data! No SQL, No Python.
49
+
50
+ Zaturn provides tools that enable AI models to run SQL, so you don't have to. It can be used as an MCP or as a web interface similar to Jupyter Notebook.
51
+
52
+ ## Zaturn in Action
53
+
54
+ https://github.com/user-attachments/assets/d42dc433-e5ec-4b3e-bef0-5cfc097396ab
55
+
56
+ ## Features:
57
+
58
+ ### Multiple Data Sources
59
+
60
+ Zaturn can currently connect to the following data sources:
61
+ - SQL Databases: PostgreSQL, SQLite, DuckDB, MySQL, ClickHouse
62
+ - Files: CSV, Parquet
63
+
64
+ Connectors for more data sources are being added.
65
+
66
+ ### Visualizations
67
+
68
+ In addition to providing tabular and textual summaries, Zaturn can also generate the following image visualizations
69
+
70
+ - Scatter and Line Plots
71
+ - Histograms
72
+ - Strip and Box Plots
73
+ - Bar Plots
74
+
75
+ More visualization capabilities are being added.
76
+
77
+
78
+ ## Installation & Setup
79
+
80
+ See [https://zaturn.pro/install](https://zaturn.pro/install)
81
+
82
+
83
+ ## Roadmap
84
+
85
+ - Support for more data source types
86
+ - More data visualizations
87
+ - Predictive analysis and forecasting, e.g.:
88
+ ```
89
+ Based on the revenue of the last 3 months, forecast next month's revenue.
90
+ ```
91
+ - Generate Presentations & PDFs
92
+ ```
93
+ Manager:
94
+ I need a presentation to show the boss. Can you do it by EOD?
95
+ Analyst:
96
+ EOD?! Are you still in the 2010s?
97
+ I can get it done right now. Actually, you can do it right now.
98
+ You know what? The boss can do it right now.
99
+ ```
100
+ - A native notebook interface
101
+
102
+ ## Help And Feedback
103
+
104
+ [Raise an issue](https://github.com/kdqed/zaturn/issues) or [join the Discord](https://discord.gg/K8mECeVzpQ).
105
+
106
+
107
+ ## Support The Project
108
+
109
+ If you find Zaturn useful, please support this project by:
110
+ - Starring the Project
111
+ - Spreading the word
112
+
113
+ Your support will enable me to dedicate more of my time to Zaturn.
114
+
115
+ ## Example Dataset Credits
116
+
117
+ The [pokemon dataset compiled by Sarah Taha and PokéAPI](https://www.kaggle.com/datasets/sarahtaha/1025-pokemon) has been included under the [CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/) license for demonstration purposes.
118
+
119
+ ## Featured on glama.ai
120
+
121
+ <a href="https://glama.ai/mcp/servers/@kdqed/zaturn">
122
+ <img width="380" height="200" src="https://glama.ai/mcp/servers/@kdqed/zaturn/badge" alt="Zaturn MCP server" />
123
+ </a>
124
+
125
+
126
+ ## Star History
127
+
128
+ [![Star History Chart](https://api.star-history.com/svg?repos=kdqed/zaturn&type=Date)](https://www.star-history.com/#kdqed/zaturn&Date)
zaturn-0.2.0/README.md ADDED
@@ -0,0 +1,90 @@
1
+ <h1>
2
+ <img src="https://github.com/kdqed/zaturn/raw/main/zaturn/studio/static/logo.png" width="24" height="24">
3
+ <span>Zaturn: Your Co-Pilot For Data Analytics & Business Insights</span>
4
+ </h1>
5
+
6
+ <a href="https://discord.gg/K8mECeVzpQ">
7
+ <img src="https://zaturn.pro/assets/discord-full.png" height="20" width="133" alt="Discord Logo">
8
+ </a>
9
+
10
+ ## Just Chat With Your Data! No SQL, No Python.
11
+
12
+ Zaturn provides tools that enable AI models to run SQL, so you don't have to. It can be used as an MCP or as a web interface similar to Jupyter Notebook.
13
+
14
+ ## Zaturn in Action
15
+
16
+ https://github.com/user-attachments/assets/d42dc433-e5ec-4b3e-bef0-5cfc097396ab
17
+
18
+ ## Features:
19
+
20
+ ### Multiple Data Sources
21
+
22
+ Zaturn can currently connect to the following data sources:
23
+ - SQL Databases: PostgreSQL, SQLite, DuckDB, MySQL, ClickHouse
24
+ - Files: CSV, Parquet
25
+
26
+ Connectors for more data sources are being added.
27
+
28
+ ### Visualizations
29
+
30
+ In addition to providing tabular and textual summaries, Zaturn can also generate the following image visualizations
31
+
32
+ - Scatter and Line Plots
33
+ - Histograms
34
+ - Strip and Box Plots
35
+ - Bar Plots
36
+
37
+ More visualization capabilities are being added.
38
+
39
+
40
+ ## Installation & Setup
41
+
42
+ See [https://zaturn.pro/install](https://zaturn.pro/install)
43
+
44
+
45
+ ## Roadmap
46
+
47
+ - Support for more data source types
48
+ - More data visualizations
49
+ - Predictive analysis and forecasting, e.g.:
50
+ ```
51
+ Based on the revenue of the last 3 months, forecast next month's revenue.
52
+ ```
53
+ - Generate Presentations & PDFs
54
+ ```
55
+ Manager:
56
+ I need a presentation to show the boss. Can you do it by EOD?
57
+ Analyst:
58
+ EOD?! Are you still in the 2010s?
59
+ I can get it done right now. Actually, you can do it right now.
60
+ You know what? The boss can do it right now.
61
+ ```
62
+ - A native notebook interface
63
+
64
+ ## Help And Feedback
65
+
66
+ [Raise an issue](https://github.com/kdqed/zaturn/issues) or [join the Discord](https://discord.gg/K8mECeVzpQ).
67
+
68
+
69
+ ## Support The Project
70
+
71
+ If you find Zaturn useful, please support this project by:
72
+ - Starring the Project
73
+ - Spreading the word
74
+
75
+ Your support will enable me to dedicate more of my time to Zaturn.
76
+
77
+ ## Example Dataset Credits
78
+
79
+ The [pokemon dataset compiled by Sarah Taha and PokéAPI](https://www.kaggle.com/datasets/sarahtaha/1025-pokemon) has been included under the [CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/) license for demonstration purposes.
80
+
81
+ ## Featured on glama.ai
82
+
83
+ <a href="https://glama.ai/mcp/servers/@kdqed/zaturn">
84
+ <img width="380" height="200" src="https://glama.ai/mcp/servers/@kdqed/zaturn/badge" alt="Zaturn MCP server" />
85
+ </a>
86
+
87
+
88
+ ## Star History
89
+
90
+ [![Star History Chart](https://api.star-history.com/svg?repos=kdqed/zaturn&type=Date)](https://www.star-history.com/#kdqed/zaturn&Date)
@@ -1,7 +1,7 @@
1
1
  [project]
2
2
  name = "zaturn"
3
- version = "0.1.7"
4
- description = "AI Data Analysis MCP"
3
+ version = "0.2.0"
4
+ description = "AI Data Analysis MCP & Studio"
5
5
  authors = [
6
6
  {name = "Karthik Devan", email = "krtdvn@gmail.com"},
7
7
  ]
@@ -15,22 +15,32 @@ dependencies = [
15
15
  "cryptography>=44.0.2",
16
16
  "duckdb>=1.2.1",
17
17
  "fastmcp>=0.4.1",
18
+ "flask[async]>=3.1.1",
19
+ "function-schema>=0.4.5",
18
20
  "kaleido==0.2.1",
21
+ "mistune>=3.1.3",
22
+ "openai>=1.82.1",
23
+ "openai-agents>=0.0.16",
19
24
  "pandas>=2.2.3",
25
+ "pillow>=11.2.1",
20
26
  "platformdirs>=4.3.7",
21
27
  "plotly[express]>=6.0.1",
22
28
  "psycopg2-binary>=2.9.10",
23
29
  "pyarrow>=19.0.1",
24
30
  "pymysql>=1.1.1",
25
31
  "python-lsp-server>=1.12.2",
32
+ "python-slugify>=8.0.4",
26
33
  "seaborn>=0.13.2",
27
34
  "setuptools>=78.1.0",
28
35
  "sqlalchemy>=2.0.40",
29
36
  "tabulate>=0.9.0",
37
+ "tomli-w>=1.2.0",
38
+ "werkzeug>=3.1.3",
30
39
  ]
31
40
 
32
41
  [project.scripts]
33
- zaturn_mcp = "zaturn:main"
42
+ zaturn_mcp = "zaturn.mcp:main"
43
+ zaturn_studio = "zaturn.studio:main"
34
44
 
35
45
  [project.urls]
36
46
  Homepage = "https://github.com/kdqed/zaturn"