#82661·metabase

metabot - does not recognize filters on a dashboard

Author: thackervishalCreated Sep 17, 2026Updated Sep 17, 2026
LabelsType:BugPriority:P1.Needs TriageMetabot/Tools.Team/Metabot.Run Repro Bot

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

  1. Connect Metabase to the Sample Database (default on a fresh install).
  2. Create a question: New → Question → pick the Orders table → Save (call it Orders).
  3. Create a dashboard: New → Dashboard (call it Orders Dashboard) → add the Orders question to it.
  4. Add a filter: in dashboard edit mode, click the filter icon → add a Time filter → connect it to Orders Created At → Save.
  5. Open Metabot and ask: "What filters are on the Orders Dashboard?"
  6. 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"}))