Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
AWS_PROFILENoAWS profile name for S3 authentication.
AWS_ACCESS_KEY_IDNoAWS access key ID for S3 authentication.
DUCKDB_MCP_TIMEOUTNoQuery timeout in seconds.120
DUCKDB_MCP_MAX_ROWSNoMaximum rows per result.500
DUCKDB_MCP_MAX_BYTESNoMaximum result text size in bytes (200 KB).200000
AWS_SECRET_ACCESS_KEYNoAWS secret access key for S3 authentication.

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

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
queryA

Run a read-only DuckDB SQL statement and return the rows as a markdown table.

Only a single SELECT (including WITH/DESCRIBE/SUMMARIZE/SHOW) or EXPLAIN statement is accepted; anything that writes data, files or settings is rejected. Read files by quoting their path in the FROM clause, e.g. SELECT region, sum(amount) FROM 'data/sales.parquet' GROUP BY 1.

Args: sql: The statement to run. max_rows: Row cap for this call (defaults to the server's limit).

describe_fileA

Return the column names and types of a data file, plus its row count.

Works for any path DuckDB can read -- csv, parquet, json/ndjson, xlsx, compressed variants, globs matching many files, http(s) URLs and s3 URIs.

Args: path: File path, glob or URL, e.g. 'data/sales_*.parquet'. include_row_count: Set False to skip counting rows on very large inputs.

preview_fileA

Show the first rows of a data file so you can see real values.

Args: path: File path, glob or URL. rows: How many rows to show (default 20).

list_filesA

List data files in a directory (local, or an s3:// prefix).

Args: path: Directory or bucket prefix to list. pattern: Glob pattern for the file name, e.g. '*.parquet'. recursive: Descend into subdirectories. data_files_only: Keep only extensions DuckDB can read; set False to see everything.

profile_columnsA

Profile a file's columns: null counts, approximate distinct counts, min/max and the most frequent values of low-cardinality columns.

This scans the whole file, so prefer describe_file when you only need types.

Args: path: File path, glob or URL. columns: Restrict to these columns (default: all). top_k: Number of most-frequent values to show; 0 to skip that pass.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.6/5.0

Scored across 5 tools

Disambiguation5/5

Each tool has a distinct, non-overlapping purpose: query executes SQL, describe_file returns schema, preview_file shows row samples, list_files enumerates files, and profile_columns computes statistics. No two tools could be confused for the same task.

Naming Consistency5/5

All tool names are lowercase snake_case and follow a clear verb-first pattern (query, describe_file, preview_file, list_files, profile_columns). The naming is uniform and predictable, aiding agent selection.

Tool Count5/5

Five tools is a well-scoped set for a read-only DuckDB MCP server. Each tool covers a necessary aspect of data exploration without bloat or redundancy.

Completeness5/5

The tool set provides a complete read-only data exploration workflow: discover files, inspect schemas, preview data, profile columns, and run arbitrary SQL queries. There are no obvious gaps or dead ends for its stated purpose.

Maintenance

ActivitySlowing
ResponsivenessNo issues