mcp-server-duckdb
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| db-path | Yes | Path to the DuckDB database file | |
| readonly | No | Run server in read-only mode. Set to 'true' to enable. | false |
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 |
|---|---|
| queryC | Execute a query on the DuckDB database |
| is_table_existsA | Check if a table exists in the DuckDB database |
| show_tablesB | Show all tables in the DuckDB database |
| describe_tableB | Describe a table in the DuckDB database |
| inspect_queryC | Inspect a query in the DuckDB database |
| create_table_from_pathC | Create a table from a file path |
| create_table_from_urlC | Create a table from a URL |
| create_table_from_s3B | Create a table from an S3 path |
| create_table_from_csvA | Create a table from a CSV file |
| summarize_tableC | Get summary statistics for a table |
| export_table_to_pathC | Export a table to a file |
| smart_load_multiple_csv_filesA | Load multiple CSV files and intelligently name the tables based on content analysis |
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 12 tools
The create_table_from_* family is distinguished by source type (path, URL, S3, CSV), though path and CSV may overlap since a CSV is a file path. query and inspect_query are distinct (execution vs inspection), and the rest target different resources.
Most tools follow a verb_noun pattern in snake_case, but there are deviations: query is just a verb, is_table_exists uses a question-style, and smart_load_multiple_csv_files breaks the create_table_from_* convention despite similar CSV loading.
Twelve tools is well within the recommended range and covers a focused set of database operations: table creation from various sources, querying, inspection, and metadata. Each tool appears purposeful.
The set covers loading, querying, describing, listing, and exporting tables. Missing explicit drop/alter operations, but the query tool can execute any SQL, mitigating this gap. Minor gap: no batch export or schema listing beyond describe.