Headless Metabase MCP: API-key auth, no OAuth. 178 tools, toolsets, stdio or HTTP, all tiers.
Connect Runs on your machine
claude mcp add metabase-mcp -e METABASE_URL=<METABASE_URL> -e METABASE_API_KEY=<METABASE_API_KEY> -e METABASE_EMAIL=<METABASE_EMAIL> -e METABASE_PASSWORD=<METABASE_PASSWORD> -e METABASE_READ_ONLY_MODE=<METABASE_READ_ONLY_MODE> -e METABASE_TOOLSETS=<METABASE_TOOLSETS> -e METABASE_TOOLS_ENABLE=<METABASE_TOOLS_ENABLE> -e METABASE_TOOLS_DISABLE=<METABASE_TOOLS_DISABLE> -e METABASE_CUSTOM_HEADERS=<METABASE_CUSTOM_HEADERS> -- npx -y @serdnaley/[email protected]
{
"mcpServers": {
"metabase-mcp": {
"command": "npx",
"args": [
"-y",
"@serdnaley/[email protected]"
],
"env": {
"METABASE_URL": "<METABASE_URL>",
"METABASE_API_KEY": "<METABASE_API_KEY>",
"METABASE_EMAIL": "<METABASE_EMAIL>",
"METABASE_PASSWORD": "<METABASE_PASSWORD>",
"METABASE_READ_ONLY_MODE": "<METABASE_READ_ONLY_MODE>",
"METABASE_TOOLSETS": "<METABASE_TOOLSETS>",
"METABASE_TOOLS_ENABLE": "<METABASE_TOOLS_ENABLE>",
"METABASE_TOOLS_DISABLE": "<METABASE_TOOLS_DISABLE>",
"METABASE_CUSTOM_HEADERS": "<METABASE_CUSTOM_HEADERS>"
}
}
}
}
{
"mcpServers": {
"metabase-mcp": {
"command": "npx",
"args": [
"-y",
"@serdnaley/[email protected]"
],
"env": {
"METABASE_URL": "<METABASE_URL>",
"METABASE_API_KEY": "<METABASE_API_KEY>",
"METABASE_EMAIL": "<METABASE_EMAIL>",
"METABASE_PASSWORD": "<METABASE_PASSWORD>",
"METABASE_READ_ONLY_MODE": "<METABASE_READ_ONLY_MODE>",
"METABASE_TOOLSETS": "<METABASE_TOOLSETS>",
"METABASE_TOOLS_ENABLE": "<METABASE_TOOLS_ENABLE>",
"METABASE_TOOLS_DISABLE": "<METABASE_TOOLS_DISABLE>",
"METABASE_CUSTOM_HEADERS": "<METABASE_CUSTOM_HEADERS>"
}
}
}
}
{
"servers": {
"metabase-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@serdnaley/[email protected]"
],
"env": {
"METABASE_URL": "<METABASE_URL>",
"METABASE_API_KEY": "<METABASE_API_KEY>",
"METABASE_EMAIL": "<METABASE_EMAIL>",
"METABASE_PASSWORD": "<METABASE_PASSWORD>",
"METABASE_READ_ONLY_MODE": "<METABASE_READ_ONLY_MODE>",
"METABASE_TOOLSETS": "<METABASE_TOOLSETS>",
"METABASE_TOOLS_ENABLE": "<METABASE_TOOLS_ENABLE>",
"METABASE_TOOLS_DISABLE": "<METABASE_TOOLS_DISABLE>",
"METABASE_CUSTOM_HEADERS": "<METABASE_CUSTOM_HEADERS>"
}
}
}
}
Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.
Tools
This server runs locally, so its tools are listed by your MCP client once it starts.
Environment variables
| Name | Description |
|---|---|
METABASE_URLRequired | Metabase base URL, e.g. https://metabase.example.com |
METABASE_API_KEYOptional, secret | Metabase API key (or set METABASE_EMAIL + METABASE_PASSWORD) |
METABASE_EMAILOptional | Login email (alternative to an API key) |
METABASE_PASSWORDOptional, secret | Login password (alternative to an API key) |
METABASE_READ_ONLY_MODEOptional | true hides all write tools |
METABASE_TOOLSETSOptional | Comma list of toolsets or presets (all, query, content, admin) |
METABASE_TOOLS_ENABLEOptional | Extra tools to enable (names or globs) |
METABASE_TOOLS_DISABLEOptional | Tools to disable (names or globs); always wins |
METABASE_CUSTOM_HEADERSOptional, secret | Extra headers for every Metabase request (e.g. Cloudflare Access) |
Details
| Package | @serdnaley/[email protected] (NPM, stdio) |
| First published | 3 Nov 2026 |
| Last updated | 3 Nov 2026 |
| Registry name | io.github.Serdnaley/metabase-mcp |
More browser automation servers See all
Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.
