Octa¶

Octa is a native desktop application for viewing and editing tabular data files. It opens Parquet, CSV, JSON, SQLite, DuckDB, Excel, and around twenty more formats in a fast spreadsheet-like view, with sorting, filtering, full-text search, inline editing, SQL queries, and file comparison.
It also doubles as a command-line tool and an MCP server, so models like Claude can answer questions about your local files.
What it's good for¶
-
Look at data quickly
Drag a Parquet, a Stata
.dta, a SQLite database, an Excel workbook, Octa figures out the format and opens it in a table. Multi-million-row Parquet files stream in the background while you scroll. -
Run SQL against any file
Every open file is exposed to DuckDB as a temp table called
data. No schema setup, no import step needed. Press Ctrl+Enter and yourSELECT ... FROM data WHERE ...runs against the loaded rows. -
Plot without leaving Octa
Histogram, bar, line, scatter, and box plots open in their own tab via Analyse → Chart. Style the title, axes, legend, and per-series colours, then export to PNG, SVG, or PDF for a report or slide deck.
-
Use it from the shell
octa --schema data.parquetprints columns + types.octa --head/--tail/--sampleslice rows out (as TSV / JSON / CSV).octa --diff a.csv b.csvshows the rows that changed between two files, andocta --convert in.csv out.parquetround-trips through the same format readers the GUI uses. -
Plug Claude into your data
octa --mcpis a Model Context Protocol server on stdio. A twenty-tool set, read_table, schema, run_sql, convert, profile, diff_tables, write_table, edit_table, and more, lets Claude Desktop, Claude Code, or any MCP client answer questions about (and edit) your local files. Runs in a container too. -
Compare two files
Compare a CSV to a Parquet by hashing matching columns. See exact line-by-line text diffs of two notebooks. Bucket rows into Left-only / Right-only / Shared and inspect each.
-
Edit and save back
Edit cells inline, insert and reorder columns, derive new ones with formulas or date/time calculation, mark cells with colours, undo and redo. Even Jupyter notebook source cells are editable, and saving preserves their outputs. SQLite/DuckDB writes are diff-based, so only changed rows are touched.
-
Use it in your language
The interface is available in 13 languages, English, German, Spanish, French, and more, switchable live under Settings → Appearance. CSV encodings, date formats, and number separators are detected per file.
Where to next¶
- New here? Start with Installation and First Steps.
- Looking for a specific feature? The View modes overview lists every way Octa can display a file.
- Setting up MCP? MCP setup walkthrough has step-by-step configs for Claude Desktop, Claude Code, and MCP Inspector.
- Power user? Jump to Keyboard shortcuts or Tips & recipes.
Octa is open source (MIT) and the source lives at github.com/thorstenfoltz/octa.