whodb-cli
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| whodb_auditA | Run data-quality checks on one schema or table. Best for: Finding null-rate spikes, missing primary keys, low-cardinality issues, duplicate rows, and orphaned foreign keys. Not recommended for: Replacing a full observability or data-governance system. Common mistakes: Forgetting to scope the audit to one table when you only need one table. Usage Example: Returns: Audit results per table, including issue summaries and the underlying table/column findings. |
| whodb_columnsA | Describe the columns in a database table. Best for: Understanding table structure before writing queries; discovering primary keys and foreign key relationships. Not recommended for: When you need actual data (use whodb_query with SELECT). Common mistakes: Forgetting to specify the table name; not using this before writing INSERT/UPDATE queries. Usage Example: Returns: Array of column objects with:
Pro tip: Always call this before writing INSERT queries to ensure correct column names and types. |
| whodb_confirmA | Confirm and execute a pending write operation. Best for: Executing write queries after user approval in confirm-writes mode. Not recommended for: Read queries (they execute immediately without confirmation). Common mistakes: Using an expired token (tokens expire after 5 minutes); not explaining the query to the user before confirming. Usage Example: Workflow:
Token behavior: Tokens are valid for 5 minutes (expiry time is in the response). If confirmation fails due to a connection error or timeout, you can retry with the same token — it is only consumed after successful execution. Use whodb_pending to list active tokens if you lose track. |
| whodb_connectionsA | List all available database connections. Best for: Discovering what databases are configured; choosing which connection to use. Not recommended for: When you already know the connection name. Common mistakes: Not calling this first when connection name is unknown. Usage Example: Returns: Array of connection objects with:
Note: If only one connection exists, other tools will use it automatically when connection is omitted. |
| whodb_diffA | Compare schema metadata between two database connections. Best for: Spotting drift between environments; comparing staging vs production; reviewing storage-unit, column, and relationship changes. Not recommended for: Row-level data comparison. Common mistakes: Forgetting to specify both connections; comparing the same connection and schema without overrides. Usage Example: Returns: A structured schema diff with storage-unit, column, and relationship summaries plus per-object changes. |
| whodb_erdA | Load backend graph metadata for a schema or database. Best for: Understanding how tables relate before writing joins; inspecting primary/foreign key relationships programmatically. Not recommended for: Query execution. Common mistakes: Expecting row data instead of metadata. Usage Example: Returns: Storage units with columns plus normalized relationship edges sourced from backend graph metadata. |
| whodb_explainA | Run EXPLAIN for a SQL query using the database's native explain mode. Best for: Understanding query plans; checking whether a query will scan too much data before you run the real query. Not recommended for: Fetching actual data (use whodb_query for that). Common mistakes: Passing a non-SQL string; forgetting that EXPLAIN output is database-specific. Usage Example: Returns: The database-native EXPLAIN output with columns and rows, ready for follow-up analysis. |
| whodb_pendingA | List all pending write confirmations that are waiting for approval. Best for: Recovering lost confirmation tokens; checking what operations are pending. Not recommended for: Anything else — this is a utility tool for the confirm-writes workflow. Usage Example: Returns: Array of pending confirmations with token, query, connection, and expiry time. Important: Tokens are single-use and expire after 60 seconds. If expired, re-submit the original query to get a new token. |
| whodb_queryA | Execute a SQL query against a database connection. Best for: Running SQL SELECT, INSERT, UPDATE, DELETE statements when you need to query or modify data. Not recommended for: Schema exploration (use whodb_schemas, whodb_tables, whodb_columns instead for faster, structured results). Common mistakes: Running queries without specifying connection when multiple exist; using SELECT * instead of specific columns; forgetting LIMIT on large tables. Usage Example (simple query): Usage Example (parameterized query - RECOMMENDED for user input): Placeholder syntax by database: PostgreSQL uses $1, $2, $3; MySQL/SQLite/DuckDB/ClickHouse use ? Best practices:
Security Mode: CONFIRM-WRITES (Default) Write operations (INSERT, UPDATE, DELETE, etc.) require user confirmation. When you submit a write query:
|
| whodb_schemasA | List all schemas (namespaces) in a database. Best for: Discovering what schemas exist in a database; understanding database organization before exploring tables. Not recommended for: When you already know the schema name (proceed directly to whodb_tables). Common mistakes: Calling this repeatedly - schema lists rarely change during a session. Usage Example: Returns: Array of schema names (e.g., ["public", "analytics", "audit"]). Typical workflow: whodb_schemas → whodb_tables(include_columns=true) → whodb_query Optional parameter: Set "include_tables": true to also return all tables within each schema in a single call. This populates a "details" array with schema names and their tables, saving you a separate whodb_tables call per schema. |
| whodb_suggestionsA | Load backend-generated starter queries for a schema or database. Best for: Quickly orienting yourself in an unfamiliar database; suggesting first queries for exploration. Not recommended for: Exhaustive SQL tutoring. Common mistakes: Treating the suggestions as guaranteed-valid business logic rather than onboarding hints. Usage Example: Returns: A short list of backend-generated query suggestions derived from the actual storage units in the resolved schema. |
| whodb_tablesA | List all tables in a database schema. Best for: Discovering what tables exist in a schema; getting table metadata like row counts. Not recommended for: When you already know the table name (proceed directly to whodb_columns or whodb_query). Common mistakes: Not specifying schema when the database has multiple schemas with same-named tables. Usage Example: Returns: Array of table objects with name and attributes (row count, size, etc.). Note: If schema is omitted, uses the connection's default schema or the first available schema. Optional parameter: Set "include_columns": true to also return column details (name, type, primary key, foreign keys) for each table. This saves you separate whodb_columns calls and gives you everything needed to write queries in a single round-trip. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| query_help | Get guidance on writing SQL queries with WhoDB, including best practices and examples. |
| schema_exploration_help | Learn how to effectively explore database schemas, tables, and relationships using WhoDB tools. |
| workflow_help | Get guidance on common database workflows like data analysis, debugging queries, or understanding table relationships. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| agent-schema | Machine-readable WhoDB agent capability manifest |
| connections | List of available database connections |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/clidey/whodb'
If you have feedback or need assistance with the MCP directory API, please join our Discord server