io.github.enessari/metabase-ai-assistant
NPM · METABASE-AI-ASSISTANT · SCANNED AUG 3
MCP Server for Metabase - 111 tools for SQL generation, dashboards & PostgreSQL
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →
Supply Chain Security84
- No malware found by supply-chain analysis.Pass
- Only part of the dependency tree could be resolved (250 of 289), so this covers what we could see, not the whole tree.Partial
- No install/post-install scripts declared.Pass
- Only part of the dependency tree could be resolved (250 of 289), so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency45
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- Clear OSI-approved license (Apache-2.0).Pass
- Actively maintained (last published 172 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability0
- Schema quality not yet verified: our sandbox run of this package did not complete, so we have no schema to assess.Unverified
Stability & Change Management0
- Stability not yet verified: our sandbox run of this package did not complete, so we have no schema to compare.Unverified
Tool Coverage0
- Tool coverage not yet verified: our sandbox run of this package did not complete, so we have no tool definitions to assess.Unverified
Capabilities0
- Protocol version not yet verified: our sandbox run of this package did not complete, so we never saw its MCP handshake.Unverified
Unverified: 4 categories
Categories scored 0 because our sandbox run of this package has not given us the schema these checks need to read. That is a gap on our side rather than a finding about the package, and we only credit what we can confirm, so the score stands at 0 until the capture succeeds. We are working through the fleet, so this normally clears without any action from you. How we score packages →
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
npm · metabase-ai-assistant
claude mcp add enessari-metabase-ai-assistant -- npx -y metabase-ai-assistant
codex mcp add enessari-metabase-ai-assistant -- npx -y metabase-ai-assistant
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"enessari-metabase-ai-assistant": {
"type": "local",
"command": [
"npx",
"-y",
"metabase-ai-assistant"
],
"enabled": true
}
}
} openclaw mcp add enessari-metabase-ai-assistant --command npx --arg -y --arg metabase-ai-assistant
mcp_servers:
enessari-metabase-ai-assistant:
command: "npx"
args: ["-y", "metabase-ai-assistant"] {
"mcpServers": {
"enessari-metabase-ai-assistant": {
"command": "npx",
"args": [
"-y",
"metabase-ai-assistant"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 2 Aug 26 +29
- Provenance: unverified → fail ▼ security
- Install scripts: unverified → pass ▲ security
- Known CVEs: unverified → partial ▲ security
- Malware scan: unverified → pass ▲ security
- Stability: Stability not yet verified: we do not have a sandbox capture of the MCP schema this version of the package serves yet. security
- Security disclosure: fail → unverified ▼ functional
- Dependency health: unverified → partial ▲ functional
- Maintenance: unverified → pass ▲ functional
- License: unverified → pass ▲ functional
- Schema quality: Schema quality not yet verified: we do not have a sandbox capture of the MCP schema this version of the package serves yet. functional
- Capabilities: Protocol version not yet verified: we do not have a sandbox capture of the MCP handshake this version of the package performs yet. functional
- Tool coverage: Tool coverage not yet verified: we do not have a sandbox capture of the tool definitions this version of the package serves yet. functional
- Licence: Apache-2.0 functional
- 31 Jul 26 −19
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 28 Jul 26 0
- Tool coverage: Tool coverage not yet verified: our sandbox run of this package did not complete, so we have no tool definitions to assess. functional
- Schema quality: Schema quality not yet verified: our sandbox run of this package did not complete, so we have no schema to assess. functional
- 27 Jul 26 24
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 3 Aug 2026 · Analysed npm/[email protected]
Provenance none
Ecosystem: npm · Outcome: none
Dependencies 250 packages
250 packages in the resolved dependency tree · 244 deprecated · 81 stale.
The dependency tree was only partially resolved, so these counts may be incomplete.
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.
mb_card_clone ~76
Clone a card and retarget to a different table (for template cards)
| Name | Type | Req | Description |
|---|---|---|---|
| card_id | number | yes | Source card ID |
| collection_id | number | — | Destination collection ID |
| column_mappings | object | — | Column name mappings from source to target table |
| target_table_id | number | yes | New target table ID |
No output schema declared.
No examples provided.
mb_card_copy ~62
Copy a card/question to a new location
| Name | Type | Req | Description |
|---|---|---|---|
| card_id | number | yes | Source card ID |
| collection_id | number | — | Destination collection ID |
| new_name | string | — | Name for the copy (optional, defaults to "Copy of [original]") |
No output schema declared.
No examples provided.
mb_card_data ~55
Execute a card/question and get the results in specified format
| Name | Type | Req | Description |
|---|---|---|---|
| card_id | number | yes | Card/Question ID |
| format | string | — | Output format |
| parameters | object | — | Optional parameters for parametric questions |
No output schema declared.
No examples provided.
mb_card_delete ~30
Permanently delete a card/question
| Name | Type | Req | Description |
|---|---|---|---|
| card_id | number | yes | Card/Question ID to delete |
No output schema declared.
No examples provided.
mb_card_get ~30
Get detailed information about a specific card/question
| Name | Type | Req | Description |
|---|---|---|---|
| card_id | number | yes | Card/Question ID |
No output schema declared.
No examples provided.
mb_card_update ~77
Update an existing card/question
| Name | Type | Req | Description |
|---|---|---|---|
| card_id | number | yes | Card/Question ID |
| collection_id | number | — | Move to collection ID |
| description | string | — | New description |
| display | string | — | Chart type |
| name | string | — | New name |
| visualization_settings | object | — | New visualization settings |
No output schema declared.
No examples provided.
mb_collection_copy ~52
Copy an entire collection with all contents
| Name | Type | Req | Description |
|---|---|---|---|
| collection_id | number | yes | Source collection ID |
| destination_id | number | — | Destination parent collection ID |
| new_name | string | — | Name for the copy |
No output schema declared.
No examples provided.
mb_collection_create ~68
Create a new collection in Metabase for organizing questions and dashboards
| Name | Type | Req | Description |
|---|---|---|---|
| color | string | — | Collection color (hex code) |
| description | string | — | Collection description |
| name | string | yes | Collection name |
| parent_id | number | — | Parent collection ID (null for root level) |
No output schema declared.
No examples provided.
mb_collection_list ~48
List all collections with hierarchy and item counts
| Name | Type | Req | Description |
|---|---|---|---|
| include_items | boolean | — | Include items in each collection |
| parent_id | number | — | Filter by parent collection ID (null for root) |
No output schema declared.
No examples provided.
mb_collection_move ~64
Move questions, dashboards, or collections to a different collection
| Name | Type | Req | Description |
|---|---|---|---|
| item_id | number | yes | ID of the item to move |
| item_type | string | yes | Type of item to move |
| target_collection_id | number | yes | Target collection ID (null for root) |
No output schema declared.
No examples provided.
mb_collection_permissions_get ~35
Get permissions graph for a collection
| Name | Type | Req | Description |
|---|---|---|---|
| collection_id | number | yes | Collection ID (use "root" for root collection) |
No output schema declared.
No examples provided.
mb_collection_permissions_update ~48
Update permissions for a collection
| Name | Type | Req | Description |
|---|---|---|---|
| collection_id | number | yes | Collection ID |
| group_id | number | yes | Permission group ID |
| permission | string | yes | Permission level to set |
No output schema declared.
No examples provided.
mb_dashboard_add_card ~83
Add a question card to a dashboard with specific positioning, sizing, and layout
| Name | Type | Req | Description |
|---|---|---|---|
| dashboard_id | number | yes | Dashboard ID to add card to |
| parameter_mappings | array | — | Connect dashboard filters to question parameters |
| position | object | — | Card position and size on dashboard grid |
| question_id | number | yes | Question ID to add as card |
No output schema declared.
No examples provided.
mb_dashboard_add_filter ~112
Add a filter to a dashboard for interactive data filtering across multiple cards
| Name | Type | Req | Description |
|---|---|---|---|
| dashboard_id | number | yes | Dashboard ID to add filter to |
| default_value | — | — | Default filter value (optional) |
| field_id | number | — | Field ID to filter on (optional for some filter types) |
| name | string | yes | Filter display name |
| position | object | — | Filter position in dashboard header |
| required | boolean | — | Whether filter is required |
| type | string | yes | Filter type and operator |
No output schema declared.
No examples provided.
mb_dashboard_card_remove ~40
Remove a card from a dashboard
| Name | Type | Req | Description |
|---|---|---|---|
| card_id | number | yes | Dashboard card ID to remove |
| dashboard_id | number | yes | Dashboard ID |
No output schema declared.
No examples provided.
mb_dashboard_card_update ~84
Update card position and size on a dashboard
| Name | Type | Req | Description |
|---|---|---|---|
| card_id | number | yes | Dashboard card ID |
| col | number | — | New column position |
| dashboard_id | number | yes | Dashboard ID |
| row | number | — | New row position |
| size_x | number | — | Width in grid units |
| size_y | number | — | Height in grid units |
No output schema declared.
No examples provided.
mb_dashboard_copy ~74
Copy a dashboard with all its cards
| Name | Type | Req | Description |
|---|---|---|---|
| collection_id | number | — | Destination collection ID |
| dashboard_id | number | yes | Source dashboard ID |
| deep_copy | boolean | — | If true, also copies all cards. If false, links to existing cards. |
| new_name | string | — | Name for the copy |
No output schema declared.
No examples provided.
mb_dashboard_create ~81
Create a new dashboard in Metabase with layout options
| Name | Type | Req | Description |
|---|---|---|---|
| collection_id | number | — | Collection ID to save dashboard to (optional) |
| description | string | yes | Dashboard description |
| name | string | yes | Dashboard name |
| template | string | — | Dashboard template type |
| width | number | — | Dashboard width in grid units (default: 12) |
No output schema declared.
No examples provided.
mb_dashboard_delete ~25
Delete a dashboard
| Name | Type | Req | Description |
|---|---|---|---|
| dashboard_id | number | yes | Dashboard ID to delete |
No output schema declared.
No examples provided.
mb_dashboard_get ~26
Get detailed information about a dashboard
| Name | Type | Req | Description |
|---|---|---|---|
| dashboard_id | number | yes | Dashboard ID |
No output schema declared.
No examples provided.
mb_dashboard_layout_optimize ~76
Automatically optimize dashboard layout for better visual hierarchy and user experience
| Name | Type | Req | Description |
|---|---|---|---|
| dashboard_id | number | yes | Dashboard ID to optimize |
| grid_width | number | — | Dashboard grid width (default: 12) |
| layout_style | string | — | Layout optimization style |
| preserve_order | boolean | — | Keep existing card order when optimizing |
No output schema declared.
No examples provided.
mb_dashboard_template_executive ~127
Create an executive dashboard with standard KPIs, metrics, and layout - auto-generates questions and arranges them professionally
| Name | Type | Req | Description |
|---|---|---|---|
| business_domain | string | — | Business domain (e.g., ecommerce, saas, retail, finance) |
| collection_id | number | — | Collection ID to save dashboard to (optional) |
| database_id | number | yes | Database ID to analyze and create dashboard for |
| name | string | yes | Dashboard name |
| schema_name | string | — | Target schema name for analysis (optional) |
| time_period | string | — | Default time period for metrics |
No output schema declared.
No examples provided.
mb_dashboard_update ~62
Update dashboard properties
| Name | Type | Req | Description |
|---|---|---|---|
| collection_id | number | — | Move to collection |
| dashboard_id | number | yes | Dashboard ID |
| description | string | — | New description |
| enable_embedding | boolean | — | Enable embedding |
| name | string | — | New name |
No output schema declared.
No examples provided.
mb_dashboards ~13
List existing dashboards
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
mb_embed_settings ~21
Get embedding settings and enabled features for the Metabase instance
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
mb_embed_url_generate ~115
Generate signed embedding URL for a dashboard or question
| Name | Type | Req | Description |
|---|---|---|---|
| bordered | boolean | — | Show border around embed |
| exp_minutes | number | — | Token expiration in minutes |
| params | object | — | Locked parameter values for the embedding |
| preview | boolean | — | Include preview-mode frame styles |
| resource_id | number | yes | ID of the dashboard or question |
| resource_type | string | yes | Type of resource to embed |
| theme | string | — | Embed theme |
| titled | boolean | — | Show title in embed |
No output schema declared.
No examples provided.
mb_field_metadata ~97
Get or update field metadata including display name, description, and semantic type
| Name | Type | Req | Description |
|---|---|---|---|
| description | string | — | Field description |
| display_name | string | — | Human-readable display name |
| field_id | number | yes | Field ID to get/update |
| has_field_values | string | — | How to show field values in filters |
| semantic_type | string | — | Semantic type for the field |
| visibility_type | string | — | Field visibility |
No output schema declared.
No examples provided.
mb_field_values ~35
Get distinct values for a field (for filter dropdowns)
| Name | Type | Req | Description |
|---|---|---|---|
| field_id | number | yes | Field ID to get values for |
No output schema declared.
No examples provided.
mb_meta_auto_cleanup ~191
🧹 Auto-cleanup unused content with SAFETY CHECKS. ⚠️ DRY-RUN by default, requires approved:true for execution. Finds unused questions (180+ days), orphaned cards, empty collections, broken questions. Requires MB_METADATA_ENABLED=true.
| Name | Type | Req | Description |
|---|---|---|---|
| approved | boolean | — | 🔒 SAFETY: Requires explicit approval (default: false). Set true to execute |
| broken_questions | boolean | — | Include questions with 100% error rate (default: true) |
| dry_run | boolean | — | 🔒 SAFETY: Dry-run mode (default: true). Set false to execute |
| empty_collections | boolean | — | Include empty collections (default: true) |
| orphaned_cards | boolean | — | Include orphaned cards (not in dashboards) (default: true) |
| unused_days | number | — | Days without usage to consider content unused (default: 180) |
No output schema declared.
No examples provided.
mb_meta_compare_environments ~59
🔄 Compare current environment with another (dev → staging → prod). Identifies drift, missing items, and differences. READ-ONLY operation. Requires MB_METADATA_ENABLED=true.
| Name | Type | Req | Description |
|---|---|---|---|
| target_workspace | object | yes | Workspace export from target environment |
No output schema declared.
No examples provided.
mb_meta_content_usage ~100
Analyze content usage patterns - find popular questions/dashboards, unused content, orphaned cards. Great for content cleanup and optimization. Requires MB_METADATA_ENABLED=true.
| Name | Type | Req | Description |
|---|---|---|---|
| days | number | — | Number of days to analyze (default: 30) |
| limit | number | — | Number of top items to return (default: 20) |
| unused_threshold_days | number | — | Days without usage to consider content "unused" (default: 90) |
No output schema declared.
No examples provided.
mb_meta_dashboard_complexity ~36
Analyze dashboard complexity - card counts, load times, performance issues. Identify dashboards that need optimization. Requires MB_METADATA_ENABLED=true.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
mb_meta_database_usage ~63
Analyze database usage patterns - query counts, performance, errors by database and table. Requires MB_METADATA_ENABLED=true.
| Name | Type | Req | Description |
|---|---|---|---|
| database_id | number | — | Optional: analyze specific database tables |
| days | number | — | Number of days to analyze (default: 30) |
No output schema declared.
No examples provided.
mb_meta_error_patterns ~96
Analyze error patterns and categorize recurring errors - identify systemic issues, suggest resolutions, find questions with high error rates. Proactive error management. Requires MB_METADATA_ENABLED=true.
| Name | Type | Req | Description |
|---|---|---|---|
| days | number | — | Number of days to analyze (default: 30) |
| include_recurring_questions | boolean | — | Include questions with recurring errors (default: true) |
| include_timeline | boolean | — | Include temporal error analysis (default: true) |
No output schema declared.
No examples provided.
mb_meta_export_workspace ~120
📤 Export workspace to JSON (questions, dashboards, collections). READ-ONLY operation - safe to execute. Perfect for backups and migrations. Requires MB_METADATA_ENABLED=true.
| Name | Type | Req | Description |
|---|---|---|---|
| archived | boolean | — | Include archived items (default: false) |
| collection_ids | array | — | Optional: Export specific collections only (array of IDs) |
| include_collections | boolean | — | Include collections (default: true) |
| include_dashboards | boolean | — | Include dashboards (default: true) |
| include_questions | boolean | — | Include questions (default: true) |
No output schema declared.
No examples provided.
mb_meta_impact_analysis ~82
Analyze impact of removing a table - breaking changes, affected questions/dashboards, severity assessment, and recommendations. Critical for safe database migrations. Requires MB_METADATA_ENABLED=true.
| Name | Type | Req | Description |
|---|---|---|---|
| database_id | number | yes | Database ID |
| schema_name | string | — | Schema name (optional) |
| table_name | string | yes | Table name to analyze for removal impact |
No output schema declared.
No examples provided.
mb_meta_import_preview ~58
🔍 Preview import impact WITHOUT making changes (dry-run). Analyzes conflicts, detects issues, provides recommendations. ALWAYS run this before actual import. Requires MB_METADATA_ENABLED=true.
| Name | Type | Req | Description |
|---|---|---|---|
| workspace | object | yes | Workspace data from export_workspace |
No output schema declared.
No examples provided.
mb_meta_info ~37
Get overview of Metabase metadata database - active users, questions, dashboards, recent activity. Quick health check. Requires MB_METADATA_ENABLED=true.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
mb_meta_optimization_recommendations ~108
Get comprehensive optimization recommendations - index suggestions, materialized view candidates, and cache optimization. Data-driven performance improvements. Requires MB_METADATA_ENABLED=true.
| Name | Type | Req | Description |
|---|---|---|---|
| database_id | number | yes | Database ID to analyze |
| days | number | — | Number of days to analyze (default: 30) |
| include_cache_recommendations | boolean | — | Include cache optimization suggestions (default: true) |
| include_matview_candidates | boolean | — | Include materialized view recommendations (default: true) |
No output schema declared.
No examples provided.
mb_meta_query_performance ~100
Get comprehensive query performance statistics from Metabase metadata - analyze execution times, cache hit rates, error rates, and identify slow queries. Requires MB_METADATA_ENABLED=true.
| Name | Type | Req | Description |
|---|---|---|---|
| days | number | — | Number of days to analyze (default: 7) |
| include_slow_queries | boolean | — | Include detailed slow query analysis (default: true) |
| slow_threshold_ms | number | — | Threshold for slow queries in milliseconds (default: 10000) |
No output schema declared.
No examples provided.
mb_meta_table_dependencies ~85
Analyze table dependencies - find all questions and dashboards that depend on a specific table. Essential for impact analysis before schema changes. Requires MB_METADATA_ENABLED=true.
| Name | Type | Req | Description |
|---|---|---|---|
| database_id | number | yes | Database ID containing the table |
| schema_name | string | — | Schema name (optional, recommended for disambiguation) |
| table_name | string | yes | Name of the table to analyze |
No output schema declared.
No examples provided.
mb_meta_user_activity ~99
Get user activity statistics - active users, inactive users, query patterns, login history. Useful for license optimization and user engagement analysis. Requires MB_METADATA_ENABLED=true.
| Name | Type | Req | Description |
|---|---|---|---|
| days | number | — | Number of days to analyze (default: 30) |
| inactive_threshold_days | number | — | Days without activity to consider user "inactive" (default: 90) |
| include_login_history | boolean | — | Include login timeline data (default: true) |
No output schema declared.
No examples provided.
mb_metric_create ~83
Create a custom metric definition in Metabase for KPI tracking and business intelligence
| Name | Type | Req | Description |
|---|---|---|---|
| aggregation | object | yes | Metric aggregation definition |
| description | string | yes | Metric description and business context |
| filters | array | — | Optional filters to apply to metric calculation |
| name | string | yes | Metric name |
| table_id | number | yes | Base table ID for the metric |
No output schema declared.
No examples provided.
mb_permission_group_add_user ~42
Add a user to a permission group
| Name | Type | Req | Description |
|---|---|---|---|
| group_id | number | yes | Permission group ID |
| user_id | number | yes | User ID to add |
No output schema declared.
No examples provided.
mb_permission_group_create ~28
Create a new permission group
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Name of the permission group |
No output schema declared.
No examples provided.
mb_permission_group_delete ~27
Delete a permission group
| Name | Type | Req | Description |
|---|---|---|---|
| group_id | number | yes | Group ID to delete |
No output schema declared.
No examples provided.
mb_permission_group_list ~18
List all permission groups in Metabase
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
mb_permission_group_remove_user ~42
Remove a user from a permission group
| Name | Type | Req | Description |
|---|---|---|---|
| group_id | number | yes | Permission group ID |
| user_id | number | yes | User ID to remove |
No output schema declared.
No examples provided.
mb_pulse_create ~87
Create a scheduled report (pulse) that sends dashboards/questions on a schedule
| Name | Type | Req | Description |
|---|---|---|---|
| cards | array | yes | Cards to include in the pulse |
| channels | array | yes | Delivery channels (email/slack) |
| collection_id | number | — | Collection to save pulse in |
| name | string | yes | Pulse name |
| skip_if_empty | boolean | — | Skip sending if no results |
No output schema declared.
No examples provided.
mb_question_create ~79
Create new question/chart
| Name | Type | Req | Description |
|---|---|---|---|
| collection_id | number | — | Collection ID to save the question to (optional) |
| database_id | number | yes | Database ID to query |
| description | string | yes | Description of what the question shows |
| name | string | yes | Name for the question |
| sql | string | yes | SQL query for the question |
No output schema declared.
No examples provided.