The DuckDB-distributed community extension `duckdb_mcp` embeds MCP client and server capabilities directly inside DuckDB. Installers load it via `INSTALL duckdb_mcp FROM community` followed by `LOAD duckdb_mcp`, after which SQL can attach remote MCP servers (stdio/TCP/WebSocket transports), enumerate resources (`mcp_list_resources`), invoke remote tools (`mcp_call_tool`), and wrap responses with `read_csv`/`read_json`/`read_parquet` URIs routed through `mcp://`. In reverse direction, DuckDB can publish tables, queries, and execution-bound tools (`mcp_publish_table`, `mcp_publish_query`, `mcp_publish_execution_tool`) while `mcp_server_start` exposes them to external MCP-compatible clients.
Use cases
- Federating MCP-accessible CSV/JSON/Parquet resources through familiar DuckDB SQL ergonomics
- Publishing deterministic SQL-backed tools agents can orchestrate via MCP servers launched from DuckDB
- Prototyping database-aware agents that need typed tabular pipelines without an extra microservice shim
- Applying allowlists (`allowed_mcp_commands`, `allowed_mcp_urls`) before widening production exposure
- Pairing exploratory analytics workloads with MCP remote tools for preprocessing or enrichment
Key features
- Claude Desktop
- Cursor
- Codex
Frequently Asked Questions
- Who maintains this extension?
- DuckDB’s community-extensions catalog credits maintainer teaguesterling with source hosted on GitHub; it is not the same artifact as Neon or Qdrant standalone MCP binaries.
- How do MCP security knobs work?
- The catalog documents global settings (`allowed_mcp_commands`, `allowed_mcp_urls`, `mcp_lock_servers`, `mcp_disable_serving`, logging paths) alongside development vs production hardening narratives.
- Can DuckDB operate only as client or server?
- Yes—the extension exposes dual modes plus introspection helpers such as `mcp_tools()`, `mcp_resources()`, and `mcp_server_config()` introduced in newer releases documented on the DuckDB extensions page.
Related
Related
3 Indexed items
ClickHouse MCP Server
The open-source ClickHouse MCP server (PyPI package `mcp-clickhouse`, repository ClickHouse/mcp-clickhouse) exposes MCP tools such as `run_query`, `list_databases`, and paginated `list_tables` against ClickHouse clusters, defaulting to read-only SQL unless `CLICKHOUSE_ALLOW_WRITE_ACCESS` is enabled. Optional chDB extras add `run_chdb_select_query` for embedded queries over files and URLs. HTTP/SSE transports require authentication via `CLICKHOUSE_MCP_AUTH_TOKEN`, FastMCP OAuth/OIDC providers, or explicit `CLICKHOUSE_MCP_AUTH_DISABLED=true` for local dev; a `/health` endpoint supports orchestrator probes without credentials per README guidance.
MotherDuck MCP Server
MotherDuck documents a remote Model Context Protocol server at motherduck.com/docs/sql-reference/mcp hosted at `https://api.motherduck.com/mcp` with OAuth (or Bearer token) and read-write SQL access to MotherDuck cloud databases. Tools include `list_databases`, `list_tables`, `list_columns`, `search_catalog`, `query`, `query_rw`, `ask_docs_question`, Dive tools (`list_dives`, `read_dive`, `view_dive`, `save_dive`, etc.), and Flight scheduling tools (`list_flights`, `create_flight`, `run_flight`, etc.) per MotherDuck MCP docs. For local DuckDB files or custom configs, MotherDuck points to the open-source `mcp-server-motherduck` package (`uvx mcp-server-motherduck --db-path md:`) on github.com/motherduckdb/mcp-server-motherduck.
BigQuery MCP Server
Google Cloud documents a remote BigQuery Model Context Protocol server at docs.cloud.google.com/bigquery/docs/use-bigquery-mcp, enabled when the BigQuery API is enabled. Connect MCP clients to the managed HTTP endpoint `https://bigquery.googleapis.com/mcp` with OAuth 2.0 and IAM (API keys are not accepted). Documented IAM roles include MCP Tool User (`roles/mcp.toolUser`), BigQuery Job User (`roles/bigquery.jobUser`), and BigQuery Data Viewer (`roles/bigquery.dataViewer`). Tools include `execute_sql` and `execute_sql_readonly` per the use guide; `execute_sql_readonly` allows only read-only operations while `execute_sql` is the sole non-read-only tool. Limitations documented: query processing capped at three minutes by default, results limited to 3,000 rows, and Google Drive external tables unsupported for those SQL tools.