Chat2DB
Chat2DB is a free, cross-platform, local-first database client and SQL workspace for developers, DBAs, analysts, and data teams. Connect to 40+ databases, manage data, edit and run SQL, and use your own AI model to generate, explain, and optimize queries.
Install / Use
claude mcp add OtterMind -- npx -y github:OtterMind/Chat2DBIf the server publishes to npm under a different name, use that package instead — check the repo README.
MCP Server
Model Context Protocol server
Quality Score
Category
AI & Machine LearningSupported Platforms
Our assessment of Chat2DB
Chat2DB scores 99/100 on our quality scale, 20th of 762 AI & Machine Learning skills we index (top 3%).
Its MCP Server is 13 KB long, well organised into 21 sections with 8 code examples: a thorough specification that gives an agent plenty to work with.
With 28,276 GitHub stars, it is one of the more widely adopted skills in the catalogue.
Maintenance, license and trust
- The repository was last updated 3 days ago, so Chat2DB is actively maintained.
- Our last check on 2026-09-27 found the source still online.
- No license is declared. By default that means all rights are reserved: you can read it, but reusing or redistributing it is not clearly permitted. Ask the author before building on it commercially.
- Its trust signals score 88/100, with 1 caution from licensing, adoption, age or documentation. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.
Safety scan
No issues foundOur scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. An AI review of the same text found nothing harmful.
AI review by kimi-k2.7-code on 2026-09-24. Automated pattern scan on 2026-09-24. It catches known dangerous patterns, not every risk — read a skill before letting an agent act on it.
Chat2DB compared with similar skills
All 4 of these similar skills score higher than Chat2DB; compare them before choosing.
| Skill | Score | Stars | Updated | Format |
|---|---|---|---|---|
| Chat2DB (this skill)by OtterMind | 99 | 28.3k | 3d ago | MCP Server |
| claude-memby thedotmack | 100 | 94.8k | 1d ago | CLAUDE.md |
| Agent-Reachby Panniantong | 100 | 85.7k | 12d ago | CLAUDE.md |
| Understand-Anythingby Egonex-AI | 100 | 84.3k | 15d ago | CLAUDE.md |
| headroomby headroomlabs-ai | 100 | 73.9k | today | CLAUDE.md |
Frequently asked questions
- How do I install Chat2DB?
- Run
claude mcp add OtterMind -- npx -y github:OtterMind/Chat2DB. The install tabs above show the steps for each supported agent. - Which AI agents does Chat2DB work with?
- It is written for Claude Code and Claude Desktop, as a MCP Server file. Other agents that read the same format can often use it too.
- Is Chat2DB safe to use?
- Our scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. An AI review of the same text found nothing harmful. It declares no license and scores 88/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
- Is Chat2DB still maintained?
- The repository was last updated 3 days ago, so Chat2DB is actively maintained.
Skill content
View source on GitHubWhat is Chat2DB?
Chat2DB Community is a free, cross-platform database client for Windows, macOS, and Linux. It runs entirely on your machine and combines a full-featured SQL workspace with an AI assistant that you connect to your own model.
- 40+ databases — MySQL, PostgreSQL, Oracle, SQL Server, ClickHouse, MongoDB, Redis, SQLite, MariaDB, TiDB, Hive, DB2, Snowflake, BigQuery, Elasticsearch, Trino, TimescaleDB, Greenplum, YugabyteDB, CrateDB, QuestDB, Apache IoTDB, Firebird, HSQLDB, Apache Derby, and more via plugins — new JDBC databases can be added through configuration only, without code changes.
- SQL workspace — editing, completion, formatting, execution, saved SQL, and execution history.
- AI assistant — bring your own AI model to generate, explain, and optimize SQL in natural language.
- Database management — browse metadata, manage tables and objects (DDL/DML), and edit data in place.
- Data import and export, dashboards and charts, and an open-source CLI with MCP support.
Screenshots
| Dashboards and charts | ER diagrams |
| --- | --- |
|
|
|
| Visual data management | Data import and export |
| --- | --- |
|
|
|
Early preview
The next feature line ships as an early preview before it reaches the regular Beta channel:
- Chat2DB Community 5.4.0-beta.1 (early preview) — installers for macOS, Windows and Linux.
- It adds an optional local agent runtime with skills, external MCP servers, and file and terminal tools; choose Pi Agent in the AI input's runtime selector to enable it (the first selection asks for confirmation and downloads the runtime).
- This preview is neither the stable nor the regular Beta release:
Lateststays on the stable build, and the regular Beta line continues with5.3.8-beta.x. Enable Receive Beta versions in Settings → About Us to receive it in the app.
Quick Start
Option 1: Desktop App
Download the installer for your platform from GitHub Releases, install it, and start connecting to your databases. No further setup is required.
Option 2: Docker
Requirements: Docker 19.03.0+, Docker Compose 2.0.0+ (Compose V2, only for the Compose variant), 2+ CPU cores, 4+ GiB RAM.
First create the encryption key (see Encryption Key for why it matters), then start the container:
# Run once from a repository checkout. Re-running reuses the same valid key.
git clone https://github.com/OtterMind/Chat2DB.git && cd Chat2DB
./script/security/init-community-encryption-key.sh
docker run --detach \
--name chat2db-community \
--restart unless-stopped \
--publish 127.0.0.1:10825:10825 \
--volume "$HOME/.chat2db-community-docker:/root/.chat2db-community" \
--env CHAT2DB_COMMUNITY_ENCRYPTION_KEY_FILE=/run/secrets/chat2db-community-encryption.key \
--volume "$HOME/.config/chat2db-community/encryption.key:/run/secrets/chat2db-community-encryption.key:ro" \
chat2db/chat2db:latest
Then open http://localhost:10825 in your browser.
Alternatively, use the bundled Compose definition:
./script/security/init-community-encryption-key.sh
docker compose --file docker/docker-compose.yml up --detach
Notes:
- To update, pull the new image, remove the old container, and run the start command again. Keep
~/.config/chat2db-community/encryption.keyacross rebuilds. - The
docker runexample stores application data in$HOME/.chat2db-community-docker; the Compose definition uses thechat2db-community-datanamed volume. These locations do not share data. - Chat2DB Community 5.3.0 uses the independent
/root/.chat2db-communitydirectory and does not automatically migrate data from earlier images that used/root/.chat2db.
Security Notes
Chat2DB Community is a single-user, local-first application. It has no user
accounts or authorization boundaries between users. Keep the HTTP service
bound to 127.0.0.1 or ::1 and do not expose it to other users or
untrusted networks.
Custom JDBC drivers are executable Java code — install them only from sources you trust. Imported configuration files, archives, SQL files, database contents, and AI responses remain untrusted data. See the Security Policy for the complete trust boundary and vulnerability reporting process.
If you find this project useful, please give us a Star ⭐️ — it really helps!
<div align="center"> <a href="https://github.com/OtterMind/Chat2DB"><img src="https://cdn.chat2db.ai/g/Area.gif" alt="Star Chat2DB on GitHub" width="600"></a> </div>Encryption Key
Chat2DB Community encrypts stored datasource passwords and AI model API keys with AES-256-GCM using a per-installation key. Create it once from a repository checkout (requires openssl):
./script/security/init-community-encryption-key.sh
The key is written to ~/.config/chat2db-community/encryption.key. Back this file up separately and keep it across upgrades and container rebuilds — replacing or losing it makes previously stored datasource passwords and AI model API keys unreadable. Web/headless startup fails when no valid key is provided; only Desktop mode creates a missing key automatically.
The key must be valid Base64 that decodes to exactly 32 bytes. The bundled initializer generates the standard padded form: 44 Base64 characters ending in =. It is cryptographic key material, not a human-readable password. Datasource passwords and AI API keys use the same key with separate authenticated AAD values, so ciphertext from one purpose cannot be decrypted as the other.
To use a custom path, pass it to the script and configure the same path when starting Chat2DB:
./script/security/init-community-encryption-key.sh /secure/path/chat2db-community.key
java -Dloader.path=chat2db-community-server/chat2db-community-start/target/lib \
-Dchat2db.runtime.mode=community \
-Dchat2db.mode=WEB \
-Dchat2db.gui=false \
-Dchat2db.network.status=OFFLINE \
-Dchat2db.community.encryption-key-file=/secure/path/chat2db-community.key \
-Dserver.address=127.0.0.1 \
-Dserver.port=10825 \
-jar chat2db-community-server/chat2db-community-start/target/chat2db-community.jar
The script's key-file path priority is the positional argument, CHAT2DB_COMMUNITY_ENCRYPTION_KEY_FILE, then the default path. It reuses a valid regular file, rejects symbolic links and non-regular files, and refuses to overwrite an invalid file. Keep the key readable only by the Chat2DB process owner.
Key configuration is resolved in this order:
- JVM property
chat2db.community.encryption-keycontaining the Base64 key. - Environment variable
CHAT2DB_COMMUNITY_ENCRYPTION_KEYcontaining the Base64 key. - JVM property
chat2db.community.encryption-key-filecontaining a key-file path. - Environment variable
CHAT2DB_COMMUNITY_ENCRYPTION_KEY_FILEcontaining a key-file path. - Default file
~/.config/chat2db-community/encryption.key.
The first configured value is authoritative. A blank value, malformed Base64, a key that does not decode to 32 bytes, or an invalid key file fails startup instead of falling through to the next source. File-based configuration is recommended because it avoids placing the key value directly in process arguments or environment variables.
Automatic key-file creation depends on chat2db.mode, not chat2db.gui. Community Desktop mode (chat2db.runtime.mode=community with chat2db.mode=DESKTOP) creates the selected key file when no inline key is configured and the file is missing. Any non-Desktop mode, including normal Web/headless startup, never creates a missing key and fails until a valid key is provided or initialized. The resolved key is cached for the process lifetime, so changing key configuration requires an application restart.
Build from Source
Prerequisites
- Java runtime: <a href="https://adoptium.net/temurin/releases/?version=17" target="_blank">Eclipse Temurin 17</a>
- Node.js 18.17.0 or later
- Maven 3.8 or later
Clone the Repository
git clone https://github.com/OtterMind/Chat2DB.git
Frontend
Use Yarn with the checked-in lockfile.
cd Chat2DB/chat2db-community-client
yarn install --frozen-lockfile
yarn run start:community:hot
Backend
cd Chat2DB
mvn -B clean package -Dmaven.test.skip=true -Dchat2db.finalName=chat2db-community \
-f chat2db-community-server/pom.xml \
-pl chat2db-community-start -am
./script/security/init-community-encryption-key.sh
java -Dloader.path=chat2db-community-server/chat2db-community-start/target/lib \
-Dchat2db.gui=false \
-Dchat2db.runtime.mode=community \
-Dchat2db.mode=WEB \
-Dchat2db.network.status=OFFLINE \
-Dchat2db.community.encryption-key-file="$HOME/.config/chat2db-community/encryption.key" \
-Dserver.address=127.0.0.1 \
-Dserver.port=10825 \
-Dspring.profiles.active=dev \
-jar chat2db-community-server/chat2db-community-start/target/chat2db-community.jar
Build a Local Docker Image
./docker/docker-build.sh 5.3.0 chat2db/chat2db:5.3.0
Database guides
Step-by-step guides for connecting Chat2DB Community to specific databases:
- BigQuery — Google BigQuery via a Google Cloud service account.
Community vs Commercial Editions
The Community edition contains the full local database client described above, including custom AI model support. The commercial Pro and Enterprise editions build on the same core and add hosted AI services, user accounts, cloud storage and multi-device sync, and team collaboration and governance features. See chat2db.ai for details.
Contributing
We welcome bug reports, feature requests, documentation improvements, testing feedback, and pull requests from the community.
Before opening an issue or submitting a pull request, please read our Contributing Guide. It explains how to report bugs, suggest improvements, and make contributions easier for maintainers to review.
- For bugs and feature requests, please use GitHub Issues.
- For questions, setup help, and open-ended discussions, please use GitHub Discussions.
Truncated for display — read the full file on GitHub.
Related Skills
claude-mem
94.8kPersistent Context Across Sessions for Every Agent – Captures everything your agent does during sessions, compresses it with AI, and injects relevant context back into future sessions. Works with Claude Code, OpenClaw, Codex, Gemini, Hermes, Copilot, OpenCode + More
Agent-Reach
85.7kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu — one CLI, zero API fees.
Understand-Anything
84.3kGraphs that teach > graphs that impress. Turn any code into an interactive knowledge graph you can explore, search, and ask questions about. Works with Claude Code, Codex, Cursor, Copilot, Gemini CLI, and more.
headroom
73.9kCompress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.
Languages
Trust signals
From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.

