OMD Powerhouse MCP Service
The powerhouse-service is a FastMCP server that exposes OMD Powerhouse BI capabilities — Superset dashboards, charts, and SQL Lab — as MCP tools over Streamable HTTP.
Overview
| Property | Value |
|---|---|
| Default port | 8051 |
| Transport | Streamable HTTP (/mcp) |
| Authentication | JWT Bearer (RS256) |
| Source | omd-mcp/powerhouse-service/ |
Tools
get_superset_dashboards
List all available Superset dashboards.
Parameters:
| Name | Type | Default | Description |
|---|---|---|---|
page |
int |
0 |
Page number |
page_size |
int |
100 |
Results per page |
Returns: Paginated list of dashboards with IDs, titles, and slugs.
get_superset_dashboard_charts
List all charts on a given dashboard.
Parameters:
| Name | Type | Description |
|---|---|---|
dashboard_id_or_slug |
str |
Dashboard ID or slug |
Returns: List of chart objects with IDs, names, and types.
get_superset_chart_data
Fetch the data behind a specific chart.
Parameters:
| Name | Type | Description |
|---|---|---|
chart_id |
str |
Chart ID |
extra_filters |
list[dict] (optional) |
Additional filters: [{ "col": "...", "op": "...", "val": "..." }] |
Returns: Chart data as a dictionary. The structure matches the Superset chart data API response.
sql_lab_query
Execute a SQL query against the StarRocks analytical database.
Parameters:
| Name | Type | Default | Description |
|---|---|---|---|
query |
str |
— | SQL query to execute |
tenant |
str |
— | Tenant identifier: ppb, sandbox, or cws |
limit |
int |
1000 |
Maximum number of rows to return |
Returns: List of row dictionaries.
get_database_schema
Retrieve the full annotated database schema for a tenant.
Parameters:
| Name | Type | Description |
|---|---|---|
tenant |
str |
Tenant identifier: ppb, sandbox, or cws |
Returns: Schema description including table names, column names, types, and descriptions.
Running locally
# From omd-mcp root
cd powerhouse-service
uv sync
cd src
uv run --project .. python main.py
The server listens on port 8051.
Environment variables
Copy .env.example to .env in the powerhouse-service/ directory:
| Variable | Description |
|---|---|
SUPERSET_BASE_URL |
Base URL of the Superset instance |
SUPERSET_USERNAME |
Superset admin username |
SUPERSET_PASSWORD |
Superset admin password |
OMD_JWKS_URI |
JWKS endpoint for JWT validation |
OMD_JWT_ISSUER |
Expected JWT issuer |
OMD_USE_LOCAL_AUTH_SERVER |
Set to 1 to use the dev auth-server |
OMD_MCP_PUBLIC_BASE_URL |
Public URL of this service (required with local auth server) |
OMD_AUTH_SERVER_ISSUER |
Issuer URL of the dev auth-server |