Bollard MCP
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
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": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| connect_databaseC | Connect to a database. |
| disconnectB | Disconnect from a database. |
| list_connectionsA | List all currently active database connections. Returns alias, dialect, permission mode, and connection time. |
| reconnect_savedA | Reconnect to a previously saved connection from the OS Keyring. |
| list_tablesA | List all tables in the connected database with row counts and sizes. The editor AI uses this to understand the database structure before generating queries. Schema is served from cache when available. |
| describe_tableA | Show full column definitions, types, constraints, and indexes for a table. Includes: column names, data types, nullable, primary key, unique, foreign keys. The editor AI reads this to understand the exact schema before generating queries. |
| get_sample_dataA | Preview a few rows from a table to understand its data shape. Useful for the editor AI to understand the actual values in the database before generating queries (e.g., what status values exist, date formats, etc.) |
| refresh_schemaA | Force a schema cache refresh for a connection. Call this after CREATE TABLE, ALTER TABLE, or any DDL operation to ensure the AI has up-to-date schema context. |
| preview_queryA | Dry-run a query through the full safety + intent pipeline. Returns:
For bare SELECT * queries on large tables, Bollard will automatically redirect to profile_table to give the AI richer context with fewer tokens. The editor AI should call this before execute_query for any non-trivial query. |
| execute_queryC | Execute a SQL query through the risk-tiered safety pipeline. |
| profile_tableA | Generate a statistical profile of a database table. All aggregation is performed directly in the database via SQL queries. No rows are transferred to local memory. Returns a compact Markdown summary suitable for AI context (< 150 tokens overhead per column). Includes for every column:
|
| log_correctionA | Log a query correction for future AI context. When the editor AI generates a wrong query and the user corrects it, log the correction here. Bollard persists it and exposes it via the bollard://corrections/{alias} MCP Resource, so the AI automatically learns from past mistakes without the user repeating themselves. |
| get_query_historyA | Return recent query history for a connection. Useful for the editor AI to understand what has been executed recently, especially when the user says "run that again" or "fix the last query." |
| get_correctionsA | Return all logged corrections for a connection. The editor AI reads this via the bollard://corrections/{alias} MCP Resource automatically. Call this tool directly to inspect them. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| connections_resource | All active database connections. Read by the AI to know what's available. |
TDQS
Scored across 14 tools
Each tool has a clearly distinct purpose: connection lifecycle (connect/disconnect/list/reconnect), schema introspection (list/describe/sample/profile), query execution (preview/execute), and learning (log/get corrections and history). No two tools overlap in function, and descriptions reinforce the boundaries.
Tool names follow a consistent snake_case verb_noun pattern (e.g., list_tables, describe_table, execute_query), with only minor deviation such as 'disconnect' missing an explicit noun. The verbs are predictable and the pattern is maintainable.
With 14 tools, the server is well-scoped for a database assistant, covering connection management, schema exploration, query execution, and learning features without bloat. Each tool appears to serve a distinct need, and the count fits comfortably within the ideal range.
The tool set covers the core workflow: connect to a database, explore schema, preview and execute queries, and log/retrieve corrections. Minor gaps exist around explicit saved-connection management (e.g., save/delete), but the core AI-assisted querying loop is well supported.