A free Elasticsearch and OpenSearch client with SQL and a console

Write SELECT … FROM index or a Kibana-style GET /index/_search in the same editor, browse indices down to their mapping fields, edit documents in the grid, and see what the cluster is doing in a performance pane. It's a native Elasticsearch GUI for Mac and Windows that works with self-managed clusters, Elastic Cloud and AWS OpenSearch Service, with no account and no telemetry.

Install from the terminal macOS
brew install --cask shubhesh07/db-connect/db-connect curl -fsSL https://github.com/shubhesh07/db-connect/releases/latest/download/install.sh | bash
Homebrew or the one-line installer. One universal build for Intel and Apple Silicon; Windows x64 uses the installer above.

SQL and console in one editor

SQL goes to Elastic _sql, OpenSearch _plugins/_sql, or the Open Distro endpoint on AWS Elasticsearch domains, chosen automatically:

SELECT status, COUNT(*) AS orders
FROM orders
WHERE created_at >= '2026-10-01'
GROUP BY status
ORDER BY orders DESC

Or write console requests the way you would in Kibana Dev Tools, several per run. Console text gets its own syntax colouring, endpoint and query-DSL autocomplete with your mapped field names, and Format:

GET /orders/_search
{
  "query": { "match": { "status": "paid" } },
  "aggs": { "by_country": { "terms": { "field": "country" } } },
  "size": 20
}

GET /_cat/indices?v

An Elasticsearch GUI with the tools you reach for every day

Connect anywhere

Self-managed Elasticsearch or OpenSearch, Elastic Cloud, AWS OpenSearch Service and AWS Elasticsearch domains. Username and password or an API key, TLS with a custom CA file, and an SSH tunnel through a bastion. The distribution and version are detected on connect.

AWS domains on port 443

AWS-managed domains listen on HTTPS port 443, not 9200. If a connection to an AWS domain has the wrong port or TLS off, DB Connect shows a port and TLS hint. Domains inside a VPC can be reached through the SSH tunnel.

Indices in the explorer

Indices with their aliases, doc counts and health, expanding to mapping fields, including nested objects and multi-fields. Right-click an index for Query (SQL), Search (console), Mapping, Settings, Stats, Count, Refresh, Reindex, Add alias, New document, Bulk insert or Delete index. Cluster-level Health, Nodes, Shards and Aliases sit at the top.

Results and document editing

Hits become rows with _index, _id, _score and the source fields. Aggregations arrive as a second result set and _cat output becomes a table. Edit cells, delete rows and insert documents from the grid (one _update per document), or open the full document editor.

Paging and export

Load more pages through the SQL cursor or from/size, with a clean fallback on clusters that refuse paging. Export streams through the cursor or the scroll API, so large result sets don't have to fit in one response.

Profile and Explain

Two buttons on any search: Profile shows per-shard query, collector and aggregation timings as a tree; Explain shows why each hit got its score.

Performance pane

Cluster health, search and indexing rates and latencies per node and per index, heap, CPU and rejections. Tabs for Tasks (with cancel), Shards (with allocation explain), Hot threads, Pending tasks and circuit breakers.

Safe on production

Read-only connections refuse writes. Production-tagged connections ask before every write: DELETE, PUT, _update_by_query, _delete_by_query, task cancel and document edits. Credentials are encrypted, with the key in your OS keychain.

MCP tools for AI assistants

list_tables, describe_table, run_query (SQL or console), explain_query, active_sessions and cluster_health work on Elasticsearch connections. Reads are allowed; writes need a time-bounded grant from the desktop app.

31 debugging snippets

Ready-made requests for the questions you ask a cluster under pressure, such as health and unassigned shards. Snippets are filtered by engine and insert at the cursor instead of replacing your tab.

Your other databases, same window

MySQL, PostgreSQL, Amazon Redshift, DynamoDB, Redis and MongoDB live in the same app, with one credential store and a history you can search across every connection.

Kibana Dev Tools, OpenSearch Dashboards, Elasticvue: how it compares

Kibana's Dev Tools console and OpenSearch Dashboards come with the stack, are free, and are the reference tools for their clusters; they also give you Discover, visualizations and dashboards, which DB Connect does not try to replace. They run in the browser, one deployment at a time. Elasticvue is a free, open-source Elasticsearch GUI that runs as a browser extension, desktop app or web app, and is a good fit if you want a focused cluster browser. DB Connect is for engineers who query the search cluster alongside the databases behind it: one desktop app with every connection, SQL and console in the same editor, grid edits behind production confirmation, a performance pane, and a local MCP server for AI tools. Pick by workflow, not by feature count, and check each tool's current docs, since all of them change often.

Corrections are welcome: open an issue.

Frequently asked

Does DB Connect support Elasticsearch and OpenSearch?

Yes, since v3.7.0. It connects to self-managed Elasticsearch and OpenSearch, Elastic Cloud, AWS OpenSearch Service and AWS Elasticsearch domains. The distribution and version are detected when you connect, and the same app also covers MySQL, PostgreSQL, Redshift, DynamoDB, Redis and MongoDB.

Is there a free Elasticsearch GUI for Mac?

Yes. DB Connect is free for personal and commercial use, runs natively on macOS (Intel and Apple Silicon) and Windows x64, and needs no account. Install it with brew install --cask shubhesh07/db-connect/db-connect or download the DMG.

Can I query Elasticsearch with SQL?

Yes. Write SELECT … FROM index and DB Connect sends it to Elastic _sql, OpenSearch _plugins/_sql, or the Open Distro endpoint on AWS Elasticsearch domains, whichever the cluster has. Kibana-style requests such as GET /index/_search with a JSON body work in the same editor.

Does it work with AWS OpenSearch Service?

Yes, for both AWS OpenSearch Service and older AWS Elasticsearch domains. Use the domain endpoint over HTTPS on port 443 rather than 9200; if the port or TLS setting is wrong, DB Connect shows a hint. Authentication is username and password or an API key, and an SSH tunnel through a bastion reaches domains inside a VPC.

Is DB Connect a Kibana Dev Tools alternative?

For querying and inspecting a cluster, yes: it has a console with endpoint and query-DSL autocomplete, SQL, document editing and a performance pane. It has no dashboards, visualizations or Discover, so if you live in those, keep Kibana or OpenSearch Dashboards for them.

Is it safe to point at a production cluster?

Read-only connections refuse writes, and production-tagged connections ask before every write, including DELETE, PUT, _update_by_query, _delete_by_query, task cancel and document edits. Credentials are encrypted, with the key in your OS keychain.

Can Claude or Cursor query my Elasticsearch cluster?

Yes, through DB Connect's local MCP server. It's off by default, listens on 127.0.0.1, needs a bearer token, and only reaches connections you allow-list. list_tables, describe_table, run_query (SQL or console), explain_query, active_sessions and cluster_health work on Elasticsearch connections; writes need a time-bounded grant you give from the desktop app.

Free. Native. No account.

macOS (Intel + Apple Silicon) and Windows x64, about 35 MB. Also available via brew install --cask shubhesh07/db-connect/db-connect.