@takeokunn/metabase-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| METABASE_URL | Yes | Your Metabase instance URL (HTTPS required) | |
| METABASE_API_TOKEN | Yes | Metabase API key |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_databasesA | Get list of databases configured in Metabase |
| get_databaseC | Get a single database by ID from Metabase |
| get_database_metadataC | Get database metadata including tables and fields from Metabase |
| list_database_schemasC | List all schemas in a database from Metabase |
| list_database_tablesC | List tables in a database schema from Metabase |
| sync_databaseC | Trigger a sync for a database in Metabase |
| create_databaseB | Add a new database connection to Metabase |
| update_databaseC | Update an existing database connection configuration in Metabase |
| delete_databaseC | Delete a database connection from Metabase |
| rescan_database_valuesC | Rescan field values for a database in Metabase |
| discard_database_valuesB | Discard cached field values for a database in Metabase |
| validate_databaseB | Validate a database connection configuration before creating it in Metabase |
| create_sample_databaseC | Create the built-in sample database in Metabase |
| sync_database_schemaC | Sync the schema of a database in Metabase (schema only, not a full resync) |
| get_database_fieldsB | Get all fields for a database in Metabase |
| get_database_id_fieldsB | Get all ID-type fields for a database in Metabase |
| get_database_autocompleteC | Get autocomplete suggestions for a database in Metabase |
| get_database_usage_infoC | Get usage information for a database in Metabase |
| get_database_healthcheckC | Perform a healthcheck on a database connection in Metabase |
| list_database_schemas_with_tablesB | List all tables within a specific schema of a database in Metabase |
| list_database_virtual_tablesB | List virtual tables (saved questions) available as tables in a database in Metabase |
| get_database_virtual_schemaC | Get a virtual schema (datasets) for a database in Metabase |
| list_database_virtual_schema_tablesC | List all virtual tables (saved questions as tables) across all databases in Metabase |
| append_csv_to_tableC | Append rows from a CSV upload to an existing table in a database in Metabase |
| replace_table_csvB | Replace an existing table with CSV data in a database in Metabase |
| get_database_card_autocompleteC | Get card autocomplete suggestions for a database in Metabase |
| get_database_available_settingsC | Get available settings for a database connection in Metabase |
| get_database_syncable_schemasC | Get syncable schemas for a database in Metabase |
| get_virtual_database_datasetsC | Get datasets for a virtual database in Metabase |
| dismiss_database_spinnerC | Dismiss the loading spinner for a database in Metabase |
| list_collectionsC | Get list of all collections (folders) in Metabase |
| get_collectionB | Get a single collection by ID from Metabase (supports "root" for root collection) |
| get_collection_itemsB | Get items (cards, dashboards, etc.) within a collection (supports "root" for root collection) |
| get_collection_treeB | Get the hierarchical tree structure of all collections in Metabase |
| get_root_collectionC | Get the root collection from Metabase |
| get_root_collection_itemsC | Get items (cards, dashboards, etc.) within the root collection in Metabase |
| get_trash_collectionC | Get the trash collection from Metabase |
| create_collectionB | Create a new collection (folder) in Metabase |
| update_collectionC | Update an existing collection in Metabase |
| delete_collectionC | Archive (soft-delete) a collection in Metabase |
| hard_delete_collectionB | Permanently delete a collection in Metabase (cannot be undone) |
| get_root_dashboard_question_candidatesB | Get dashboard question candidates from the root collection in Metabase |
| get_collection_dashboard_question_candidatesC | Get dashboard question candidates from a collection in Metabase |
| move_root_dashboard_question_candidatesC | Move dashboard question candidates from the root collection in Metabase |
| move_collection_dashboard_question_candidatesC | Move dashboard question candidates from a collection in Metabase |
| list_dashboardsA | Get list of all dashboards in Metabase. Note: The Metabase API does not support filtering by collection on this endpoint. To get dashboards in a specific collection, use get_collection_items with models: ["dashboard"]. |
| get_dashboardB | Get a single dashboard by ID from Metabase |
| create_dashboardC | Create a new dashboard in Metabase |
| update_dashboardC | Update an existing dashboard in Metabase |
| delete_dashboardC | Delete a dashboard from Metabase |
| copy_dashboardC | Copy an existing dashboard in Metabase |
| get_dashboard_metadataC | Get dashboard query metadata from Metabase |
| add_dashboard_cardB | Add a card to a dashboard in Metabase (v0.49+) |
| update_dashboard_cardA | Update a dashboard card position, size, or settings in Metabase (v0.49+) |
| remove_dashboard_cardC | Remove a card from a dashboard in Metabase (v0.49+) |
| update_dashboard_cardsA | Bulk update dashboard cards in Metabase (v0.49+). Cards not in payload are removed. |
| add_dashboard_tabB | Add a new tab to a dashboard in Metabase (v0.49+) |
| update_dashboard_tabB | Update a dashboard tab name or position in Metabase (v0.49+) |
| remove_dashboard_tabC | Remove a tab from a dashboard in Metabase (v0.49+) |
| create_dashboard_public_linkC | Create a public sharing link for a dashboard in Metabase (returns UUID) |
| delete_dashboard_public_linkB | Delete a public sharing link from a dashboard in Metabase |
| list_public_dashboardsA | List all dashboards with public sharing links in Metabase (superuser only) |
| list_dashboard_revisionsC | List revision history for a dashboard in Metabase |
| revert_dashboardC | Revert a dashboard to a previous revision in Metabase |
| list_dashboard_subscriptionsB | List dashboard subscriptions (email/Slack notifications) in Metabase |
| create_dashboard_subscriptionC | Create a dashboard subscription (email/Slack notification) in Metabase |
| update_dashboard_subscriptionC | Update a dashboard subscription (email/Slack notification) in Metabase |
| execute_dashboard_card_queryC | Execute a dashcard query with dashboard filter parameters in Metabase |
| export_dashboard_card_queryC | Export a dashcard query result in a specified format (csv, json, xlsx, pdf) in Metabase |
| get_dashboard_param_valuesC | Get possible values for a dashboard filter parameter in Metabase |
| search_dashboard_param_valuesC | Search possible values for a dashboard filter parameter in Metabase |
| get_dashboard_embeddableA | List all dashboards available for embedding in Metabase (admin only) |
| get_dashboard_param_remappingB | Get remapping for a parameter of a dashboard in Metabase |
| get_dashboard_relatedC | Get related items for a dashboard in Metabase |
| get_valid_filter_fieldsC | Get valid filter fields for dashboard parameters in Metabase |
| save_dashboardC | Save a dashboard (creates or updates) in Metabase |
| save_dashboard_to_collectionC | Save a dashboard to a specific collection in Metabase |
| get_dashboard_itemsB | Get items (dashcards) of a dashboard in Metabase |
| get_dashcard_action_paramsC | Get action parameters for a dashcard in Metabase |
| run_dashcard_queryC | Run the query for a specific card on a dashboard in Metabase |
| export_dashcard_queryC | Export query results for a dashcard in Metabase |
| execute_dashcard_actionD | Execute an action on a dashcard in Metabase |
| pivot_dashcard_queryC | Run a pivot query for a specific dashcard in Metabase |
| list_cardsA | Get list of cards (saved questions) in Metabase, optionally filtered by collection |
| get_cardB | Get a single card (saved question) by ID from Metabase |
| get_card_metadataB | Get query metadata (columns, types, etc.) for a card (saved question) |
| create_cardC | Create a new card (saved question) in Metabase |
| update_cardC | Update an existing card (saved question) in Metabase |
| delete_cardB | Delete a card (saved question) from Metabase |
| execute_cardC | Execute a card (saved question) and return the query results |
| create_card_public_linkB | Create a public sharing link for a card (saved question) in Metabase (returns UUID) |
| delete_card_public_linkB | Delete a public sharing link from a card (saved question) in Metabase |
| list_embeddable_cardsA | List all cards (saved questions) available for embedding in Metabase (admin only) |
| list_public_cardsB | List all cards (saved questions) with public sharing links in Metabase (admin only) |
| copy_cardC | Copy an existing card (saved question) in Metabase |
| get_card_seriesB | Get related series data for a card (saved question) in Metabase |
| get_card_param_valuesC | Get possible values for a card (saved question) filter parameter in Metabase |
| search_card_param_valuesC | Search possible values for a card (saved question) filter parameter in Metabase |
| get_card_param_remappingB | Get remapping for a parameter of a card in Metabase |
| get_card_dashboardsC | Get dashboards that contain a specific card in Metabase |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/takeokunn/metabase-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server