/setup
Connect DBHub to a database or fix a failing connection; also covers changing the DSN, write access, or multiple databases.
$ npx -y skills add bytebase/dbhub --skill setup --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/setup
Context preview
The summary Claude sees to decide when to auto-load this skill.
Connect DBHub to a database or fix a failing connection; also covers changing the DSN, write access, or multiple databases.
SKILL.md
setup.SKILL.mddescription: Connect DBHub to a database or fix a failing connection; also covers changing the DSN, write access, or multiple databases.
DBHub Setup
The database connection string (DSN) is entered in the plugin's configuration dialog and stored in Claude Code's secure storage. This plugin is read-only and caps results at 1000 rows.
Connecting or changing the database
1. **Help the user build their DSN** if they don't have one:
- PostgreSQL: `postgres://user:password@localhost:5432/dbname`
- MySQL: `mysql://user:password@localhost:3306/dbname`
- MariaDB: `mariadb://user:password@localhost:3306/dbname`
- SQL Server: `sqlserver://user:password@localhost:1433/dbname`
- SQLite: `sqlite:///absolute/path/to/database.db` (no credentials)
Append `?sslmode=require` for SSL (`sslmode=disable` for local databases). URL-encode special characters in the password. Recommend a least-privilege, read-only database account. Full DSN options (SQL Server named instances/NTLM, PostgreSQL cert verification): https://dbhub.ai/installation
2. **Point them at the config dialog:** run `/plugin`, open **dbhub** → configuration, and set the connection string there. The user should not paste the password into the chat.
3. **Reconnect:** run `/mcp` and reconnect the `dbhub` server (or restart Claude Code).
Troubleshooting a failing connection
- Test the DSN outside the plugin (redact the password in anything shown in chat):
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"setup-check","version":"0"}}}' | DBHUB_DSN='<dsn>' npx -y @bytebase/dbhub@latest --transport stdio --config <plugin-root>/dbhub.tomlA JSON `initialize` response means the config parsed and the server started; a connection error points at host/port/credentials/SSL.
- Common causes: database unreachable from this machine (host/port, VPN, firewall), wrong `sslmode`, un-encoded special characters in the password, a SQLite path that isn't absolute.
- If the server dies instantly with `sh: dbhub: command not found`, the npx cache entry is corrupted (concurrent npx runs can race during install). Find and remove the entry for `@bytebase/dbhub` under `~/.npm/_npx/*/package.json`, then reconnect — npx will reinstall it cleanly.
- Requires Node.js >= 22.5.0 (`node --version`).
When this plugin isn't enough
The plugin covers one database, read-only. For write access, multiple databases, SSH tunnels, or custom tools, register DBHub directly with your own TOML config:
claude mcp add dbhub -- npx -y @bytebase/dbhub@latest --transport stdio --config /path/to/dbhub.toml
Offer to write that TOML for the user — format reference: https://dbhub.ai/config/toml. Suggest disabling this plugin's server afterwards to avoid two overlapping DBHub instances.
Read more
description: Connect DBHub to a database or fix a failing connection; also covers changing the DSN, write access, or multiple databases.
DBHub Setup
The database connection string (DSN) is entered in the plugin's configuration dialog and stored in Claude Code's secure storage. This plugin is read-only and caps results at 1000 rows.
Connecting or changing the database
1. **Help the user build their DSN** if they don't have one:
- PostgreSQL: `postgres://user:password@localhost:5432/dbname`
- MySQL: `mysql://user:password@localhost:3306/dbname`
- MariaDB: `mariadb://user:password@localhost:3306/dbname`
- SQL Server: `sqlserver://user:password@localhost:1433/dbname`
- SQLite: `sqlite:///absolute/path/to/database.db` (no credentials)
Append `?sslmode=require` for SSL (`sslmode=disable` for local databases). URL-encode special characters in the password. Recommend a least-privilege, read-only database account. Full DSN options (SQL Server named instances/NTLM, PostgreSQL cert verification): https://dbhub.ai/installation
2. **Point them at the config dialog:** run `/plugin`, open **dbhub** → configuration, and set the connection string there. The user should not paste the password into the chat.
3. **Reconnect:** run `/mcp` and reconnect the `dbhub` server (or restart Claude Code).
Troubleshooting a failing connection
- Test the DSN outside the plugin (redact the password in anything shown in chat):
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"setup-check","version":"0"}}}' | DBHUB_DSN='<dsn>' npx -y @bytebase/dbhub@latest --transport stdio --config <plugin-root>/dbhub.tomlA JSON `initialize` response means the config parsed and the server started; a connection error points at host/port/credentials/SSL.
- Common causes: database unreachable from this machine (host/port, VPN, firewall), wrong `sslmode`, un-encoded special characters in the password, a SQLite path that isn't absolute.
- If the server dies instantly with `sh: dbhub: command not found`, the npx cache entry is corrupted (concurrent npx runs can race during install). Find and remove the entry for `@bytebase/dbhub` under `~/.npm/_npx/*/package.json`, then reconnect — npx will reinstall it cleanly.
- Requires Node.js >= 22.5.0 (`node --version`).
When this plugin isn't enough
The plugin covers one database, read-only. For write access, multiple databases, SSH tunnels, or custom tools, register DBHub directly with your own TOML config:
claude mcp add dbhub -- npx -y @bytebase/dbhub@latest --transport stdio --config /path/to/dbhub.toml
Offer to write that TOML for the user — format reference: https://dbhub.ai/config/toml. Suggest disabling this plugin's server afterwards to avoid two overlapping DBHub instances.
Minimal database MCP server for Postgres, MySQL, SQL Server, MariaDB, SQLite.
Repo: bytebase/dbhub
Other skills on dbhub.
- /fix-bug
Use when given a GitHub issue URL or number to investigate and implement a fix. Triggers on "fix issue", "fix bug", "fix #123", GitHub issue URLs, or any request to resolve a reported problem from a GitHub issue. Also triggers when asked to investigate errors, diagnose failures,
Open skill - /testing
Run and troubleshoot tests for DBHub, including unit tests, integration tests with Testcontainers, and database-specific tests. Use when asked to run tests, fix test failures, debug integration tests, troubleshoot Docker/database container issues, or add new tests. Also use when
Open skill - /explore
Explore a database schema token-efficiently via the DBHub tools; use before writing SQL against a schema you haven't seen.
Open skill - /dbhub
Guide for querying databases through DBHub MCP server. Use this skill whenever you need to explore database schemas, inspect tables, or run SQL queries via DBHub's MCP tools (search_objects, execute_sql, and the opt-in explain_sql and health_check). Activates on any database
Open skill

