A Model Context Protocol (MCP) server implementation for DuckDB, providing database interaction capabilities through MCP tools. It would be interesting to have LLM analyze it. DuckDB is suitable for local analysis.
This server enables interaction with a DuckDB database through the Model Context Protocol, allowing for database operations like querying, table creation, and schema inspection.
Currently, no custom resources are implemented.
Currently, no custom prompts are implemented.
The server implements the following database interaction tools:
read-query: Execute SELECT queries to read data from the database
query
(string) - Must be a SELECT statementwrite-query: Execute INSERT, UPDATE, or DELETE queries to modify data
query
(string) - Must be a non-SELECT statementcreate-table: Create new tables in the database
query
(string) - Must be a CREATE TABLE statementlist-tables: List all tables in the database
information_schema
describe-table: Get schema information for a specific table
table_name
(string) - Name of the table to describeNote: When the server is running in readonly
mode, the following tools are disabled to prevent any write operations:
This ensures that the Language Model (LLM) cannot perform any modifications to the database, maintaining data integrity and preventing unintended changes.
read_only=True
, preventing any write operations.To install DuckDB Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install mcp-server-duckdb --client claude
Configure the MCP server in Claude Desktop's configuration file:
Location: ~/Library/Application Support/Claude/claude_desktop_config.json
Location: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"duckdb": {
"command": "uvx",
"args": [
"mcp-server-duckdb",
"--db-path",
"~/mcp-server-duckdb/data/data.db"
]
}
}
}
~/mcp-server-duckdb/data/data.db
should be replaced with the actual path to the DuckDB database file.uv
package managerDebugging MCP servers can be challenging due to their stdio-based communication. We recommend using the MCP Inspector for the best debugging experience.
npx @modelcontextprotocol/inspector uv --directory ~/mcp-server-duckdb run mcp-server-duckdb
The inspector provides visibility into:
{
"mcpServers": {
"duckdb": {
"env": {},
"args": [
"mcp-server-duckdb",
"--db-path",
"~/mcp-server-duckdb/data/data.db"
],
"command": "uvx"
}
}
}
Seamless access to top MCP servers powering the future of AI integration.