Warehouse MCP logo

Warehouse MCP

Read-only MCP access to Postgres, Oracle, Snowflake, BigQuery, Redshift, DuckDB, and MotherDuck warehouses.

Install Warehouse MCP

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "warehouse-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "warehouse-mcp@latest"
      ],
      "env": {
        "WAREHOUSE_TYPE": "YOUR_VALUE_HERE",
        "MCP_API_KEYS": "YOUR_VALUE_HERE"
      }
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Values are written into the snippet above so you can paste it as is. They never leave your browser.

We couldn’t confirm it starts correctly

We ran the install command but it didn't respond within our test window — this can mean a slow first-time install rather than a real problem.

npx -y warehouse-mcp@latest

No response to initialize.

This is an experimental automated check and can have false negatives — missing environment variables, a slow cold install, etc. It doesn’t necessarily mean something’s wrong. Last checked .

Overview

The warehouse-mcp MCP server exposes read-only warehouse queries, catalog discovery, profiling, relationship inspection, time-series bucketing, and semantic documentation through MCP. It connects to Postgres, Oracle, Snowflake, BigQuery, Amazon Redshift, DuckDB, and MotherDuck using warehouse-specific adapters. Role tiers restrict access from semantic-only documentation through unrestricted read access, with optional native database-role impersonation for Postgres and Redshift. Reach for it when an agent needs governed access to warehouse metadata or data without write operations.

Use cases

  • Query warehouse data with read-only SELECT access
  • Inspect schemas, tables, columns, views, and foreign keys
  • Profile tables before running larger scans
  • Provide agents with governed semantic documentation
  • Apply warehouse-native roles for Postgres and Redshift access

Key features

  • Read-only, dialect-aware warehouse queries
  • Five-tier role-based access control
  • Support for seven warehouse systems
  • Catalog, profiling, and relationship discovery tools
  • Optional semantic metadata and per-session visibility
  • JSONL audit logging and optional output PII masking

Tools9

What Warehouse MCP lets your agent do. Expand a tool for its parameters.

Self-reported~167 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked

Recent health check succeeded.

9/9 checks healthy over the last 62d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 1d ago via OSV.dev · warehouse-mcp@latest (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

npm downloads184Package downloads in the last 30 days.
Last commit4mo agoMost recent push to the default branch.
Install checkInconclusiveDidn't respond in our test window — often a slow first install.
Tools exposed9Callable tools this server registers over MCP.
Directory activity5 viewsConfig copies, upvotes, and views on AllMCPs.

How Warehouse MCP works

What the warehouse-mcp MCP server does

The warehouse-mcp MCP server gives MCP-compatible clients a read-only interface to supported analytical databases. It can run validated SELECT statements, inspect catalogs, examine views and foreign-key relationships, profile columns, search text values, and generate dialect-aware time buckets. The supported systems are Postgres 12+, Oracle 12c+ in Thin mode, Amazon Redshift, Snowflake with key-pair authentication, Google BigQuery, DuckDB, and MotherDuck.

Its semantic layer is separate from warehouse queries. Glossary terms, schema descriptions, table documentation, ownership, refresh details, and column metadata can be served from in-memory configuration without warehouse I/O. A per-session setting controls whether semantic resources are visible.

How it works

Access is assigned through five roles. semantic_only exposes only documentation lookups, while metadata_only adds catalog discovery without row access. reader_restricted permits aggregates, samples, and time-series operations but not arbitrary SELECT statements. reader adds general queries and literal searches, and admin exposes the full current tool set.

API keys use the form key:role, with optional directives for a warehouse role and semantic visibility. On Postgres and Redshift, the set_role option can issue SET ROLE, allowing native row-level security, column-level security, or masking policies to remain enforced by the warehouse. Requests and responses can be recorded in a JSONL audit log, and output PII masking is available as an optional setting.

Setup and configuration

The warehouse-mcp MCP server can run from the published Docker image or through npx. Docker Compose provides a local demonstration with seeded Postgres data and exposes the service on port 3001. For another warehouse, set WAREHOUSE_TYPE and provide the credentials required by that adapter. The Docker image includes all listed adapters.

Postgres and Redshift use database connection variables. Oracle uses a user, password, and connect string without requiring Instant Client. Snowflake uses a mounted private-key file along with account, user, warehouse, and database settings. BigQuery uses mounted service-account credentials and a project identifier. DuckDB accepts a local file or :memory: path, while MotherDuck uses an md: path and token.

MCP clients can connect to the HTTP endpoint through mcp-remote, passing an API key as a Bearer authorization header. The selected key determines which tools and semantic resources the session can see. The documentation recommends environment files or a secrets manager instead of putting database passwords directly in shell commands.

Tools and capabilities

The available operations cover several workflows:

  • Browse schemas and tables, describe tables, find columns, and inspect declared foreign keys.
  • Read view SQL definitions to understand embedded business logic.
  • Sample tables, count rows, calculate column statistics, and inspect top values before larger scans.
  • Run read-only, dialect-aware SELECT statements for roles that permit them.
  • Search for a literal across text columns in a table.
  • Group timestamps by hour, day, week, month, quarter, or year using warehouse-specific SQL.
  • Look up glossary terms, schema documentation, and full table documentation from the semantic layer.

Limitations and notes

Only read operations are currently exposed. The admin role is described as reserving future write tools, but no write capability is available in the listed tool set. Databricks SQL is not included in the current warehouse list; it is described as a future fast-follow.

Feature support depends on the selected adapter and its authentication requirements. Snowflake requires key-pair authentication, Oracle runs in Thin mode, and MotherDuck requires its cloud connection format and token. Native role impersonation is documented for Postgres and Redshift, not for every supported warehouse. The server is identified as version 0.4.x and production-ready for its v1 warehouse list.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Warehouse MCP

warehouse-mcp is an MCP server that connects AI clients to Postgres, Oracle, Snowflake, BigQuery, Amazon Redshift, DuckDB, and MotherDuck. Its main tools support read-only SQL, catalog browsing, column and foreign-key discovery, view inspection, data profiling, time-series grouping, text search, and semantic glossary and table-documentation lookups.

Run it with Docker or npx. Docker Compose starts a local seeded Postgres demo, while the Docker image can connect to another supported warehouse using WAREHOUSE_TYPE and adapter-specific credentials. MCP clients can reach the HTTP endpoint through mcp-remote with a Bearer API key.

warehouse-mcp supports Postgres 12+, Oracle 12c+ in Thin mode, Amazon Redshift, Snowflake, Google BigQuery, DuckDB, and MotherDuck. Snowflake uses key-pair authentication, and DuckDB can use a local file or in-memory database.

Assign each API key one of five roles: semantic_only, metadata_only, reader_restricted, reader, or admin. The roles progressively allow documentation, metadata, restricted analysis, general read queries, and the complete current read-only tool set. Postgres and Redshift keys can also set a native warehouse role.

Yes. The repository includes a Cursor demonstration and an HTTP connection example using mcp-remote. Configure the client with the server endpoint and a Bearer token whose role determines the available tools and semantic resources.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewWarehouse MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/warehouse-mcp?style=directory)](https://allmcps.com/mcp/warehouse-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/warehouse-mcp"><img src="https://allmcps.com/api/badge/warehouse-mcp?style=directory" alt="Warehouse MCP on AllMCPs" /></a>