Metabase MCP Server

Query Metabase dashboards and databases directly from AI assistants.

Data last scanned today · Reviewed yesterday

311 dangerous tool6 tools150JavaScript

Overview

This server bridges your AI assistant with the Metabase API, allowing models to programmatically interact with your business intelligence data. Users can retrieve structured information about dashboards, saved questions, and connected databases, or execute ad-hoc SQL queries directly within the chat interface. The implementation utilizes TypeScript to manage API communications. It provides specialized tools to list resources or run queries, which return results in a JSON format suitable for AI processing. Integration is configured via environment variables, supporting either API key authentication or username and password credentials.

Our verdict

This server carries a high risk level with a security score of 16/100, primarily due to the lack of any authentication mechanism within the server itself, meaning anyone with access to the configuration can use it. It is community-maintained rather than official, and the absence of a defined license creates legal ambiguity regarding its use. Because it lacks access controls and clear usage terms, it should be treated with extreme caution and is not recommended for environments where sensitive data exposure is a concern.

  • Provides direct tools for executing SQL queries on Metabase databases.
  • Supports list and retrieval operations for dashboards and saved cards.
  • Maintained by 12 contributors, helping manage project development.
  • Minimal dependency footprint with only 3 direct dependencies.
  • Total lack of authentication enables anyone with config access.
  • No license detected, making legal usage terms unclear.
  • Not maintained by the official Metabase vendor.

Setup

Claude Desktop
{
  "mcpServers": {
    "metabase-server": {
      "args": [
        "-y",
        "@imlewc/metabase-server"
      ],
      "command": "npx"
    }
  }
}

Paste into ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows), then restart Claude Desktop. Some servers require API keys or tokens as environment variables — check the project's README and add an "env" object if needed.

  • No read-only mode — running this grants full read/write access.
  • No built-in authentication — anyone with access to this config can invoke every tool it exposes.

Tools

ToolDescriptionRisk
list_dashboardsList all dashboards in Metabaselow
list_cardsList all questions/cards in Metabaselow
list_databasesList all databases in Metabaselow
execute_cardExecute a Metabase question/card and get resultslow
get_dashboard_cardsGet all cards in a dashboardlow
execute_queryExecute a SQL query against a Metabase databasehigh

Compatibility

ClientLocalDockerRemoteRead-only
ChatGPT
Claude Desktop
Cursor
VS Code
Windsurf

Frequently asked questions

What authentication methods does this server support?

The server supports authentication via a Metabase API key, which is the preferred method, or via a username and password as a fallback.

Can I use both an API key and username/password credentials?

Yes, but the server prioritizes the API key. If METABASE_API_KEY is set, the server will use it and ignore any provided username and password credentials.

How can I access Metabase content through this server?

You can list and access dashboards, questions (cards), and databases as resources using metabase:// URIs, or execute specific queries and cards using the provided tool set.

Where should I check for errors if the server fails to connect?

You can examine the logs by running the command cat ~/.claude/debug/latest | grep -i metabase to identify connectivity issues.

Is there a built-in way to debug the server connection?

Yes, you can use the MCP Inspector by running the npm run inspector command, which provides a URL to access debugging tools in your browser.

Alternatives

Badge

Metabase MCP Server security score, rated on RepoAI

Maintain this server? Add the live badge to your README.