Four packages, one native binary each. No Spark, no JVM. Pick the package for your workflow below.
Signed binaries for every platform: deltaforge-org/delta-forge on GitHub
The interactive query editor, catalog browser, and pipeline viewer. A single signed binary for macOS, Windows, and Linux: no Spark, no JVM.
curl -fsSL https://deltaforge.org/install.sh | sh
Or via Homebrew:
# Add the tap (one-time)
brew tap deltaforge-org/tap
brew install --cask deltaforge-platform
iwr -useb https://deltaforge.org/install.ps1 | iex
Or via winget (installs the signed MSI and adds the application to your PATH):
winget install DeltaForge.Platform
Detects your architecture (x64 or ARM64), downloads the matching AppImage, and adds a launcher entry:
curl -fsSL https://deltaforge.org/install.sh | sh
Prefer the terminal? Switch to deltaforge-cli above for scripting and CI, or deltaforge-compute to run a production node.
Every release artifact includes a detached GPG signature and a SHA256SUMS manifest.
# Import the signing key (one-time)
curl -fsSL https://deltaforge.org/pubkey.asc | gpg --import
# Verify a downloaded artifact
gpg --verify deltaforge-cli-1.0.7-linux-x64.tar.gz.sig \
deltaforge-cli-1.0.7-linux-x64.tar.gz
Fingerprint: B461 8130 D4B0 3CF5 454E 28F0 A859 0BF7 C3DC E5F3 ·
RSA 4096, UID releases@deltaforge.org
deltaforge desktop application for interactive development on macOS, Windows, or Linux. For terminal and CI work, switch to deltaforge-cli. For cloud production deployments, use deltaforge-compute.deltaforge-compute package above. Install it on any Linux VM and run it as a systemd service, or deploy it as a container. The control plane requires a Postgres instance.Installed and ready? Browse the live demos or read CSV to Delta Lake Without Spark.
The headless compute node. Deploy as a native binary on any cloud VM via systemd, or as a container in Docker or Kubernetes. The control plane requires a Postgres instance. No JVM, no Spark cluster to manage.
The standard production deployment. Install the binary (detects x64 or ARM64), drop a systemd unit, and start the service.
curl -fsSL https://deltaforge.org/install.sh | sh -s -- --pkg deltaforge-compute
sudo tee /etc/systemd/system/deltaforge-compute.service >/dev/null <<EOF
[Unit]
Description=DeltaForge Compute Node
After=network-online.target
Wants=network-online.target
[Service]
ExecStart=/usr/local/bin/deltaforge-compute
Restart=on-failure
RestartSec=5
Environment=DELTAFORGE_LICENSE_KEY=your-license-key
Environment=DELTAFORGE_CONTROL_PLANE=https://console.deltaforge.org
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable --now deltaforge-compute
Once running, the node registers itself with your control plane workspace. Add more nodes at any time to scale throughput. See the autoscaling guide.
Useful for local development and testing compute node behaviour before deploying to a cloud VM.
curl -fsSL https://deltaforge.org/install.sh | sh -s -- --pkg deltaforge-compute
Or via Homebrew:
# Add the tap (one-time)
brew tap deltaforge-org/tap
brew install deltaforge-compute
Useful for local development on Windows workstations. For production, use the Linux systemd path.
iwr -useb https://deltaforge.org/install.ps1 | iex; Install-DeltaForge -Pkg deltaforge-compute
Or via winget:
winget install DeltaForge.Compute
Compute nodes run inside your cloud environment and read Delta Lake and Iceberg tables directly from object storage. They report license and metering data to the DeltaForge control plane over outbound HTTPS.
%%{init: {'theme': 'dark', 'themeVariables': {'primaryColor': '#1e1e2e', 'primaryBorderColor': '#b95731', 'lineColor': '#b95731', 'secondaryColor': '#13131a', 'tertiaryColor': '#0d0d14', 'clusterBkg': '#1a1b23', 'clusterBorder': '#444', 'edgeLabelBackground': '#13131a', 'nodeTextColor': '#e0e0e0'}}}%%
flowchart TB
subgraph clients["Client Tools"]
pbi["Power BI / Excel / Tableau"]
db["DBeaver / JDBC Applications"]
ai["Claude / Cursor via MCP"]
dfd["DeltaForge Desktop"]
end
subgraph cp["Control Plane (self-hosted or cloud)"]
cpsvc["deltaforge-control-plane :3000"]
pg[("PostgreSQL")]
cpsvc --- pg
end
subgraph cloud["Your Cloud: AWS, Azure, On-Premises"]
lb["Load Balancer / ASG / VMSS"]
subgraph nodes["Compute Fleet - horizontal scale"]
n1["deltaforge-compute"]
n2["deltaforge-compute"]
n3["deltaforge-compute ... +N"]
end
subgraph store["Object Storage: S3 / ADLS Gen2"]
dl["Delta Lake Tables"]
ice["Iceberg Tables"]
end
end
pbi & db --"ODBC / ADBC"--> cpsvc
ai --"MCP"--> cpsvc
dfd --"HTTP API"--> cpsvc
cpsvc --"query routing"--> lb
lb --> n1 & n2 & n3
n1 & n2 & n3 --"Parquet I/O"--> store
Install on any EC2 instance (x86-64 or ARM64), point table LOCATION paths at s3:// URIs, and IAM role credentials are picked up automatically from the instance profile.
Deploy on any Azure VM or VMSS. Table LOCATION paths use abfss:// (ADLS Gen2) or wasbs:// (Blob Storage) URIs. Managed Identity credentials are picked up automatically.
Deploy as a Docker container, in Kubernetes via Helm, or as a standalone binary on a VM fleet managed by an Auto Scaling Group or VMSS. The control plane also runs containerised and requires Postgres.
Single binary for scripting queries, running SQL files, executing pipelines, and checking cluster health from any terminal or CI environment.
curl -fsSL https://deltaforge.org/install.sh | sh -s -- --pkg deltaforge-cli
Or via Homebrew (add the DeltaForge tap once, then install deltaforge-cli as a formula):
# Add the tap (one-time)
brew tap deltaforge-org/tap
brew install deltaforge-cli
Tap source: github.com/deltaforge-org/homebrew-tap
iwr -useb https://deltaforge.org/install.ps1 | iex; Install-DeltaForge -Pkg deltaforge-cli
Or via winget (installs the signed binary into your PATH) or Scoop (the preferred choice for portable, no-admin installs):
winget install DeltaForge.CLI
# Add the bucket (one-time)
scoop bucket add deltaforge https://github.com/deltaforge-org/scoop-bucket
scoop install deltaforge-cli
Detects your architecture (x64 or ARM64), downloads the matching tarball, and drops the binary on your PATH:
curl -fsSL https://deltaforge.org/install.sh | sh -s -- --pkg deltaforge-cli
Or manually:
# Substitute the latest version from the releases page
curl -fsSL https://github.com/deltaforge-org/delta-forge/releases/download/v1.0.0/deltaforge-cli-1.0.0-linux-x64.tar.gz \
| sudo tar -xz -C /usr/local/bin
A few things you can do from the terminal once the binary is on your PATH.
Execute any SQL script against a DeltaForge workspace and stream results to your terminal.
deltaforge-cli run query.sql
Trigger a numbered pipeline script and watch step-by-step progress in the terminal.
deltaforge-cli pipeline run --file pipeline.sql
Check the reachability and version of every registered compute node in a workspace.
deltaforge-cli status
Plugs DeltaForge into any MCP-compatible AI assistant. Exposes your Delta Lake catalog, pipeline graph, lineage, and query execution as typed tools an AI can call directly. No custom prompts, no clipboard-pasting schemas.
curl -fsSL https://deltaforge.org/install.sh | sh -s -- --pkg deltaforge-mcp
Or via Homebrew (add the DeltaForge tap once, then install deltaforge-mcp as a formula):
# Add the tap (one-time)
brew tap deltaforge-org/tap
brew install deltaforge-mcp
Tap source: github.com/deltaforge-org/homebrew-tap
iwr -useb https://deltaforge.org/install.ps1 | iex; Install-DeltaForge -Pkg deltaforge-mcp
Or via winget (installs the signed binary into your PATH) or Scoop (the preferred choice for portable, no-admin installs):
winget install DeltaForge.Mcp
# Add the bucket (one-time, skip if already added)
scoop bucket add deltaforge https://github.com/deltaforge-org/scoop-bucket
scoop install deltaforge-mcp
Detects your architecture (x64 or ARM64) and downloads the matching binary. --pkg deltaforge-mcp selects the MCP server instead of the default CLI package:
curl -fsSL https://deltaforge.org/install.sh | sh -s -- --pkg deltaforge-mcp
Point your AI assistant's MCP config at the server binary. The format is the same across all MCP-compatible tools.
{
"mcpServers": {
"deltaforge": {
"command": "deltaforge-mcp",
"args": ["--workspace", "your-workspace-id"]
}
}
}
Add the config block to claude_desktop_config.json: ~/Library/Application Support/Claude/ on macOS or %APPDATA%\Claude\ on Windows. Restart Claude Desktop to pick it up.
Open Cursor Settings, navigate to the MCP section, and paste the config block. Cursor reloads MCP servers without restarting, so the tools become available immediately.
Add the config block to your workspace or user settings.json under the mcp.servers key. The Copilot chat panel picks up the server on the next activation.
Full reference of exposed tools: MCP server documentation.
Register a workspace in the console, point it at a Git repo with SQL in it, and run your first query.