metabot - does not recognize filters on a dashboard
Describe the bug
When you ask Metabot about a dashboard's filters - it says there are none, even though there are!
It looks like the underlying issue might be that it cannot see the filters based on the tools it has available.
To Reproduce
- Connect Metabase to the Sample Database (default on a fresh install).
- Create a question: New → Question → pick the Orders table → Save (call it Orders).
- Create a dashboard: New → Dashboard (call it Orders Dashboard) → add the Orders question to it.
- Add a filter: in dashboard edit mode, click the filter icon → add a Time filter → connect it to Orders Created At → Save.
- Open Metabot and ask: "What filters are on the Orders Dashboard?"
- Metabot can't name the filter, even though the dashboard has one.
Expected behavior
Metabot should be able to describe a dashboard's filters.
Logs
NA
Information about your Metabase installation
{
"browser-info": {
"language": "en-US",
"platform": "Win32",
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:155.0) Gecko/20100101 Firefox/155.0",
"vendor": ""
},
"metabase-info": {
"databases": [
"postgres"
],
"run-mode": "prod",
"plan-alias": "enterprise-self-hosted",
"version": {
"date": "2026-09-01",
"tag": "v1.63.16.1",
"hash": "7ef1afc"
},
"settings": {
"report-timezone": null
},
"hosting-env": "unknown",
"application-database": "postgres",
"application-database-details": {
"database": {
"name": "PostgreSQL",
"version": "18.3"
},
"jdbc-driver": {
"name": "PostgreSQL JDBC Driver",
"version": "42.7.12"
}
}
},
"system-info": {
"file.encoding": "UTF-8",
"java.runtime.name": "OpenJDK Runtime Environment",
"java.runtime.version": "25.0.4+7-LTS",
"java.vendor": "Eclipse Adoptium",
"java.vendor.url": "https://adoptium.net/",
"java.version": "25.0.4",
"java.vm.name": "OpenJDK 64-Bit Server VM",
"java.vm.version": "25.0.4+7-LTS",
"jvm.available-processors": 8,
"jvm.max-memory": "1.6 GB",
"os.name": "Linux",
"os.version": "6.6.87.2-microsoft-standard-WSL2",
"system.total-memory": "2.0 GB",
"user.language": "en",
"user.timezone": "GMT"
}
}
Severity
P1
Additional context
AI Agents feedback:
The data itself is available. GET /api/dashboard/:id returns the dashboard's parameters array (each filter's name, type, slug, default) and each dashcard's parameter_mappings (which card and field the filter is wired to). The v2 MCP layer already surfaces this through its dashboard-parameters-summary projection. The chat agent's get_dashboard_details tool just doesn't request any of it.
In src/metabase/metabot/tools/entity_details.clj, get-dashboard-details returns only the fields from dashboard-summary plus :type and :verified. It never hydrates :parameters.
(defn get-dashboard-details
[{:keys [dashboard-id]}]
...
(if-let [dashboard (metabot.db/dashboard-summary dashboard-id)]
(do (api/read-check dashboard)
{:structured-output
(-> dashboard
(dissoc :collection_id)
(assoc :type :dashboard
:verified (verified-review? dashboard-id "dashboard")))})
{:output "dashboard not found"}))
Source: metabase/metabase