Skip to main content
Glama

goodnotes_set_text_box_style

Destructive

Set text box background and border colors, border width, corner radius, padding, and shadow while preserving exact text formatting, then verify the native settings after reload.

Instructions

Set prepared text-box background/border colors (hex or none), border/corner/padding points and shadow. Preserves exact text and character formatting; verifies native settings and appearance after reload.

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": {
      "styleId": "<styleId>",
      "style": "<style>",
      "operationId": "<operationId>"
    },
    "name": "goodnotes_set_text_box_style"
  }
}

Input Schema

NameRequiredDescriptionDefault
styleYes
styleIdYes
operationIdYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.21.1

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already flag this as destructive and open-world, and the description adds genuinely non-redundant behavior: text and character formatting are preserved (so the mutation is style-scoped, not content-scoped) and the tool verifies native settings and appearance after reload. It does not explain permissions, failure/rollback behavior, or what 'verifies' returns, keeping it at 4 rather than 5.

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

Conciseness5/5

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

Two tightly packed sentences; the mutation scope and its accept-value constraints come first, with the preservation guarantee and verification follow-through second. No filler or restatement of the tool name.

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

Completeness3/5

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

For a destructive nested-object mutation with no output schema, the description covers the styling fields and the content-preservation guarantee, which is the critical risk information. It still leaves the identity parameter (styleId), the operationId contract, and the post-reload verification result undescribed, so an agent cannot fully predict inputs or outcomes.

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?

With 0% schema description coverage, the description does compensate for the nested style object by naming colors (hex or none), border/corner/padding points and shadow, matching the six sub-properties. But it says nothing about styleId (which text box is targeted) or operationId (presumably an idempotency key), so a third of the top-level parameters remain unexplained.

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?

States a specific verb and resource ('Set prepared text-box background/border colors... border/corner/padding points and shadow'), enumerating exactly which style facets are mutated. It implicitly distinguishes itself from the read-only sibling goodnotes_text_box_style_info by being a setter, but never names the alternative, so it stops short of a 5.

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

Usage Guidelines3/5

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

'Prepared text-box' implies a text box must already exist before styling, which is useful pre-condition context. However, there is no explicit when-to-use/when-not guidance and no pointer to goodnotes_text_box_style_info for inspecting current values or to shape/folder style siblings — the agent must infer the routing.

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

Deploy Server

Other Tools