What it does
The server exposes a single query tool that executes SQL statements against a local DuckDB database. DuckDB is an in-process analytical SQL engine optimized for interactive analysis of local data. It can query CSV and Parquet files directly without importing, join against structured datasets, and run aggregations entirely within a single process. The query tool accepts any valid DuckDB SQL—SELECT, CREATE TABLE, INSERT, UPDATE, DELETE—and returns results as plain text. The server supports a read-only mode that enforces DuckDB's native write protection, preventing the LLM from performing mutations.
Who it's for
Data analysts and engineers who want to ground Claude's reasoning in local structured data without cloud dependencies. Teams working with embedded analytics, local databases, or file-based datasets. Developers prototyping data analysis workflows or building reasoning chains that combine Claude's language capabilities with local SQL execution.
Common use cases
- Query CSV or Parquet files directly in natural language without a separate import step
- Explore schema and run analytical queries on existing DuckDB databases
- Analyze local datasets in read-only mode to prevent accidental data mutations
- Build reasoning chains where Claude generates and executes SQL queries iteratively
- Prototype and validate complex queries or data transformations locally before production deployment
Setup pitfalls
- Read-only mode requires the database file to exist before startup; it will not be created if
--readonlyis specified - The
--db-pathparameter is required; ensure the path and parent directory exist or can be created - Using
--keep-connectionholds an exclusive lock on the database file, preventing concurrent access from other processes - Last active ~11 months ago; verify compatibility with your installed DuckDB version