Berth
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| BERTH_BACKUP_DIR | No | Sandbox directory for backup and restore paths. All paths are validated to stay within this directory. | Current working directory |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| safety_set_modeB | Switch the safety mode. Accepts: "read-only", "write", or "admin". Returns the current mode after setting. |
| safety_get_modeA | Return the current safety mode without changing it. |
| healthA | Server health check. Returns version and status. |
| db_connectA | Connect to a database. Supported DSN formats:
Returns a connection_id used by all other tools. |
| db_queryA | Execute a SELECT query. Auto-adds LIMIT 1000 if no LIMIT clause present. |
| db_executeA | Execute INSERT/UPDATE/DELETE statements. Respects the current safety mode:
|
| db_schemaB | List tables, views, and indexes in the database. |
| db_describeB | Column details for a table: name, type, nullable, default, constraints. |
| db_relationshipsB | Foreign key relationships. Omit table to show all. |
| db_sizeC | Database and table sizes. |
| db_active_queriesC | Currently running queries (PostgreSQL only — pg_stat_activity). |
| db_explainB | Run EXPLAIN ANALYZE on a query and return the plan. |
| db_backupA | Create a database backup.
Paths are sandboxed to BERTH_BACKUP_DIR (default: cwd). |
| db_restoreA | Restore a database from a backup file. Requires admin mode and a confirmation token (destructive operation). Paths are sandboxed to BERTH_BACKUP_DIR (default: cwd). |
| generate_migrationA | Generate migration SQL by comparing two schemas. Two modes of operation: Mode 1 — Compare live database against target DDL:
Mode 2 — Compare two live databases:
Returns dialect-aware ALTER statements to migrate source -> target. Destructive operations (DROP TABLE, DROP COLUMN) are commented out for safety. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 15 tools
Every tool has a clearly distinct purpose with no ambiguity. Tools like db_query (SELECT), db_execute (INSERT/UPDATE/DELETE), db_backup, db_restore, db_schema, and db_relationships each handle specific database operations without overlap. Even conceptually similar tools like db_active_queries and db_explain are differentiated by their focus on monitoring vs. query optimization.
The naming follows a highly consistent pattern throughout. All database-related tools use the 'db_' prefix followed by a descriptive verb or noun (e.g., db_query, db_backup, db_schema), while non-database tools like health, safety_get_mode, and safety_set_mode follow a clear, readable convention. There are no deviations in style or structure.
With 15 tools, the set is well-scoped for a database management server. Each tool earns its place by covering essential operations such as querying, schema inspection, backups, migrations, and safety controls. The count is neither too sparse nor bloated, aligning perfectly with the domain's complexity.
The tool surface provides complete CRUD and lifecycle coverage for database management. It includes query execution (db_query, db_execute), schema operations (db_schema, db_describe), maintenance (db_backup, db_restore), optimization (db_explain), and safety controls (safety_set_mode). There are no obvious gaps, and tools like generate_migration add advanced functionality without dead ends.