Skip to main content
Glama

Pick up a chart the reader popped out of the chat

dashboard_handoff
Read-only

The reader pressed the pop-out on a chart in the dashboard drawn inline by dashboard_read and chose to make a NEW dashboard from it, or to ADD it to one of theirs; their message gives a handoff id, the mode, the dashboard's /d/owner/slug path and the panel id. Call this FIRST with all four. It returns the panel as authored with the query it reads (as dashboard_get would give them to you), what to do next, and — when adding to an existing dashboard — the dashboard the reader picked in OrionBI; it waits up to 45s for that pick and says so if it is still being made. Then do the work with dashboard_publish (new) or dashboard_patch (existing), passing the same handoff id.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "handoff": "<handoff>",
      "mode": "<mode>",
      "dashboard": "<dashboard>",
      "panel": "<panel>"
    },
    "name": "dashboard_handoff"
  }
}

Input Schema

NameRequiredDescriptionDefault
modeYesnew: a new dashboard; existing: add to one the reader picks
panelYesThe chart's panel id
handoffYesThe handoff id from the reader's message
dashboardYesThe /d/owner/slug path of the dashboard the chart is on

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations cover the safety profile (readOnly, non-destructive, closed-world), and the description adds substantial behavior beyond them: it can block for up to 45s waiting on the reader's dashboard pick, it reports when the pick is still pending, and it returns the panel with its query plus next-step guidance. That waiting-timeout trait is exactly the kind of operational fact an agent needs and cannot get from annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three compact sentences with no filler, and the sequencing instruction is stated plainly. It is slightly run-on in the opening sentence, which leads with scenario context rather than the action verb, but nothing is redundant.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description takes on the return-value burden and does so: the panel as authored, its query, the next-step guidance, and the picked dashboard when in existing mode. Combined with the handoff chain to publish/patch, an agent has everything needed to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds provenance the schema lacks: all four values come from the reader's message, including the /d/owner/slug path and panel id. It does not restate the enum values, but the origin information genuinely helps an agent source the arguments.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb-and-resource action — picking up a chart the reader popped out of an inline dashboard drawn by dashboard_read — and clarifies the two modes (new vs. existing). An agent can distinguish it from dashboard_get / dashboard_read / dashboard_publish without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It states explicit ordering ('Call this FIRST with all four') and names the downstream alternatives with their conditions: dashboard_publish for new, dashboard_patch for existing, both with the same handoff id. No inference is required about when to call this instead of those tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources