- Home
- MCP servers
- Metabase
Metabase
- typescript
45
GitHub Stars
typescript
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"easecloudio-mcp-metabase-server": {
"command": "npx",
"args": [
"@easecloudio/mcp-metabase-server"
],
"env": {
"METABASE_URL": "https://your-metabase-instance.com",
"METABASE_API_KEY": "your_metabase_api_key",
"METABASE_PASSWORD": "your_password",
"METABASE_USERNAME": "your_username"
}
}
}
}You set up an MCP server that bridges Metabase with AI assistants, enabling live analytics access and comprehensive BI capabilities through a standardized MCP interface. This server supports dashboard, card, database, user, and governance operations, empowering you to perform analytics tasks from natural language or programmatic MCP calls.
How to use
To use the Metabase MCP Server, run it as an MCP endpoint and connect your MCP client or Claude Desktop to it. You can start with the recommended method using npx, which avoids local installations and uses the published package directly. Once running, you can call a wide range of tools to list dashboards, execute cards, manage collections, export data, and monitor usage.
How to install
Prerequisites: You need Node.js installed (version recommended by your project) and access to a Metabase instance. If you prefer not to install locally, you can run the server via containerized or networked approaches described below.
Step 1. Install or prepare your environment if you want to run locally. You will install dependencies and build if you choose to run from source.
Step 2. Choose a run method from the options shown in the usage guide: npx, Node.js start from a built distribution, or Docker. Each method requires you to provide Metabase connection credentials.
Configuration and usage notes
Environment variables control authentication and target Metabase access. The server supports two methods: API key authentication or fallback username/password authentication. You should provide at least one of these methods to start the server.
Recommended minimum: set METABASE_URL and METABASE_API_KEY for API key authentication. If you use username/password, provide METABASE_URL, METABASE_USERNAME, and METABASE_PASSWORD.
Starting with API key authentication is preferred for simplicity and automation.
Troubleshooting and debugging
Debugging MCP servers that communicate over stdio can be challenging. Use the MCP Inspector tool to access debugging utilities in your browser. Run the inspector script to obtain a debugging URL. Check startup logs for authentication method usage and any errors related to Metabase API access.
Security considerations
Protect your Metabase credentials and API keys. Do not expose keys in client configurations or shared repositories. Use secure environment management and rotate credentials periodically.
Notes on deployment options
You can run the server using several methods, including npx, direct Node.js execution after building, or Docker. Each method requires you to provide the correct environment variables and, when applicable, ensure the Metabase instance is reachable from the host running the MCP server.
Support and contact
If you need expert help deploying, customizing, or scaling Metabase integration with MCP, consider reaching out to the EaseCloud team for consulting, automation, and managed support.
Available tools
list_dashboards
List all dashboards available in Metabase so you can view and reference them from your MCP client.
create_dashboard
Create a new dashboard within Metabase to organize cards and data visuals.
update_dashboard
Update properties or layout of an existing dashboard.
delete_dashboard
Delete or archive a dashboard from Metabase.
get_dashboard_cards
Retrieve all cards associated with a specific dashboard.
list_cards
List all questions or cards present in Metabase.
create_card
Create a new question/card in Metabase.
update_card
Update details of an existing card.
delete_card
Delete or archive a card.
execute_card
Run a card and fetch its results.
list_databases
List all databases connected to Metabase.
execute_query
Execute a SQL query against a selected database.
list_collections
List all collections in Metabase.
create_collection
Create a new collection to organize items.
update_collection
Update properties of an existing collection.
delete_collection
Delete a collection.
get_collection_items
Get all items contained in a collection.
move_to_collection
Move items between collections.
list_users
List all Metabase users.
create_user
Create a new Metabase user.
update_user
Update user details.
delete_user
Deactivate a user.
list_permissions
List all permission groups and permissions.
list_permission_groups
List all permission groups.
create_permission_group
Create a new permission group.
update_permission_group
Update a permission group.
delete_permission_group
Delete a permission group.
add_user_to_group
Add a user to a permission group.
remove_user_from_group
Remove a user from a permission group.
export_card_results
Export card results to CSV/JSON/Excel.
export_dashboard_data
Export dashboard data to various formats.
bookmark_card
Bookmark a card for quick access.
unbookmark_card
Remove a card bookmark.
bookmark_dashboard
Bookmark a dashboard.
unbookmark_dashboard
Remove a dashboard bookmark.
list_bookmarked_items
List all bookmarked items.
create_public_link
Create a public sharing link for content.
disable_public_link
Disable an existing public sharing link.
get_public_link
Get information about a public link.
get_database_schema
Get the schema information for a database.
get_database_tables
List all tables in a database.
get_table_metadata
Get metadata for a specific table.
get_table_fields
List all fields in a table.
get_field_values
Fetch values for a specific field.
get_field_summary
Get summary statistics for a field.
analyze_field_values
Analyze the distribution of values in a field.
search_content
Search across Metabase content.
get_recent_items
Get recently viewed items.
get_popular_items
Get most popular cards and dashboards.
get_user_activity
Retrieve user activity and usage statistics.
get_content_usage
Get usage statistics for cards and dashboards.
get_system_usage_stats
Get system-wide usage statistics.
get_system_health
Get system health status.