Sandbox
@enessari/metabase-ai-assistant

MCP server for Metabase in Claude and Cursor

Metabase AI Assistant exposes Metabase through MCP so agents can query data, create cards, manage dashboards, and work with dbt-linked metadata. It is built around a large tool set, with server code in `src/` and client setup examples for Claude Desktop and Cursor.

49 stars10 forksJavaScriptUpdated 14d ago
Who it's for

Builders who want an agent to query Metabase, create dashboards, and automate BI tasks.

What it delivers

You can have an agent run Metabase workflows instead of switching between your editor and BI UI.

What it does

Metabase tool set

Provides 150+ MCP tools for SQL, cards, dashboards, collections, users, and actions.

AI SQL execution and repair

Runs SQL and retries with automated fixes for common syntax and dialect errors.

Dashboard automation

Creates and lays out dashboards, links filters, and manages tabs and cards.

dbt and semantic sync

Scans dbt metadata, maps lineage, and exports approved semantic rules to YAML.

PII masking and guardrails

Masks sensitive data and adds read-only and security controls for agent use.

Client setup examples

Shows configuration for Claude Desktop, Cursor, Windsurf, ChatGPT actions, and Gemini.

How to get it

  1. 1Run
    npx metabase-ai-assistant
  2. 2Run
    npm install -g metabase-ai-assistant
  3. 3Or install via Smithery CLI
    npx -y @smithery/cli install metabase-ai-assistant --client claude
  4. 4Deploy directly to Cloudflare's edge network for free
    cd deploy/cloudflare
    npx wrangler deploy

README

Metabase AI Assistant — Model Context Protocol (MCP) Server

npm version License Node.js MCP SDK

Metabase AI Assistant is an enterprise-grade Model Context Protocol (MCP) server that connects Large Language Models (LLMs), AI coding assistants, and automated data workflows directly to your Metabase Business Intelligence instance.

Featuring 152 dedicated tools, native dbt Metadata & Metrics Auto-Syncer, Metabase to dbt Reverse Lineage Exposures, dbt-Smart Question Creator, Lightdash Code-as-BI YAML-to-Dashboard generation, Cube.js-style Pre-aggregations & Multi-Hop Lineage Joins, Omni.co Controlled Semantic-to-YAML bridge, autonomous self-healing SQL execution, full-scale dashboard architecting, proactive anomaly detection, query index advisory, zero-leak PII masking, and strict security guardrails. Works seamlessly with Claude, Cursor, ChatGPT, Gemini, and Google Antigravity.


🌍 Language Versions / Dil Seçenekleri / 语言版本 / النسخ اللغوية


Table of Contents


Core Architectural Highlights

Metabase AI Assistant transforms standard AI interfaces (Claude Desktop, Cursor, VS Code, ChatGPT, Gemini, automated agent frameworks) into full-fledged Metabase power users:

  1. dbt Deep Scanning & MetricFlow Integration (dbt_project_scan_deep): 9-tier architectural classification, doc('...') resolution, and catalog.json table/column profiling.
  2. Cube.js Multi-Hop Lineage Joins (dbt_lineage_joins_graph): Resolves shortest join paths via Dijkstra Min-Heap algorithms with 3-color DAG cycle detection.
  3. Cube.js Pre-Aggregation & Rollup Advisor (dbt_semantic_preagg_advisor): Generates multi-dialect Materialized View DDLs (Postgres, BigQuery, Snowflake, ClickHouse, DuckDB, Redshift, MySQL) with HyperLogLog distinct counts.
  4. Lightdash Code-as-BI Dashboard Builder (dbt_build_dashboard_from_yaml): Translates meta.metabase and meta.lightdash formatting options into collision-free 24-column Metabase Dashboards.
  5. Omni.co Controlled Semantic-to-YAML Exporter (dbt_semantic_export_yaml): Serializes approved business rules into clean dbt schema.yml / semantic_models.yml code blocks.
  6. Autonomous Self-Healing SQL Engine (ai_sql_execute_and_heal): 3-iteration automated error-recovery loop for resilient querying.
  7. Zero-Leak Enterprise PII Masker: Real-time sanitization of emails, phone numbers, national IDs, credit cards, IP addresses, and tokens.

