Skip to main content
Glama

Chart view sync

chart_sync
Read-only

Used by the chart view itself, not by the model: acknowledges applied changes, reports the chart's state in words and fetches pending changes.

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": {
      "chart_id": "<chart_id>",
      "acked_seq": "<acked_seq>",
      "context": "<context>"
    },
    "name": "chart_sync"
  }
}

Input Schema

NameRequiredDescriptionDefault
stateNoState of the view: words, plus a few numbers (never bars) for an exchange-fed market.
pausedNoTrue on the view's last poll before it stops (hidden or out of view) until it is shown again.
contextYesExplain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution."
chart_idYes
sync_keyNoThe view's key for an app chart session (from chart_open's _meta).
acked_seqYes
next_poll_msNoWhen the view plans to poll next, in ms, unless the answer's next_poll_ms is sooner (a view that leaves it out polls about every second).
snapshot_answerNoThe view's answer to the snapshot request chart_sync last handed it.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.9/5.0
Behavior4/5

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

Annotations alone only say readOnlyHint=true, destructiveHint=false, openWorldHint=true; the description adds that this is a poll/sync loop that acknowledges receipt and hands back pending changes, which is meaningful context beyond the annotations. There is mild tension between 'acknowledges applied changes' (which updates a server-side ack sequence) and readOnlyHint=true, but nothing is destroyed or user-visible, so it does not rise to a contradiction. Polling cadence is documented in the schema (next_poll_ms), not the description, which keeps this from a 5.

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?

A single sentence, front-loaded with the most decision-relevant fact (who calls it), with no filler. It is a slightly dense triple-action phrase ('acknowledges… reports… fetches…'), but every clause carries information.

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

Completeness4/5

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

This is a complex tool (8 parameters, nested state object, no output schema), and the description covers the essentials an agent needs: who invokes it and what it does on each call. Return behavior is only described in one phrase ('fetches pending changes'), which is a gap given there is no output schema, but the schema's own field descriptions and the explicit 'not by the model' scope make the definition workable.

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

Parameters3/5

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

Schema description coverage is 75%, so the baseline is 3. The description only loosely gestures at the 'state' parameter ('reports the chart's state in words') and says nothing about chart_id, acked_seq, sync_key, paused, or snapshot_answer, so it does not materially extend the schema's parameter documentation.

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

Purpose4/5

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

The description names a specific resource (the chart view) and three concrete actions: acknowledging applied changes, reporting chart state, and fetching pending changes. The opening clause 'Used by the chart view itself, not by the model' separates it from sibling tools like chart_peek and chart_command, though it does not name those siblings directly.

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

Usage Guidelines4/5

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

It gives an explicit caller constraint: this is invoked by the chart UI, not by the model, which is strong when-to-use guidance for an agent scanning the tool list. What is missing is an explicit positive alternative ('use chart_peek to read state instead'), so an agent must infer its own read path from the sibling names.

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.