Next-Gen Autonomous Features (v5.1)

1. dbt Architectural Hierarchy & Source Prioritization

$$\mathbf{Gold;Marts;(fct_,;dim_,;rpt_)} ;\gg; \mathbf{Silver;(int_)} ;\gg; \mathbf{Bronze;Staging;(stg_)}$$

  • dbt_inspect_models: Parses dbt manifest.json and MetricFlow semantic models.
  • dbt_prioritize_sources: Dynamically routes natural language questions to pre-aggregated, tested dimensional and fact tables.

2. Governance-First Semantic Memory (No Silent Learning, No Hard-Deletes)

  • semantic_memory_propose: Proposes a business rule in PENDING_APPROVAL status.
  • semantic_memory_approve: Explicitly activates the rule with required data steward comments.
  • semantic_memory_deprecate: Safely soft-archives rules with mandatory audit reasons (DEPRECATED).
  • semantic_memory_restore: Instantly restores archived rules.
  • semantic_memory_list: Lists all rules with complete audit history and timestamps.

3. Autonomous Self-Healing SQL Engine (ai_sql_execute_and_heal)

  • Catches syntax errors, Levenshtein-distance column misspellings, missing GROUP BY clauses, and dialect quirks across Postgres, MySQL, BigQuery, Snowflake, and SQLite.
  • Preserves fix history in _provenance.healing_trail.

Metabase Version Compatibility

Metabase AI Assistant provides backward and forward compatibility across all major Metabase architectures:

Metabase Version RangeCompatibility LevelKey Features Supported
Metabase v0.55 – v0.61+ (Current)Full SupportModern MBQL 5 format (stages, lib/type), /api/upload/csv, updated collection permissions, multi-tab dashboards
Metabase v0.50 – v0.54Full SupportCollection tree hierarchies (/api/collection/tree), Model cards, API Key auth (x-api-key), sequential parametric queries
Metabase v0.43 – v0.49Full SupportSession token authentication (X-Metabase-Session), legacy MBQL query pipelines, database introspection
Metabase Open Source & EnterpriseFull SupportAutomatic feature detection (whitelabeling, audit logs, granular data permissions)

Quick Start & Installation

Global Execution via NPX

npx metabase-ai-assistant

Manual Installation via NPM

npm install -g metabase-ai-assistant

Client Configuration & Desktop Setup

1. Claude Desktop

Option A: One-Click Extension (DXT / MCPB)

  1. Open Claude Desktop Settings -> Developer / Extensions -> Install Local Extension.
  2. Select this repository folder.
  3. Or install via Smithery CLI:
    npx -y @smithery/cli install metabase-ai-assistant --client claude
    

Option B: Manual JSON Configuration

Add the server definition to claude_desktop_config.json:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "metabase": {
      "command": "npx",
      "args": ["-y", "metabase-ai-assistant"],
      "env": {
        "METABASE_URL": "https://your-metabase-instance.com",
        "METABASE_API_KEY": "mb_your_api_key_here",
        "METABASE_READ_ONLY_MODE": "true"
      }
    }
  }
}

2. Cursor IDE, Windsurf & VS Code

Add to .cursor/mcp.json or VS Code MCP settings:

{
  "mcpServers": {
    "metabase": {
      "command": "npx",
      "args": ["-y", "metabase-ai-assistant"],
      "env": {
        "METABASE_URL": "https://your-metabase-instance.com",
        "METABASE_API_KEY": "mb_your_api_key_here",
        "METABASE_READ_ONLY_MODE": "true"
      }
    }
  }
}

3. ChatGPT Custom GPTs & Actions

Expose Metabase AI Assistant as an OpenAPI Action for ChatGPT Plus / Team / Enterprise:

  1. Start the Remote SSE/HTTP server: npm run start:sse
  2. In ChatGPT, create a Custom GPT -> Actions -> Import from URL: https://your-domain.com/tools/openapi.json
  3. Detailed setup guide: docs/integrations/CHATGPT_ACTIONS_GUIDE.md

4. Google Gemini & Google AI Studio

Pass tool definitions to Gemini Function Calling SDKs (@google/genai or google-generativeai):

5. Cloudflare Workers (Serverless Edge)

Deploy directly to Cloudflare's edge network for free:

cd deploy/cloudflare
npx wrangler deploy

Tool Categories Overview (143 Tools)

The 143 MCP tools are categorized into 10 operational domains:

  1. dbt & Semantic Layer (6 tools): Model hierarchy inspection, lineage resolution, source prioritization, governance-first business memory (propose, approve, soft-deprecate, restore).
  2. Autonomous AI BI Operations (4 tools): Self-healing SQL engine, end-to-end dashboard architect, query index advisor, proactive anomaly detector.
  3. SQL & Query Execution (14 tools): Direct SQL queries, async execution jobs, query status tracking, pagination, and speed benchmarks.
  4. AI Query Intelligence (6 tools): Natural language to SQL, query performance optimizer, query explainer, automated table description.
  5. Cards & Visualizations (34 tools): Question creation, query execution, parametric filtering, card cloning, visualization settings.
  6. Dashboards & Layouts (22 tools): Dashboard creation, grid placement, filter linking, tab management, executive templates.
  7. Collections & Organization (8 tools): Collection tree traversal, hierarchical moves, permission graphs, item listing.
  8. Schema & Data Modeling (18 tools): Schema retrieval, foreign key inference, data profiling, table definitions.
  9. User & Permission Administration (12 tools): User invitations, group assignments, membership controls, status toggling.
  10. Actions & Documentation (19 tools): Metabase actions execution, pulses, alerts, webhooks, metrics, segment definitions, workspace migration.

Testing & Quality Assurance

Backed by an automated multi-tier test suite covering unit logic, integration workflows, and security fuzzing:

# Run complete test suite (32 suites, 583 tests)
npm test

# Run unit tests
npm run test:unit

# Run integration workflows
npm run test:integration

# Run security & PII zero-leak fuzzing tests
npm run test:security

License

Licensed under the Apache License 2.0. See the LICENSE file for details.

Developed and maintained by Abdullah Enes SARI (ONMARTECH LLC).

Files in the repo

Repository payload39 top-level entries
  • .claude-plugin
  • .github
  • deploy
  • docs
  • src
  • tests
  • .dxtignore
  • .env.example
  • .eslintrc.json
  • .gitignore
  • .mcp.json
  • .mcpbignore
  • CITATION.cff
  • claude_desktop_config.example.json
  • CODE_OF_CONDUCT.md
  • CONTRIBUTING.md
  • debug-mcp.js
  • docker-compose.yml
  • Dockerfile
  • ecosystem.config.js
  • LICENSE
  • llms-full.txt
  • llms.txt
  • manifest.json
  • metabase-ai-mcp.service
  • package-lock.json
  • package.json
  • PRIVACY.md
  • probe_test.js
  • README_AR.md
  • README_MCP.md
  • README_TR.md
  • README_ZH.md
  • README.md
  • ROADMAP.md
  • SECURITY.md
  • server.json
  • smithery.yaml
  • test-mcp.js

Discussion (0)

Ask about usage, or say what you built with it

Sign in to join the discussion.

No comments yet. Be the first to say what this is good for.

More connectors

Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface

86k

High-performance code intelligence MCP server. Indexes codebases into a persistent knowledge graph — average repo in milliseconds. 158 languages, sub-ms queries, 99% fewer tokens. Single static binary, zero dependencies.

43k

Universal provider proxy for OpenAI Codex & Claude Code — use any LLM (Claude, Gemini, Grok, DeepSeek, Ollama…) with Codex CLI, App, SDK, and Claude Code

14k
okf-memory/
okf-agent-memory

Git-native persistent memory for AI coding agents. Implements Google OKF v0.2 with sub-300µs in-memory BM25 search, embedded MCP server, and progressive disclosure. Slashes token bloat by 80% with zero external databases or dependencies. Built in pure Go.

547
tirth8205/
code-review-graph

Local-first code intelligence graph for MCP and CLI. Builds a persistent map of your codebase so AI coding tools read only what matters, with benchmarked context reductions on reviews and large-repo workflows.

31k
2akouwu/
reverify

Stop your AI from making things up — it proposes, deterministic tools decide, every claim checked against ground truth with evidence. Grounded facts and context survive resets. Reverse engineering is the proving ground. MCP server + CLI.

1.1k