Skip to main content
Glama
SmartSuiteFoundry

SmartSuite MCP Server

SmartSuite MCP Server

A locally-hosted Model Context Protocol (MCP) server that gives AI coding agents and desktop assistants governed, auditable access to SmartSuite data.

Works with Claude Desktop, Claude Code, Cursor, Cline, and any other MCP-compatible client.


What this is

The SmartSuite MCP server runs on your machine and communicates with your MCP client over stdio. It proxies requests to the SmartSuite REST API using your account credentials. The server enforces access modes, validates inputs, redacts secrets from logs, and writes local audit logs for all write operations.


Related MCP server: safe-code-mcp

Installation

Option 1: Claude Desktop extension (.mcpb)

Download the latest smartsuite-mcp-server-*.mcpb from the Releases page, then double-click to install in Claude Desktop. You'll be prompted for your account ID and API key. No Node.js required.

Option 2: npm (global)

npm install -g @smartsuite/mcp-server

Option 3: npx (no install)

npx @smartsuite/mcp-server

Option 4: Docker

docker pull smartsuite/mcp-server:latest

Quick start: Claude Desktop

Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

{
  "mcpServers": {
    "smartsuite": {
      "type": "stdio",
      "command": "smartsuite-mcp",
      "args": [],
      "env": {
        "SMARTSUITE_ACCOUNT_ID": "your-account-id",
        "SMARTSUITE_API_KEY": "your-api-key",
        "SMARTSUITE_BASE_URL": "https://app.smartsuite.com/api/v1",
        "SMARTSUITE_MCP_MODE": "readwrite"
      }
    }
  }
}

Restart Claude Desktop. You should see the SmartSuite tools in the connector panel.


Quick start: Claude Code

claude mcp add smartsuite \
  --env SMARTSUITE_ACCOUNT_ID=your-account-id \
  --env SMARTSUITE_API_KEY=your-api-key \
  --env SMARTSUITE_BASE_URL=https://app.smartsuite.com/api/v1 \
  --env SMARTSUITE_MCP_MODE=readwrite \
  -- smartsuite-mcp

Quick start: Docker

docker run --rm -i \
  -e SMARTSUITE_ACCOUNT_ID=your-account-id \
  -e SMARTSUITE_API_KEY=your-api-key \
  -e SMARTSUITE_MCP_MODE=readonly \
  smartsuite/mcp-server:latest

Access modes

Mode

Read

Create/Update

Delete

Schema writes

readonly

readwrite

opt-in

opt-in

admin

opt-in

opt-in

Set with SMARTSUITE_MCP_MODE. Default is readonly.


Cross-workspace access

A SmartSuite API key can often reach several workspaces. By default this server is locked to the single workspace named in SMARTSUITE_ACCOUNT_ID (the "primary" workspace). Set SMARTSUITE_ENABLE_CROSS_WORKSPACE=true to let the server read from other workspaces the key can access.

When enabled:

  • A new read-only tool smartsuite_list_workspaces lists the workspaces you can reach (slug, name, solution count, plan). It's hidden when the flag is off.

  • Read tools gain an optional workspace parameter — pass a workspace slug or name to run that single call against a non-primary workspace. Omit it to use the primary.

  • Cross-workspace access is read-only. Writes, updates, and deletes always target the primary workspace only; passing workspace to a write tool is rejected, regardless of access mode.

  • Restrict the reachable set with SMARTSUITE_ALLOWED_WORKSPACES (comma-separated slugs or names). Empty means all workspaces the key can access. The primary is always allowed.

// Example: enable cross-workspace, limited to two workspaces
"env": {
  "SMARTSUITE_ENABLE_CROSS_WORKSPACE": "true",
  "SMARTSUITE_ALLOWED_WORKSPACES": "s36h7yr5,Reveal Risk"
}
// Then, in the client:
smartsuite_list_workspaces()                          → see what's reachable
smartsuite_list_solutions({ workspace: "Reveal Risk" })   → read another workspace by name
smartsuite_describe_application({ applicationId, workspace: "s36h7yr5" })  → by slug

Configuration

Required

Variable

Description

SMARTSUITE_ACCOUNT_ID

Your SmartSuite account ID

SMARTSUITE_API_KEY

Your SmartSuite API key

Optional

Variable

Default

Description

SMARTSUITE_BASE_URL

https://app.smartsuite.com/api/v1

API base URL

SMARTSUITE_MCP_MODE

readonly

Access mode: readonly, readwrite, admin

SMARTSUITE_MAX_RECORDS

100

Hard cap for list/query tools

SMARTSUITE_MAX_BATCH_WRITES

25

Max records per batch create/update

SMARTSUITE_ENABLE_DELETE

false

Enable delete tools

SMARTSUITE_ENABLE_RESTORE

false

Enable restoring soft-deleted records from the trash

SMARTSUITE_ENABLE_SCHEMA_WRITE

false

Enable schema write tools (create/update fields, formulas, forms, and automations)

SMARTSUITE_ALLOWED_SOLUTIONS

(all)

Comma-separated solution IDs to allow. Enforced on every tool call (a tool targeting an application resolves the app's solution and is blocked if it's outside the list). list_solutions only returns allowed solutions, and list_applications only returns apps in them.

SMARTSUITE_ALLOWED_APPLICATIONS

(all)

Comma-separated application IDs to allow. Enforced on every tool call.

SMARTSUITE_DENIED_APPLICATIONS

(none)

Comma-separated application IDs to block. Always enforced.

SMARTSUITE_ENABLE_CROSS_WORKSPACE

false

Allow read access to other workspaces your API key can reach (see Cross-workspace access)

SMARTSUITE_ALLOWED_WORKSPACES

(all)

Comma-separated workspace slugs or names reachable when cross-workspace is enabled; empty allows all accessible workspaces

SMARTSUITE_LOG_LEVEL

info

Log level: debug, info, warn, error

SMARTSUITE_LOG_FILE

stderr

Path to write logs (default: stderr)

SMARTSUITE_REQUEST_TIMEOUT_MS

30000

HTTP request timeout in milliseconds

SMARTSUITE_RETRY_COUNT

2

Number of retries for rate limits and transient errors

SCHEMA_CACHE_TTL_MS

300000

Application schema cache TTL (5 min)

SMARTSUITE_AI_ENRICHED_RECORDS

false

Return field context (label, type, help text, linked field) with every record response

SMARTSUITE_MIGRATION_DIR

(cwd)

Base directory for solution-migration project files (mappings/diff/xlsx, under .smartsuite-migrations/)

Governance note: When a solution or application allowlist is set, enforcement is centralized — it applies to reads, writes, and config tools alike, and to tools identified only by a view/dashboard/widget id (their parent is resolved and checked). get_file_url (which takes an unscoped file handle) is disabled while an allowlist is active. For a locked-down deployment, also keep SMARTSUITE_ENABLE_CROSS_WORKSPACE=false — the allowlist scopes the primary workspace; cross-workspace and the migration/diff tools are a separate surface.


Tool list

Discovery & Schema

Tool

Description

smartsuite_diagnostics

Validate configuration and connectivity

smartsuite_list_workspaces

List workspaces your API key can access (only when cross-workspace is enabled)

smartsuite_list_solutions

List accessible SmartSuite solutions

smartsuite_get_solution

Get solution details

smartsuite_list_applications

List applications; pass solutionId to filter to one solution. Use slim: true to inventory a whole solution cheaply (id, name, slug, solution, fieldCount); limit is enforced client-side

smartsuite_describe_application

Application schema with field slugs, options, help text, and the record term. Pass includeLayout: true for record-view tabs, sections (collapse + visibility conditions), field rows, and field-level display logic

smartsuite_create_application

readwrite + enable_schema_write

smartsuite_update_application

readwrite + enable_schema_write

smartsuite_list_fields

List fields for an application, with help text

smartsuite_describe_field

Detailed field metadata: choice options, help text (+ format), linked-record targets and display format, formula expression + return type, record-title template, auto-number config, and native AI field config

smartsuite_set_field_help_text

readwrite + enable_schema_write

smartsuite_create_field

readwrite + enable_schema_write

smartsuite_create_fields

readwrite + enable_schema_write

smartsuite_update_field

readwrite + enable_schema_write

smartsuite_delete_field

readwrite + enable_schema_write + enable_delete

Formulas

Tool

Mode

Description

smartsuite_analyze_formulas

readonly

Review formula fields. Application-wide: every formula with return type, validity, native complexity score + tier, and structural metrics (function count, nesting depth, reference counts). Pass fieldSlug for one formula's dependency graph — reference chains resolved across linked records and compound sub-fields, rendered as an ASCII tree and a Mermaid flowchart. Add deep: true for the cross-table impact index (record count × link fan-out)

smartsuite_validate_formula

readonly

Validate a formula expression against an application without writing anything. Returns {valid, safe, warnings} or the exact error (syntax, unknown function, missing field reference)

smartsuite_create_formula_field

readwrite + enable_schema_write

Create a formula field. Validates the expression first (an invalid formula is never created); dry-run preview unless confirm: true

smartsuite_update_formula_field

readwrite + enable_schema_write

Update a formula field's expression, label, and/or return type. Validates first; dry-run preview unless confirm: true

Records

Tool

Mode

Description

smartsuite_list_records

readonly

List records with optional sort and field projection; pass ids to fetch specific records by ID

smartsuite_get_record

readonly

Get a record by ID

smartsuite_search_records

readonly

Text search across specified fields

smartsuite_query_records

readonly

Structured filter query

smartsuite_create_record

readwrite

Create a new record

smartsuite_update_record

readwrite

Update one record

smartsuite_update_records

readwrite

Batch update with dry-run support

smartsuite_delete_records

readwrite + enable_delete

Delete records with confirmation

Comments

Tool

Mode

Description

smartsuite_list_comments

readonly

List comments on a record

smartsuite_create_comment

readwrite

Add a comment to a record

Views & Dashboards

Tool

Description

smartsuite_list_views

List views for an application (grid, kanban, calendar, timeline, gantt, map, chart, form). Pass includeConfig: true for each view's filters, sort, group-by, and visible/collapsed fields

smartsuite_describe_view

Full configuration for one view: filters, sort, group-by, visible/collapsed fields, sharing settings. For form views, returns form config (title, submit label, branding, redirect, per-field prefill/help)

smartsuite_list_dashboards

List dashboards for an application with their tabs

smartsuite_describe_dashboard

Full dashboard config: tabs, branding, style. Pass includeWidgets: true to fetch every widget (type, name, position, parsed params) on every tab

Forms

Tool

Mode

Description

smartsuite_list_forms

readonly

List an application's forms with page/field counts, sharing state, and public URL

smartsuite_describe_form

readonly

Full form structure: settings, sharing, and the page-by-page layout (bound fields + content elements, sections, conditions)

smartsuite_create_form

readwrite + enable_schema_write

Create a form; validates label + field slugs. Dry-run unless confirm: true

smartsuite_update_form

readwrite + enable_schema_write

Update form settings, fields, or full formState. Dry-run unless confirm: true

smartsuite_submit_form

readwrite

Submit a form — creates a record through the form's pipeline. Call without values to preview the fields to fill, then with values to submit

Automations

Tool

Description

smartsuite_list_automations

List a solution's automations (id, name, enabled state, trigger, action types). Scoped per solution

smartsuite_describe_automation

Full automation config: trigger and all action groups

smartsuite_describe_automation_step

Resolve one step's full schema: a trigger (label, inputs+options, exposed fields, condition fields) or a chosen action (label, integration, inputs). Select an action with actionIndex/actionInstanceId

smartsuite_get_automation_limits

Workspace automation run usage and plan: plan category, run limit, used, remaining, percent used, enforced

smartsuite_list_automation_credentials

Integration credentials a solution's automations use (Gmail, Slack, Teams, webhooks, …)

smartsuite_list_solution_members

Members available to a solution (id, name, email, job title, status)

smartsuite_create_automation

Create an automation (trigger + actions). Requires readwrite/admin + SMARTSUITE_ENABLE_SCHEMA_WRITE. Pass actions as native actionGroups or a flat actions array; credentialId fills the credential onto trigger/actions. Build the shapes with describe_automation_step on a similar automation

smartsuite_update_automation

Update an automation (label, trigger, actions, timezone) — applies only provided fields, preserves the rest. Trigger/actions you supply replace wholesale. Requires schema-write

smartsuite_delete_automation

Delete an automation. Requires schema-write and SMARTSUITE_ENABLE_DELETE. Previews unless confirm:true. Destructive

My Work

Tool

Mode

Description

smartsuite_list_my_work

readonly

List the authenticated user's assigned work (comment mentions, checklist items, assigned records). Returns a summary (totals, overdue count, breakdowns by type/priority/solution) plus items. Filter by status (open/resolved), period, solution, application, item type, priority, or overdueOnly

smartsuite_update_my_work

readwrite

Update a My Work item: mark it resolved/open and/or set or clear its due date

Record-view layout (sections & tabs)

Edit the sections (labeled field groupings) and tabs on an application's record detail view. A section groups the fields that follow it (until the next section). When tabs are enabled the record view renders per-tab layouts, so the section tools require tabId — a tab id, "all" (every tab), or "top" (the hidden top-level layout) — and refuse a silent top-level write. When tabs are disabled, tabId is omitted. All require readwrite/admin + SMARTSUITE_ENABLE_SCHEMA_WRITE, and preview unless confirm:true.

Tool

Description

smartsuite_add_layout_section

Add a section. Place it after a field with afterField (fields after it fall under the section) or append at the end. Optional description, collapsed, hidden

smartsuite_update_layout_section

Update a section's title / description / collapsed / hidden by its section__… slug

smartsuite_remove_layout_section

Remove a section by slug. Removes only the grouping — fields under it are preserved

smartsuite_add_layout_tab

Add a tab. Enables tabs if off (the first tab mirrors the current layout); optional description, position, and tab-bar style (basic/process/journey) / align

smartsuite_update_layout_tab

Update a tab's name / description / position by tab id, and/or the tab-bar style/align

smartsuite_remove_layout_tab

Remove a tab by id. Fields stay in the top-level layout; removing the last tab disables tabs

smartsuite_move_layout_field

Move/arrange a field in the layout — reorder it, place it under a section (afterField = a field slug or section__ slug), or move it to another tab (toTab = destination tab id). Tabs-aware

smartsuite_set_field_visibility

Hide (hidden:true) or show (hidden:false) a field in the record view via the layout's record-wide hidden_fields list. Dry-run unless confirm:true

smartsuite_set_display_logic

Add/modify/remove display (visibility) logic on a field, section, or tab — show it only when conditions ([{comparison, field, value}], combined by operator) are met; clear:true removes the rule. Dry-run unless confirm:true

Solution migration (schema diff)

Compare a solution across workspaces and produce a diff package, for promoting lower-environment changes up to production. Set your primary workspace to production (the migration target) and read the lower environment via cross-workspace access (SMARTSUITE_ENABLE_CROSS_WORKSPACE). All four are read-only against SmartSuite — they only write local files under SMARTSUITE_MIGRATION_DIR. The diff covers tables, fields, views, and forms in full; dashboards are compared at the report-config level (per-widget contents are not yet diffed).

Tool

Description

smartsuite_match_solutions

Match lower→prod solutions by exact name (ids differ across workspaces). Propose, then confirm:true (+ overrides) to confirm; persists a project mapping file

smartsuite_match_applications

For a confirmed solution pair, match its tables by name (table ids and slugs both regenerate across workspaces); persists the table-id map

smartsuite_diff_schemas

Diff schemas (lower→prod). Fields match by slug; cross-table references remapped and system values ignored, so only real changes surface. scope:"all" (default) also diffs views & forms in full and dashboards at the report-config level (matched by name); scope:"schema" = tables + fields only. Classifies added/removed/modified with per-property detail + compatible/risky risk; writes diff.json

smartsuite_export_diff

Render the diff as XLSX (Summary + Detail tabs) alongside the JSON

SmartDocs

Tool

Mode

Description

smartsuite_get_smartdoc_content

readonly

Read a SmartDoc field as plain text and raw value

smartsuite_append_smartdoc_content

readwrite

Append markdown to a SmartDoc field

Files

Tool

Mode

Description

smartsuite_get_file_url

readonly

Resolve a file field handle to a signed CDN download URL

smartsuite_upload_file

readwrite

Upload a local file to a SmartSuite file field

smartsuite_move_attachments

readwrite

Move (or copy) attachments from one file field to another — one record (recordId) or all records (allRecords). mode append/replace; clearSource false = copy. Dry-run unless confirm:true


Security model

  1. Credentials never reach the LLM. API key and account ID are loaded from environment variables and never included in tool responses or logs.

  2. Secrets are redacted from all log output.

  3. Access mode is enforced server-side. Write tools return a clear error in readonly mode.

  4. Destructive operations require explicit opt-in (SMARTSUITE_ENABLE_DELETE=true) and a confirmation argument.

  5. Batch writes require dry-run acknowledgement or confirm=true.

  6. Application allowlists and denylists prevent access to sensitive tables.

  7. Cross-workspace access is opt-in and read-only. Disabled by default; when enabled, other workspaces can be read but never written, and can be scoped with SMARTSUITE_ALLOWED_WORKSPACES.

  8. All write operations write a local audit log (tool, account, application, record, timestamp, success/failure). Field values are not logged by default.

See SECURITY.md for the full security model.


Troubleshooting

"config error: Missing required environment variable" Set SMARTSUITE_ACCOUNT_ID and SMARTSUITE_API_KEY in your MCP client config.

"SmartSuite API error 401" Check that your API key is correct and not expired.

"This operation is blocked in readonly mode" Set SMARTSUITE_MCP_MODE=readwrite to enable writes.

Tools not appearing in Claude Desktop Restart Claude Desktop after updating the config file.

Logs polluting MCP output Ensure SMARTSUITE_LOG_FILE is set to a file path, or that no other code writes to stdout. The server only writes JSON-RPC to stdout.


Development

# Install dependencies
npm install

# Type-check
npm run typecheck

# Build
npm run build

# Run tests
npm test

# Bundle single file for Docker/MCPB
npm run bundle

# Build and package the Claude Desktop extension (.mcpb)
npm run pack:mcpb
# Output: mcpb/smartsuite-mcp-server-<version>.mcpb

Project structure

src/
  index.ts              Entry point
  server.ts             MCP server bootstrap and tool dispatch
  config.ts             Environment variable loader
  logger.ts             Structured JSON logger (stderr or file)
  errors.ts             Error classes and codes
  auth.ts               SmartSuite auth header builder
  smartSuiteClient.ts   SmartSuite REST API client with schema cache
  workspaces.ts         Workspace resolver (slug/name → slug) and allowlist
  tools/
    registry.ts         Tool definitions (names, schemas, annotations)
    context.ts          Shared tool context type
    diagnostics.ts
    workspaces.ts
    solutions.ts
    applications.ts
    fields.ts
    formulas.ts        Formula analysis, validation, and field create/update
    forms.ts           Form review, create/update, and submit (form-type reports)
    mywork.ts          My Work — the authenticated user's assigned items
    records.read.ts
    records.write.ts
    files.ts
    attachments.ts     Move/copy attachments between file fields
    comments.ts
    views.ts
    automations.ts     Automation review, usage/limits, and create/update/delete
    layout.ts          Record-view layout: sections, tabs, field move, hide/show, display logic
    migration.ts       Solution migration tools (match, diff, export)
    smartdocs.ts
  migration/
    types.ts            Migration mapping + diff data model
    match.ts            Name-matching (solutions, tables)
    normalize.ts        System-noise strip + cross-reference remap
    diff.ts             Schema diff engine (field/table/solution classification)
    project.ts          Per-project mapping/diff file persistence
    xlsx.ts             Dependency-free XLSX writer
  types/
    config.ts           Config interface
    smartsuite.ts       SmartSuite API types
  utils/
    audit.ts            Audit log writer
    pagination.ts       Cursor encode/decode
    prosemirror.ts      ProseMirror/SmartDoc → plain text
    redaction.ts        Secret redaction
    retry.ts            Exponential backoff retry
    safeJson.ts         Safe JSON stringify

License

MIT

Available Tools

85 tools
smartsuite_add_dashboard_widgetA

Add a widget to a dashboard tab. Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true. Supply dashboardId, widgetType, and optionally tabId (defaults to the first tab), name, position {x,y}, size {width,height}, and params. VALID widgetType values — content: text-block-widget, heading-widget, simple-banner-widget, hero-widget, faq-widget, divider-widget; data: list-view-widget, card-view-widget, kanban-view-widget, calendar-view-widget, timeline-view-widget, chart-widget, pivot-widget, summary-card-widget, progress-widget, comparison-widget, filter-widget, record-details-widget, data-schema-widget; other: spacing-widget, button-row-widget, webpage-widget, record-picker-widget, countdown-widget, world-clock-widget (these last six have no auto-fill template — supply params). LAYOUT: x/width are column units (4 = full width), y/height are pixels. If you omit position/size, the widget gets its natural per-type default size (e.g. summary-card/progress/comparison are width 1, height 128; charts width 2; list/calendar width 4) — so metric cards render at the right height. If you omit position, the widget is appended BELOW existing widgets on the tab (not stacked at 0,0, which would overlap/hide widgets) — set position only to place deliberately (e.g. side-by-side metric cards need explicit x). The widget is created with a valid accent color and non-null description/collapsed defaults so the UI highlight-color editor works; pass color (hex) to choose the accent. PARAMS is widget-type-specific and passed through as-is. It is now OPTIONAL: if you omit params, the tool fills a minimal valid template for the widget type (data widgets default to showing the dashboard's own application with sensible default fields), so any of the 19 types can be created with just dashboardId + widgetType. Supply params only to customize — e.g. text-block/heading {content:}, divider {color}, data widgets {solution, application, source, ...window objects, filters, fields}. To customize a data widget precisely, describe an existing widget of the same type (smartsuite_describe_dashboard includeWidgets:true) and adapt it. The response includes filledFromTemplate:true when a default template was used. SUMMARY-CARD (metric) notes: the number renders in params.color — keep it a visible accent (never white/#FFFFFF, or it is invisible on the light card); function_type is count|sum|avg|min|max (avg, NOT "average"); the card needs the drill_in skeleton + appearance/size/mode the template provides; height 156 (128 clips padding). CHART: params must include totals, benchmarks, advanced_options, and categories or it 400s (the template includes them).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoWidget name/title (optional).
sizeNoSize {width, height} — width is column units, height is pixels. Default {width:4, height:200}.
colorNoOptional accent color (hex, e.g. "#3A86FF"). Defaults to a valid color so the UI highlight-color editor works.
tabIdNoTab id to place the widget on (default: first tab).
paramsNoWidget-type-specific configuration, passed through. Data widgets need a source; copy the shape from an existing widget of the same type.
positionNoGrid position {x, y} — x is column units, y is pixels. Default {0,0}.
widgetTypeYesOne of the 19 valid widget types (content or data) listed in the tool description.
dashboardIdYesThe dashboard (report) ID.

TDQS

A4.7/5.0
Behavior5/5

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

Discloses numerous behaviors: default position appends below, template filling for params, column/pixel units, default sizes per type, accent color defaults, and specific notes for summary-card/chart. All beyond 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?

Well-structured with front-loaded purpose, but quite verbose. Information is valuable and logically ordered, but could be more concise.

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?

Covers all aspects: prerequisites, defaults, special cases (summary-card, chart), and error conditions. No output schema but mentions response field. Complete for tool complexity.

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

Parameters5/5

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

Adds rich meaning beyond schema: explains widget type categories, layout units, defaults, and optional template filling. Compensates for schema's lack of enum values.

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?

Clearly states action and resource: 'Add a widget to a dashboard tab.' Distinguishes from sibling tools like update and remove.

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?

Lists prerequisites (readwrite/admin mode, env var) and provides extensive how-to guidance. Lacks explicit when-not-to-use but context clarifies purpose.

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

smartsuite_add_layout_sectionA

Add a section (a labeled grouping) to an application's record-view layout. Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE. A section groups the fields that follow it (until the next section) in the record detail view. By default edits the top-level layout; pass tabId to edit a specific tab's layout when tabs are enabled. Place it after a field with afterField (the section appears just after that field; fields after it fall under the section), or omit to append at the end. Dry-run preview unless confirm:true.

ParametersJSON Schema
NameRequiredDescriptionDefault
tabIdNoWhich layout to edit when tabs are enabled (REQUIRED then): a tab id, "all" for every tab, or "top" for the hidden top-level layout. Omit only when tabs are disabled.
titleYesSection title.
hiddenNoHidden section (default false).
confirmNoMust be true to apply (default false = preview).
collapsedNoStart collapsed (default false).
afterFieldNoOptional field slug to place the section after (default: append at end).
descriptionNoOptional section description (plain text; blank lines start new paragraphs).
applicationIdYesThe application (table) ID.

TDQS

A4.1/5.0
Behavior4/5

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

Beyond annotations (readOnlyHint: false), the description adds critical behavioral details: it is a write operation, requires specific permissions, defaults to preview unless confirm:true, and explains how sections group subsequent fields. This goes well beyond the annotation, though it doesn't cover side effects like order changes.

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?

The description is moderately concise and well-structured, starting with purpose, then requirements, then behavior and parameter usage. Each sentence adds value, but it could be slightly more compact without losing clarity.

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?

Given no output schema and 8 parameters, the description covers the tool's purpose, effect, parameter usage, and prerequisites. It is complete enough for an agent to use the tool correctly, though it does not describe return values (acceptable without output schema).

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%, but the description adds meaningful context for key parameters like afterField (placement logic), confirm (dry-run vs apply), and tabId (layout targeting). This enhances understanding beyond the schema descriptions.

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 clearly states 'Add a section (a labeled grouping) to an application's record-view layout,' specifying the verb (add), resource (section), and target (record-view layout). It distinguishes from siblings like smartsuite_update_layout_section by focusing on addition.

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?

The description mentions prerequisites (readwrite/admin mode, SMARTSUITE_ENABLE_SCHEMA_WRITE) and explains positioning behavior, but does not explicitly guide when to use this versus alternatives like update_layout_section or remove_layout_section. It provides context but lacks direct when-to-use/when-not-to-use guidance.

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

smartsuite_add_layout_tabA

Add a tab to an application's record-view layout. Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE. Enables tabs if not already on (the first tab mirrors the current top-level layout so existing fields stay visible; later tabs start empty). Optional description, position (0-based; default end), and tab-bar style ("basic"/"process"/"journey") / align (container-level). Dry-run preview unless confirm:true.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesTab name.
alignNoOptional tab-bar alignment (e.g. "left").
styleNoOptional tab-bar style for the whole table.
confirmNoMust be true to apply (default false = preview).
positionNoOptional 0-based position (default: append at end).
descriptionNoOptional tab description (plain text).
applicationIdYesThe application (table) ID.

TDQS

A4.6/5.0
Behavior5/5

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

The description discloses side effects such as enabling tabs if not already on, first tab mirroring layout, and dry-run preview. This adds context beyond the readOnlyHint=false annotation, without contradiction.

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?

The description is a single, dense paragraph that efficiently conveys all necessary information. It is front-loaded with the core action, though the detail could be slightly more structured.

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?

Given the lack of output schema, the description thoroughly explains what the tool does, including dry-run behavior and tab enabling logic. It covers all 7 parameters and their interplay comprehensively.

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%, but the description adds meaning by explaining that 'position' is 0-based, 'style' is for tab-bar, 'align' is container-level, and 'confirm' is required to apply. It also notes that description is optional.

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 clearly states 'Add a tab to an application's record-view layout' with a specific verb and resource, and it distinguishes this tool from siblings like smartsuite_remove_layout_tab and smartsuite_update_layout_tab.

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 explicitly mentions requirements: 'Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE' and explains the dry-run behavior. However, it does not explicitly state when not to use it or provide alternatives.

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

smartsuite_analyze_formulasA
Read-only

Review and analyze formula fields in a SmartSuite application. Without fieldSlug: returns every formula field with its return type, validity (valid:false = broken formula), native complexity score + tier, and structural metrics (function count, nesting depth, reference counts) — sortable by name or score. With fieldSlug: returns full detail for one formula plus its dependency graph (resolved [field].[field] reference chains across linked tables) as both an ASCII tree and a Mermaid flowchart. Set deep:true to also compute the cross-table Impact Index (samples record counts and link fan-out — several extra API calls).

ParametersJSON Schema
NameRequiredDescriptionDefault
deepNoWhen fieldSlug is set, also compute the chain-aware Impact Index (record count × link fan-out). Heavier — fires extra record-list calls. Default false.
sortByNoSummary sort order (default name). Ignored when fieldSlug is set.
fieldSlugNoOptional. A specific formula field slug to get full detail + dependency graph. Omit for an application-wide summary of all formula fields.
applicationIdYesThe application ID

TDQS

A4.4/5.0
Behavior4/5

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

Describes return values (validity, complexity, structural metrics, dependency graph, impact index) and notes extra API calls for deep:true. Annotations already indicate read-only, no contradiction.

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?

Efficiently organized by mode, though packed with details. Could be slightly more concise but well-structured.

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?

No output schema, but description comprehensively details return values for both modes. Covers edge cases (deep:true) and format (ASCII tree, Mermaid flowchart).

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 baseline 3. Adds extra meaning: fieldSlug triggers full detail+dependency graph, sortBy ignored when fieldSlug set, deep:true triggers heavier computation.

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?

Clearly states two modes: summary of all formula fields (without fieldSlug) and detailed analysis of one formula (with fieldSlug). Distinguishes from siblings like smartsuite_validate_formula and smartsuite_create_formula_field.

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?

Explains when to use each mode and the deep parameter. Lacks explicit 'when not to use' but context is sufficient.

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

smartsuite_append_smartdoc_contentA

Append markdown content to a SmartDoc field. Requires readwrite or admin mode. Does not replace existing content.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNoMust be true to execute
contentYesMarkdown content to append
recordIdYesThe record ID
fieldSlugYesThe SmartDoc field slug
applicationIdYesThe application ID

TDQS

A3.7/5.0
Behavior3/5

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

The description explicitly states that the tool does not replace existing content, which adds behavioral information beyond the readOnlyHint annotation (false). However, it does not disclose potential side effects, error conditions, or rate limits, leaving gaps in transparency.

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?

The description is extremely concise with only two sentences, each serving a distinct purpose: stating the action and mode requirement, and clarifying behavioral impact. No extraneous text.

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?

Given the tool's simplicity and lack of output schema, the description covers the core purpose and mode requirements. However, it omits details about response format, error scenarios (e.g., invalid field or record), and the confirm parameter's role, leaving some ambiguity for the agent.

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 coverage is 100%, so the input schema already describes all parameters. The tool description does not add any additional parameter-level meaning beyond what is in the schema, leading to a baseline score of 3.

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?

Clearly states the tool appends markdown content to a SmartDoc field, distinguishing it from sibling tools like smartsuite_get_smartdoc_content. The verb 'append' and resource 'SmartDoc field' are specific and unambiguous.

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?

Mentions that readwrite or admin mode is required, providing some usage context. However, it does not specify when to use this tool over alternatives, nor does it provide 'when-not-to-use' guidance. Additional context on when to prefer appending versus overwriting would be helpful.

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

smartsuite_create_applicationA

Create a new table (application) in a solution. Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true. Supply a name and the solutionId. The table is created with a default "Title" primary field and a record term ("what each record is called", default "Record") — the record term is always set explicitly so it is never left empty (an empty record term can break list-view/grid widget creation against the table). PASS fields TO CREATE THE TABLE AND ALL ITS FIELDS IN ONE REQUEST: an array of { fieldType, label, params? } entries (same shape as smartsuite_create_field). This is the ONLY true bulk field path SmartSuite offers and it is dramatically faster than adding fields afterwards — one request for all of them, versus ~1s per field via smartsuite_create_fields against an existing table. So when a table is new, always create its fields here. SmartSuite also adds its own default field set (Title, Description, Assigned To, Status, Due Date, Priority, …) alongside yours. Dry-run preview unless confirm:true.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesThe table name.
fieldsNoOptional: fields to provision inline with the table, in order — all in this single request. Each entry: { fieldType, label, params? }, same semantics as smartsuite_create_field. aiPrompt is not supported here (the fields it would reference do not exist yet); set AI prompts after the table exists.
confirmNoSet true to create; otherwise returns a dry-run preview.
recordTermNoWhat each record is called (singular), e.g. "Request". Defaults to "Record".
solutionIdYesThe solution to create the table in.

TDQS

A5/5.0
Behavior5/5

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

Beyond the minimal annotation (readOnlyHint: false), the description discloses several important behaviors: SmartSuite adds a default field set, a default Title primary field is created, recordTerm is set explicitly to avoid broken list/grid widgets, and the call is a dry-run unless confirm:true. This significantly exceeds what annotations alone convey.

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?

The description is long but densely informative; every sentence contributes either a requirement, an alternative, a side effect, or a rationale. The core action and prerequisites are front-loaded, and the key instructions about using fields inline and the dry-run behavior are clearly emphasized.

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?

For a complex creation tool with no output schema and sparse annotations, the description covers the essential operational details: required permissions, side effects on the table, the bulk field path, the default field set, the recordTerm risk, and the confirm gate. An agent can invoke this tool correctly without needing additional context.

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

Parameters5/5

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

Even though schema coverage is 100%, the description adds meaningful parameter context: fields reuse the smartsuite_create_field shape, aiPrompt is unsupported at table creation, recordTerm is described with the widget-breaking pitfall, and confirm's dry-run semantics are reinforced. This goes beyond the schema descriptions.

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 opens with a specific verb and resource: "Create a new table (application) in a solution." It clarifies that 'application' means table and distinguishes this from field-creation tools by naming smartsuite_create_field and smartsuite_create_fields as alternatives for existing tables.

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 explicitly states requirements (readwrite/admin mode and SMARTSUITE_ENABLE_SCHEMA_WRITE=true), when to use this tool (when a table is new), and when to use alternatives (adding fields afterwards via smartsuite_create_fields). It also explains the dry-run behavior and confirm flag, leaving no ambiguity about invocation.

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

smartsuite_create_automationA

Create an automation in a solution. Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true. You supply the trigger (an object with trigger_reference.trigger_id and inputs) and the actions; use smartsuite_describe_automation_step on a similar existing automation to learn the exact trigger/action/input shapes and option values. Pass actions either as the native nested actionGroups ([{actions:{actions:[...]}}]) or as a flat actions array (wrapped into one group automatically). Pass credentialId once to fill it onto the trigger and every action that omits one. automaticDescription (the UI display phrase) and timezone are optional.

ParametersJSON Schema
NameRequiredDescriptionDefault
labelYesAutomation name.
actionsNoFlat list of action objects; wrapped into a single action group. Each: { action_reference:{integration_id, action_id, instance_id}, credential_id?, inputs:[...], record_list?:{...} }.
triggerYesTrigger object: { trigger_reference:{integration_id, trigger_id}, credential_id?, inputs:[...], conditions?:{...} }.
timezoneNoOptional IANA timezone (e.g. America/Chicago).
solutionIdYesThe solution ID the automation belongs to.
actionGroupsNoNative action groups: [{actions:{actions:[<action>...]}}]. Mutually exclusive with `actions`.
credentialIdNoOptional: fill this credential_id onto the trigger and any action missing one.
automaticDescriptionNoOptional UI display phrase (phrase-builder JSON string). Omit to leave blank.

TDQS

A4.5/5.0
Behavior5/5

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

Annotations only provide readOnlyHint=false, so the description carries the full burden. It discloses the required readwrite/admin mode and environment variable, explains credentialId propagation, describes two action passing formats, and notes optional fields. This adds significant behavioral context beyond what annotations offer.

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?

The description is a single paragraph of moderate length, front-loaded with the core purpose and prerequisites. It is efficient without unnecessary repetition, though it could benefit from bullet points or more structured formatting for high scanability.

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?

Given the complexity (nested objects, optional parameters, alternative inputs), the description covers prerequisites, shape discovery, action formats, credential propagation, and optional fields. It does not detail return values or errors, but lacks output schema and sibling tools cover those aspects. Overall, it is fairly complete for a create tool.

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%, but the description adds meaning: it explains the mutual exclusivity of 'actions' and 'actionGroups', how 'credentialId' fills gaps, and that 'automaticDescription' is a phrase-builder JSON string. This clarifies usage beyond the schema's property descriptions.

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 clearly states 'Create an automation in a solution' with a specific verb and resource. It distinguishes itself from sibling tools like smartsuite_update_automation and smartsuite_describe_automation by being the only creation tool for automations, making intent unambiguous.

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?

The description provides prerequisites (readwrite/admin mode, SMARTSUITE_ENABLE_SCHEMA_WRITE=true) and recommends using smartsuite_describe_automation_step for learning trigger/action shapes. It covers key usage context but does not explicitly state when not to use this tool (e.g., for updates vs creation), though it is implied.

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

smartsuite_create_commentA

Add a comment to a SmartSuite record. Requires readwrite or admin mode.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesComment text
recordIdYesThe record ID
applicationIdYesThe application ID

TDQS

A4.2/5.0
Behavior4/5

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

The description confirms the write operation (consistent with readOnlyHint=false) and adds the mode requirement, providing behavioral context beyond annotations. No side effects or response details are mentioned, but the core behavior is transparent.

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?

The description is two sentences, front-loaded with the primary action. Every sentence adds value: the first states what the tool does, the second adds a critical usage constraint. No unnecessary words.

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?

For a simple create tool with three parameters and no output schema, the description covers the purpose and access requirement. It lacks return value or success behavior, but given the simplicity, it is nearly complete.

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 coverage is 100%, and the description does not add any additional meaning or formatting guidance beyond the schema's parameter descriptions. The baseline of 3 is appropriate as the schema already documents the parameters adequately.

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 clearly states the action ('Add a comment') and target ('to a SmartSuite record'), with a specific verb and resource. It distinguishes from the sibling tool 'list_comments' by focusing on creation.

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?

The description specifies a prerequisite ('Requires readwrite or admin mode'), guiding when the tool can be used. However, it does not provide explicit guidance on when to use this tool over alternatives (e.g., other add-content tools) or when not to use it.

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

smartsuite_create_dashboardA

Create a dashboard in an application. Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true. Supply applicationId and a unique label (checked; suggests an alternative if taken). Optionally pass tabs (array of tab names, or {name, order} objects) — otherwise one default tab is created. Add widgets afterward with smartsuite_add_dashboard_widget. Dry-run preview unless confirm:true.

ParametersJSON Schema
NameRequiredDescriptionDefault
tabsNoOptional tab names (strings) or {name, order} objects. Default: one tab named "Tab".
labelYesDashboard name (unique within the application).
confirmNoSet true to create; otherwise returns a dry-run preview.
descriptionNoOptional description.
applicationIdYesThe application ID the dashboard belongs to.

TDQS

A4.7/5.0
Behavior5/5

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

The description openly discloses key behaviors: dry-run capability (unless confirm:true), label uniqueness check (with alternative suggestion), and the requirement for readwrite/admin mode and the environment variable. These details go beyond the annotations (readOnlyHint: false) and provide actionable transparency.

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?

The description is concise (3-4 sentences) and well-structured: it starts with the primary purpose, followed by prerequisites, behavior notes, and a sibling reference. Every sentence adds value without redundancy.

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?

For a creation tool with no output schema, the description adequately covers inputs, behavior (dry-run, uniqueness), and outcome (creation or preview). It also provides a logical next step (adding widgets). No missing critical information is apparent.

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?

While the input schema covers all 5 parameters with descriptions, the description adds meaningful semantics: it explains the dual type for tabs (strings or objects) and the default tab behavior, clarifies the confirm parameter's dry-run effect, and emphasizes label uniqueness checks. This enhances understanding beyond the schema.

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 clearly states the action ('Create a dashboard in an application'), specifies the resource ('dashboard') and context ('in an application'), and differentiates from sibling tools like smartsuite_add_dashboard_widget by noting it is used afterward.

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?

The description provides clear context for when to use the tool (creating a dashboard) and prerequisites (readwrite/admin mode and environment variable). It also guides the agent on post-creation steps (use smartsuite_add_dashboard_widget). However, it does not explicitly state when not to use it or compare with similar creation tools.

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

smartsuite_create_fieldA

Create a field of any type in an application (including rollup and lookup fields — not just formulas). Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true. You supply fieldType + label and an OPTIONAL sparse params object; SmartSuite fills type defaults, so most fields need no params. Provide params only where they matter, e.g.: singleselectfield/multipleselectfield/statusfield → {choices:[{label, value_help_text?, weight?}]} where value_help_text is the option DESCRIPTION shown in the dropdown and weight is its NUMERIC value (used by formulas/rollups); e.g. {choices:[{label:"High", value_help_text:"Ship this week", weight:3}]}. Choice colors and order are auto-assigned if omitted so the dropdown renders correctly (status choices take no weight/description); linkedrecordfield → {linked_application:"", entries_allowed:"single"|"multiple"} (backlink auto-created); rollupfield → {linked_field:"", field_selection:"", function:"sum"|"count"|"min"|"max"|"average"|"concatenate"|...}; lookupfield → {linked_field, field_selection}; numberfield → {precision, separator}; currencyfield → {currency:"USD"}; textfield → {max_length}. (For formula fields use smartsuite_create_formula_field.) AI FIELDS: to make a field AI-populated, pass aiPrompt — a plain-text prompt where {{field_slug}} inserts a live reference to another field (e.g. "Summarize {{title}} for {{s096c9e74e}}"). The tool builds the correct rich-text instructions with field-reference pills and enables the AI agent; put the AI model/credential and other ai_agent settings in params.ai_agent if needed. (This is the reliable way to set dynamic AI prompts — do NOT hand-build ai_agent.instructions.) The slug is generated and the field is placed in the record-view layout. Dry-run preview unless confirm:true.

ParametersJSON Schema
NameRequiredDescriptionDefault
labelYesField display label.
paramsNoOptional sparse field params; omit to accept type defaults. See the tool description for which params each type needs.
confirmNoMust be true to create (default false = preview).
aiPromptNoOptional: make this an AI-populated field. Plain-text prompt where {{field_slug}} inserts a live reference to another field. The tool builds the rich-text AI instructions (with field pills) and enables the AI agent.
fieldTypeYesSmartSuite field type, e.g. textfield, textareafield, richtextareafield, numberfield, currencyfield, percentfield, datefield, duedatefield, singleselectfield, multipleselectfield, statusfield, yesnofield, linkedrecordfield, userfield, emailfield, phonefield, linkfield, filefield, addressfield, ratingfield, durationfield, timefield, checklistfield, tagsfield, colorpickerfield.
applicationIdYesThe application (table) ID.

TDQS

A4.8/5.0
Behavior5/5

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

Annotations carry only readOnlyHint=false, so the description bears the full behavioral burden and discharges it thoroughly: dry-run preview unless confirm:true, SmartSuite auto-filling defaults, auto-assigned choice colors/order, auto-created backlinks, AI instructions auto-built with field-reference pills plus an explicit 'do NOT hand-build ai_agent.instructions' warning, auto-generated slug, and auto-placement in the record-view layout. No contradiction with 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?

The description is long, but for a tool covering 20+ field types plus an AI sub-feature, every block earns its place: purpose and requirements are front-loaded, followed by the sparse-params pattern, type-specific examples, sibling routing, the AI special case, and closing behavioral notes. Dense and logically ordered; only marginally trimable.

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?

For a 6-parameter tool with nested objects and no output schema, the description is nearly complete on invocation and behavior, including the non-obvious dry-run default and the env-var gate. The one gap is that it never states what the tool returns on successful creation or what the dry-run preview actually shows, though slug generation is mentioned.

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

Parameters5/5

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

Schema coverage is 100%, and the schema's params field explicitly defers to the description ('See the tool description for which params each type needs'). The description delivers concrete per-type semantics beyond the schema: choices with value_help_text/weight, linked_application/entries_allowed, linked_field/field_selection/function, precision/separator, currency, max_length, and the aiPrompt {{field_slug}} mechanism.

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?

States a specific verb+resource ('Create a field of any type in an application') and immediately distinguishes scope by adding 'including rollup and lookup fields — not just formulas', then routes formula work to smartsuite_create_formula_field. An agent can tell this tool apart from its siblings without opening the 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?

Explicitly names the alternative ('For formula fields use smartsuite_create_formula_field'), states hard prerequisites (readwrite/admin mode and SMARTSUITE_ENABLE_SCHEMA_WRITE=true), and gives the sparse-params rule ('Provide params only where they matter'). Also clarifies the dry-run vs confirm:true execution path, leaving no ambiguity about when this tool actually creates.

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

smartsuite_create_fieldsA

Create MULTIPLE fields in one call — use this instead of calling smartsuite_create_field repeatedly. Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true. Pass applicationId and fields: an array of { fieldType, label, params?, aiPrompt? } entries with exactly the same shape and semantics as smartsuite_create_field (see that tool for the per-type params guide). Slugs are generated. Every entry is validated before anything is written, so a malformed entry fails the whole call cleanly rather than half-creating the batch. Note SmartSuite has no bulk add-field API, so this performs one request per field (~1s each — a 20-field batch takes ~20s); it is sequential on purpose, because parallel field adds get rate-limited and silently drop fields. If a field fails, the batch continues and the result reports every field individually with created:true/false plus the error, so you can re-call with just the failures. Fields append to the end of the table in the order given (SmartSuite ignores field positioning on create — use smartsuite_move_layout_field to rearrange). TO CREATE A TABLE AND ITS FIELDS TOGETHER, pass fields to smartsuite_create_application instead — that provisions all of them in a SINGLE request and is far faster. Dry-run preview unless confirm:true.

ParametersJSON Schema
NameRequiredDescriptionDefault
fieldsYesThe fields to create, in order. Each entry: { fieldType, label, params?, aiPrompt? } — same semantics as smartsuite_create_field.
confirmNoMust be true to create (default false = preview).
applicationIdYesThe application (table) ID to add the fields to.

TDQS

A4.9/5.0
Behavior5/5

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

With only readOnlyHint=false in annotations, the description carries the full behavioral burden and delivers thoroughly. It discloses that all entries are validated before writes, failed fields do not abort the batch, the call performs one request per field due to API limitations, sequential execution avoids rate limits and dropped fields, and fields append to the end of the table. This is rich, non-obvious behavior that annotations alone could never convey.

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?

The description is long but every clause earns its place: alternative routing, prerequisites, validation guarantees, performance expectations, failure semantics, ordering behavior, and an alternative batch path. Critical operational guidance is front-loaded, and no filler or tautological phrasing is present. The density is justified by the tool's complexity.

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?

For a batch mutation tool with no output schema, this description is remarkably complete. It covers when to use it, prerequisites, validation behavior, performance characteristics, failure handling, result reporting format (created:true/false plus error), positioning semantics, a faster alternative, and the dry-run behavior. An agent has everything needed to invoke it correctly and recover from partial failures.

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?

The input schema already documents all parameters at 100% coverage, so the baseline is 3. The description adds meaningful semantics beyond the schema: it specifies the exact entry shape, references smartsuite_create_field's per-type params guide for shared semantics, clarifies that slugs are generated, and explains order significance and failure-reporting implications. This goes beyond schema repetition without needing to document every fieldType-specific option.

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 opens with a specific verb and resource: 'Create MULTIPLE fields in one call.' It immediately distinguishes itself from the sibling smartsuite_create_field by framing it as the bulk alternative, so an agent knows exactly what this tool does and how it differs.

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?

The description explicitly tells the agent when to use this tool instead of repeatedly calling smartsuite_create_field, and when to use smartsuite_create_application instead for table-plus-fields creation. It also provides prerequisites (readwrite/admin mode, SMARTSUITE_ENABLE_SCHEMA_WRITE=true) and the confirm:true requirement, leaving no ambiguity about invocation conditions.

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

smartsuite_create_formA

Create a new form for a SmartSuite application. Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true. The label is checked for uniqueness and any supplied field slugs are validated against the application schema first. Without confirm:true returns a dry-run preview; set confirm:true to create. Optionally seed the first input page with fields and set form settings.

ParametersJSON Schema
NameRequiredDescriptionDefault
labelYesForm name (must be unique among the application's reports)
titleNoForm title shown to submitters
fieldsNoOptional fields to place on the first input page. Each item is a field slug string, or an object { slug, required, label, helpText }.
confirmNoMust be true to create. Omit/false for a dry-run preview.
descriptionNoForm description
submitLabelNoSubmit button label
applicationIdYesThe application ID the form submits into
redirectToUrlNoURL to redirect to after submission
displaySmartSuiteBrandingNoShow SmartSuite branding on the form

TDQS

A4.2/5.0
Behavior4/5

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

Annotations indicate readOnlyHint=false, so the agent knows this is a write operation. The description adds context: it checks label uniqueness, validates field slugs against the application schema, and supports a dry-run mode. These details go beyond the 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?

The description is a single dense paragraph. It covers all critical information without unnecessary fluff. While not broken into sections for readability, it is concise and front-loaded with the core action and prerequisites.

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?

With 9 parameters and no output schema, the description omits what the tool returns (e.g., the created form object or ID). It covers creation behavior and prerequisites well but lacks completeness on return value, which could hinder agent understanding.

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%, yet the description adds value by explaining the uniqueness constraint on label, the validation of field slugs, and the semantics of the confirm parameter (dry-run vs. create). This supplements the schema's parameter descriptions.

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?

Clearly states 'Create a new form for a SmartSuite application.' The verb and resource are explicit, and the function is distinct from sibling tools like smartsuite_list_forms or smartsuite_update_form.

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?

Provides explicit prerequisites: 'Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true.' Also explains the dry-run behavior vs. actual creation via the confirm parameter. However, it does not explicitly mention when not to use or list alternative tools for similar tasks.

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

smartsuite_create_formula_fieldA

Create a new formula field in a SmartSuite application. Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true. The expression is validated first — an invalid formula is never created. Without confirm:true returns a dry-run preview (validation result + what would be created); set confirm:true to create. The field slug is generated automatically and the field is appended to the end of the table (SmartSuite ignores field positioning on create — use smartsuite_move_layout_field to rearrange).

ParametersJSON Schema
NameRequiredDescriptionDefault
labelYesDisplay label for the new field
confirmNoMust be true to actually create. Omit/false for a validate-only dry run.
formulaYesThe formula expression
returnTypeNoOutput field type (default textfield). One of: textfield, numberfield, datefield, currencyfield, percentfield, singleselectfield, statusfield, yesnofield, emailfield, phonefield, durationfield, timefield, daterangefield, duedatefield.
applicationIdYesThe application ID

TDQS

A4.5/5.0
Behavior5/5

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

The description discloses several non-obvious behaviors: validation before creation, dry-run behavior without confirm, automatic slug generation, append-to-end positioning, and that SmartSuite ignores field positioning. The annotation only says readOnlyHint=false, so the description carries the full burden and exceeds it.

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?

The description is concise but information-dense, with every sentence contributing a distinct behavioral fact. It is front-loaded with the core purpose, then prerequisites, then behavior, and ends with a useful pointer to a sibling tool.

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?

For a write tool with no output schema, the description covers prerequisites, validation, dry-run semantics, exact confirm behavior, auto slug, positioning behavior, and the relevant alternative. Nothing critical is missing for an agent to invoke this tool correctly.

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 100%, so the baseline is 3. The description reinforces the confirm behavior that the schema already documents and adds context about validation and auto slug, but it does not add new per-parameter semantics beyond the schema. This is adequate compensation given full schema coverage.

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 opens with a specific verb and resource: 'Create a new formula field in a SmartSuite application.' It clearly distinguishes this from sibling tools like smartsuite_validate_formula, smartsuite_update_formula_field, and generic smartsuite_create_field by focusing on formula fields and the create action.

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?

The description provides explicit prerequisites (readwrite/admin mode and SMARTSUITE_ENABLE_SCHEMA_WRITE=true) and explains the confirm:true requirement for actually creating versus dry-run. It also points to smartsuite_move_layout_field for rearrangement, though it does not explicitly contrast with smartsuite_validate_formula or smartsuite_create_field.

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

smartsuite_create_recordA

Create a new record in a SmartSuite application. Requires readwrite or admin mode. Call smartsuite_describe_application first to learn field slugs.

ParametersJSON Schema
NameRequiredDescriptionDefault
fieldsYesField values keyed by field slug
applicationIdYesThe application ID

TDQS

A4/5.0
Behavior3/5

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

The description notes the non-read-only nature (consistent with annotations) and adds mode prerequisites. However, it does not disclose side effects, error handling, or the return format, which limits transparency beyond annotations.

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 concise sentences cover purpose, prerequisites, and a usage tip. No redundant 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?

Given the tool's simplicity, the description includes key context (mode, prerequisite) and is complete enough for basic use. The lack of output schema details is a minor gap, but the prerequisite guidance adds value.

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 100%, so the description does not add meaning beyond what is already in the schema. The mention of field values keyed by slug is already present in the field's description.

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 clearly states the tool creates a new record in a SmartSuite application, with a specific verb and resource. It distinguishes itself from siblings like update_record and delete_record by focusing on creation.

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?

The description specifies required access mode (readwrite or admin) and suggests calling smartsuite_describe_application first to learn field slugs. This provides clear context for usage, though it does not explicitly mention when not to use or list alternatives.

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

smartsuite_create_recordsA

Batch-create multiple records in one call. Requires readwrite or admin mode. Supports dry-run (default) then confirm. Respects the server batch-size cap (SMARTSUITE_MAX_BATCH_WRITES). Returns created record IDs and any per-row failures. Call smartsuite_describe_application first to learn field slugs.

ParametersJSON Schema
NameRequiredDescriptionDefault
dryRunNoIf true, validate/preview without writing (default true).
confirmNoMust be true to execute when dryRun is false.
recordsYesRecords to create — each an object of field values keyed by slug.
applicationIdYesThe application ID

TDQS

A4.5/5.0
Behavior5/5

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

The description adds significant behavioral context beyond the readOnlyHint=false annotation: it specifies authentication mode requirements, the dry-run/confirm two-phase execution model, respect for SMARTSUITE_MAX_BATCH_WRITES, and return values (IDs and per-row failures). No contradiction with annotations.

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?

Four sentences, front-loaded with purpose, each sentence adding value. No filler. Efficient and clear.

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?

Despite no output schema, the description covers return values, prerequisites, batch limits, and workflow. For a batch create tool with 4 parameters, this is comprehensive.

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 coverage is 100%, so baseline is 3. The description adds the dry-run/confirm workflow context but doesn't significantly elaborate on individual parameter formats beyond what the schema provides. The mention of 'field values keyed by slug' is already in the schema.

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 clearly states 'Batch-create multiple records in one call.' This is a specific verb+resource, and the name 'smartsuite_create_records' distinguishes it from the singular 'smartsuite_create_record' and other siblings like 'smartsuite_update_records'.

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?

The description provides explicit prerequisites: requires readwrite/admin mode, dry-run workflow, batch-size cap respect, and a prerequisite to call smartsuite_describe_application. It lacks explicit when-not-to-use guidance, but the name and context suffice.

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

smartsuite_create_solutionA

Create a new solution. Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true. Only a name is required; the server assigns a slug, a default logo, and private-to-you permissions. Optionally set logoIcon and logoColor. Add tables to it with smartsuite_create_application. Dry-run preview unless confirm:true.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesThe solution name.
confirmNoSet true to create; otherwise returns a dry-run preview.
logoIconNoOptional icon name for the solution logo.
logoColorNoOptional hex color for the solution logo (e.g. "#3A86FF").

TDQS

A4.6/5.0
Behavior5/5

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

The description discloses behavioral traits beyond annotations: requires specific mode and environment variable (readwrite/admin mode, SMARTSUITE_ENABLE_SCHEMA_WRITE=true), explains that the server assigns slug, default logo, and permissions, and details the dry-run preview unless confirm:true. This adds significant context missing 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.

Conciseness5/5

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

The description is highly concise and front-loaded. The first sentence states the core action and prerequisites. Subsequent sentences add essential details about required/optional parameters, related tools, and confirm flag behavior. Every sentence contributes meaning without redundancy.

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?

Given the lack of an output schema, the description adequately covers the creation process, permissions, and usage pattern. It could optionally mention what a dry-run preview returns, but overall it is sufficiently complete for an agent to invoke this tool 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?

The input schema already covers all parameters with descriptions (100% coverage). The description adds value by clarifying that only name is required, that logoIcon and logoColor are optional, and explaining the confirm parameter's effect (dry-run vs actual creation). This provides context beyond the schema.

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 clearly states 'Create a new solution' with specific action and resource. It distinguishes from sibling tools by referencing smartsuite_create_application for adding tables, and includes necessary context like permission requirements.

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?

The description explains that only a name is required, optional parameters (logoIcon, logoColor), and the dry-run behavior controlled by the confirm flag. It also mentions that tables are added via another tool (smartsuite_create_application), providing usage guidance. However, it does not explicitly state when to use or avoid this tool versus alternatives.

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

smartsuite_create_viewA

Create a view (report) in an application. Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true. Supply applicationId, label (must be unique — the tool checks and suggests an alternative if taken), and viewMode (grid, card, kanban, calendar, timeline, gantt, chart, map). Optionally set the initial configuration: visibleFields (array of field slugs), filters (array of {field, comparison, value}) with filterOperator ("and"/"or"), sort (array of {field, direction:"asc"|"desc"}), and groupBy (array of {field,...}). Omit config to create a view with SmartSuite defaults. Field slugs are validated against the schema. Dry-run preview unless confirm:true. (For forms use smartsuite_create_form; dashboards are separate.)

ParametersJSON Schema
NameRequiredDescriptionDefault
sortNoOptional: sort rules [{field, direction:"asc"|"desc"}].
labelYesThe view name (must be unique within the application).
confirmNoSet true to create; otherwise returns a dry-run preview.
filtersNoOptional: filter conditions [{field, comparison, value}].
groupByNoOptional: group-by rules [{field, ...}].
viewModeYesView type: grid, card, kanban, calendar, timeline, gantt, chart, or map.
descriptionNoOptional view description.
applicationIdYesThe application ID the view belongs to.
visibleFieldsNoOptional: field slugs to show, in order.
filterOperatorNoCombine filters with AND or OR (default and).

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the readOnlyHint=false annotation, the description discloses behavioral traits: required mode/env var, label uniqueness validation with alternative suggestion, dry-run preview unless confirm:true, field slug validation against schema. No annotation contradiction.

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?

The description is reasonably concise given the tool's complexity. It fronts the purpose and prerequisites, then proceeds logically through parameters and behavior. Each sentence adds value, though it could be slightly more compact.

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?

For a 10-parameter creation tool with no output schema, the description covers purpose, prerequisites, parameters, behaviors (dry-run, uniqueness), and distinctions from related tools. It lacks explicit mention of the return value on success, but overall it's highly informative.

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 description coverage is 100%, but the description adds significant meaning: explains label uniqueness logic, enumerates view modes explicitly, describes optional config fields (visibleFields, filters, sort, groupBy), and the filterOperator enum. This goes beyond the schema descriptions.

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 starts with 'Create a view (report) in an application,' providing a specific verb and resource. It explicitly distinguishes from forms and dashboards by mentioning alternatives, making the purpose clear and unambiguous.

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?

Prerequisites are explicitly stated ('requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true'). The description explains the uniqueness check for labels and the dry-run confirmation flow. It also directs users to smartsuite_create_form for forms and notes that dashboards are separate.

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

smartsuite_delete_automationA
Destructive

Delete an automation. Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true AND SMARTSUITE_ENABLE_DELETE=true. Without confirm:true it returns a preview of what would be deleted; pass confirm:true to permanently delete. Destructive — cannot be undone.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNoMust be true to actually delete (default false = preview only).
solutionIdYesThe solution ID the automation belongs to.
automationIdYesThe automation ID to delete.

TDQS

A4.6/5.0
Behavior5/5

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

Beyond annotations (destructiveHint=true), the description reveals the dry-run behavior with confirm:false and confirms permanence. It also mandates specific modes and env vars, adding critical context.

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?

Three sentences with zero waste. Each sentence serves a distinct purpose: action and prerequisites, preview vs. delete behavior, and destructiveness warning.

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?

No output schema, but the description explains what happens (delete or preview) and prerequisites. It lacks details on the preview return format, but given the tool's simplicity, it is mostly complete.

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 baseline is 3. The description adds value by clarifying the confirm parameter's default (false = preview) and its effect, which is not evident from the schema alone.

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 explicitly states 'Delete an automation,' clearly indicating the action and resource. It distinguishes from sibling tools like update, create, describe, and list.

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?

The description specifies prerequisites (readwrite/admin mode, environment variables) and explains the confirm parameter's role (preview vs. actual delete). However, it does not mention alternatives or when not to use this tool.

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

smartsuite_delete_dashboardA

Delete a dashboard and all its widgets. Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true AND SMARTSUITE_ENABLE_DELETE=true. Refuses non-dashboard reports. Without confirm:true returns a preview; pass confirm:true to permanently delete. Destructive — cannot be undone.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNoSet true to permanently delete; otherwise returns a dry-run preview.
dashboardIdYesThe dashboard (report) ID to delete.

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already indicate no read-only hint, but the description adds critical behavioral details: required permissions, destructive nature, inability to undo, and preview behavior when confirm is false. This provides transparency beyond annotations.

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?

The description is four sentences with no unnecessary words. Key information is front-loaded: the primary action comes first, followed by requirements, special cases, and warnings. Every sentence adds value.

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?

Given the simplicity of the tool and lack of output schema, the description covers prerequisites, parameter behavior, destructive nature, and constraints (refusing non-dashboards). It is sufficient for an agent to understand when and how to use the tool 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 baseline is 3. The description adds meaning by explaining that confirm=true triggers permanent deletion while confirm=false returns a preview, and that dashboardId must refer to a dashboard report. This clarifies behavior beyond the schema.

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 clearly states the action: 'Delete a dashboard and all its widgets.' It distinguishes from sibling tools by mentioning it refuses non-dashboard reports, and its focus on dashboards sets it apart from other delete tools (e.g., delete_records, delete_view).

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?

Explicit prerequisites are given (readwrite/admin mode, environment variables). The description explains the confirm parameter behavior and warns that the action is destructive and irreversible. It also notes that non-dashboard reports are refused, offering implicit guidance on valid inputs. However, it does not directly compare to sibling delete tools.

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

smartsuite_delete_fieldA
Destructive

Delete a field from a table by slug. Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true AND SMARTSUITE_ENABLE_DELETE=true. Destructive — removes the field and its data (system fields are refused). Useful e.g. to replace a formula field with a rollup: create the rollup, then delete the old formula. Dry-run preview unless confirm:true.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesThe field slug to delete.
confirmNoMust be true to delete (default false = preview).
applicationIdYesThe application (table) ID.

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already indicate destructive, but the description adds 'removes the field and its data' and explains the dry-run preview behavior via the confirm parameter. No contradictions with annotations.

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?

The description is a single, dense paragraph with no unnecessary words. It front-loads the tool's purpose and efficiently covers prerequisites, behavior, and an example.

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?

Given no output schema, the description adequately covers prerequisites, destructive behavior, dry-run mechanism, and a use case. It could mention the response or success indication, but overall is sufficiently complete.

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 covers all parameters with descriptions (100% coverage), so baseline is 3. The description adds value by explaining the confirm parameter's role in dry-run vs actual deletion, going beyond the schema.

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 starts with 'Delete a field from a table by slug', clearly stating the verb and resource. It distinguishes itself from sibling tools like create_field, update_field, and restore_field by specifying the destructive nature and the refusal of system fields.

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?

The description explicitly lists required modes and environment variables, and provides a concrete use case (replacing a formula field with a rollup). It does not explicitly mention alternatives, but the context makes it clear when to use vs other field operations.

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

smartsuite_delete_recordsA
Destructive

Delete records (soft-delete to the trash). Requires readwrite or admin mode AND SMARTSUITE_ENABLE_DELETE=true. Supports dry-run. The response returns the deleted recordIds; they can be recovered with smartsuite_restore_records (when SMARTSUITE_ENABLE_RESTORE=true) or listed via smartsuite_list_deleted_records.

ParametersJSON Schema
NameRequiredDescriptionDefault
dryRunNoIf true, show what would be deleted without deleting (default true)
confirmNoMust be true to execute deletion
recordIdsYesIDs of records to delete
applicationIdYesThe application ID
confirmationTextNoMust match exactly: "DELETE N RECORDS" where N is the count

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already indicate destructiveHint=true; the description expands on this by detailing soft-delete to trash, mode and env var requirements, dry-run support, return value (deleted recordIds), and recoverability via other tools. No contradiction with annotations.

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?

The description is two sentences long, front-loads critical information (soft-delete, mode, env var), and avoids redundancy. Every sentence adds value.

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?

Given no output schema, the description covers prerequisites (mode, env var), behavior (soft-delete, dry-run), return value (recordIds), and recovery options. For a delete tool with five parameters, this is comprehensive and contextually complete.

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 100%, so baseline is 3. The description adds minimal parameter-specific context beyond mentioning dry-run support; the schema already covers all parameter meanings adequately.

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 explicitly states the tool deletes records via soft-delete to the trash, specifies required mode and environment variable, and distinguishes itself from siblings by referencing recovery and listing tools. This provides a clear and specific purpose.

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?

The description mentions required mode and env var, supports dry-run, and names alternative tools for recovery and listing, giving good context on when to use this tool versus alternatives. It does not explicitly state when not to use, but the alternatives imply it.

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

smartsuite_delete_viewA

Delete a view (report). Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true AND SMARTSUITE_ENABLE_DELETE=true. Refuses to delete the only remaining view of an application, and refuses forms/dashboards (use their own tools). Without confirm:true returns a preview; pass confirm:true to permanently delete. Destructive — cannot be undone.

ParametersJSON Schema
NameRequiredDescriptionDefault
viewIdYesThe view (report) ID to delete.
confirmNoSet true to permanently delete; otherwise returns a dry-run preview.

TDQS

A4.9/5.0
Behavior5/5

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

Beyond annotations (readOnlyHint=false), the description reveals destructive nature ('cannot be undone'), the two-step deletion process (preview vs. permanent), and special refusal cases. No contradiction with annotations.

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?

The description is a single paragraph but is concise and well-structured. Every sentence adds necessary information, with prerequisites front-loaded and no redundancy.

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?

Given the tool's simplicity (2 params, no output schema), the description covers all essential aspects: action, prerequisites, limitations, behavior, and destructive nature. It is complete for its complexity.

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% with descriptions for both parameters. The description adds value for confirm by explaining its dry-run vs. permanent behavior, going beyond the schema description. For viewId, it restates the schema.

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 clearly states 'Delete a view (report)', using a specific verb and resource. It also distinguishes from siblings by noting that forms and dashboards have their own tools.

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?

Explicit prerequisites are given (readwrite/admin mode, SMARTSUITE_ENABLE_SCHEMA_WRITE=true, SMARTSUITE_ENABLE_DELETE=true). It explains when not to use (refuses last view, forms/dashboards) and provides alternatives. The confirm parameter behavior is also clearly described.

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

smartsuite_describe_applicationA
Read-only

Describe a SmartSuite application schema, including field slugs, types, and options, plus the record term (custom record terminology). Always call this before creating or updating records so you know field slugs and valid values. Set includeLayout:true to also return the record-view layout (sections with collapse flags, and the field row arrangement of the active layout mode). TOKEN COST: the schema is large; a full table is ~1k+ tokens. The schema is STABLE within a session — call this once per table and reuse the result; do NOT re-describe the same application (use forceRefresh only after you change the schema). When you only need field slugs/types/choices (e.g. to build or query records), use verbosity:"compact" or the lighter smartsuite_list_fields instead of the default.

ParametersJSON Schema
NameRequiredDescriptionDefault
verbosityNoField detail level. "compact" = slug/label/type + choice options + linked-app only (cheapest; use for surveys, CSV/data work, or when scanning many tables). "standard" (default) also adds help text and flags when set. "full" adds the raw params blob (large — only when you need every setting).
forceRefreshNoBypass cache and fetch fresh schema. Only needed after the schema changed this session — otherwise redundant.
applicationIdYesThe application ID
includeFieldsNoInclude field definitions (default true)
includeLayoutNoInclude the record-view layout: { mode, sections (with collapsed flags), rows, hiddenFields }. Default false.

TDQS

A4.9/5.0
Behavior5/5

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

Beyond readOnlyHint annotation, description details token cost (~1k+ tokens), schema stability within session, and caching advice. No contradiction with annotations.

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 paragraphs, front-loaded with key purpose. Every sentence adds value—token cost, caching, verbosity levels, and usage guidance—without redundancy.

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?

Despite no output schema, description covers return values, token cost, caching, parameter options, and usage context. Completely adequate for a read-only schema introspection tool with 5 parameters.

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%, baseline 3. Description adds meaningful context for parameters, e.g., explaining includeLayout returns 'sections with collapse flags' and forceRefresh is 'only needed after schema changed'. Justifies higher score.

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?

Specific verb 'Describe' with clear resource: 'SmartSuite application schema, including field slugs, types, and options, plus the record term.' Distinguishes from siblings like smartsuite_list_fields (lighter) and smartsuite_describe_field (per-field).

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?

Explicitly states 'Always call this before creating or updating records' and provides alternatives: 'use verbosity:"compact" or the lighter smartsuite_list_fields'. Also advises caching: 'call this once per table and reuse'.

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

smartsuite_describe_automationA
Read-only

Get the full configuration for one automation: trigger config and all action groups, plus name, enabled state, and timezone. Use smartsuite_list_automations to find automation IDs.

ParametersJSON Schema
NameRequiredDescriptionDefault
solutionIdYesThe solution ID
automationIdYesThe automation ID

TDQS

A4.2/5.0
Behavior4/5

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

Annotations declare readOnlyHint=true, and the description reinforces that this is a read operation by stating 'Get'. It adds specific behavioral context by detailing what the full configuration includes (trigger, actions, name, enabled state, timezone), which goes beyond the annotation to give agents a clear picture of the output. No contradictions.

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?

The description is two sentences long, front-loaded with the primary purpose, and contains no extraneous words. Every sentence serves a clear function: stating what the tool does and providing a usage hint.

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?

The description covers the essentials for a describe tool: what it returns and how to obtain the required ID. While there is no output schema, the description mentions the key fields. Given the tool's simplicity and the presence of good annotations, it is sufficiently complete.

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 coverage is 100%, with both parameters (solutionId, automationId) described in the input schema. The description does not add further semantics beyond the schema, but the schema itself is clear. Given high coverage, a score of 3 is appropriate.

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 clearly states the verb 'Get' and the resource 'automation', listing the specific components returned (trigger config, action groups, name, enabled state, timezone). It also distinguishes from the sibling tool smartsuite_list_automations by directing users to use that for finding automation IDs.

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?

The description explicitly instructs users to use smartsuite_list_automations to find automation IDs before calling this tool, providing clear context for usage. It does not mention when not to use it, but for a describe tool that depends on knowing the ID, this guidance is sufficient.

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

smartsuite_describe_automation_stepA
Read-only

Resolve the full schema of one automation step — its trigger (default) or a chosen action — by calling the automation engine's dynamic description. For a trigger: returns label, inputs (with dropdown options), context outputs, the fields the trigger exposes to downstream actions, and the fields usable in conditions. For an action: returns label, integration, and inputs (with options). Use smartsuite_describe_automation first to see the action list; select an action with actionIndex or actionInstanceId. This view is for UNDERSTANDING a step (labels, types, option values) and is slimmed — do NOT feed it back into update_automation to edit an action; it omits full input encodings (e.g. an AI action's model), and saving a rebuild from it can strip those settings.

ParametersJSON Schema
NameRequiredDescriptionDefault
stepNoWhich step to resolve (default trigger).
solutionIdYesThe solution ID
actionIndexNoWhen step=action: 0-based index across the automation's actions (default 0).
automationIdYesThe automation ID
actionInstanceIdNoWhen step=action: select the action by its action_reference.instance_id instead of index.

TDQS

A4.9/5.0
Behavior5/5

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

Despite `readOnlyHint` annotation, description adds significant context: it is a read-only inspection tool, not meant for editing, and details the return structure for triggers vs actions, enhancing transparency beyond 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?

The description is detailed but efficiently organized, front-loading the core purpose. Each sentence adds value, though slightly longer than minimal.

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?

Despite no output schema, the description explains return fields for both trigger and action, covers all parameters, and warns about limitations, making it fully informative for the tool's complexity.

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

Parameters5/5

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

With 100% schema coverage, the description adds meaning by explaining default values (step defaults to trigger, actionIndex defaults to 0) and the alternative actionInstanceId selection, clarifying usage beyond the schema.

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?

Description clearly states it resolves the full schema of one automation step (trigger or action), distinguishing it from the sibling tool `smartsuite_describe_automation` which describes the whole automation.

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?

Explicitly advises to use `smartsuite_describe_automation` first to get the action list, then choose by index or instance ID. Also warns against using the output directly to update actions, providing clear when-to-use and when-not-to-use guidance.

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

smartsuite_describe_dashboardA
Read-only

Get the full configuration for a single SmartSuite dashboard: tabs, footer/branding, style, and sharing settings. Set includeWidgets:true to also fetch every widget on every tab (type, name, position, size, and parsed params). Widget types include content widgets (hero, simple-banner, heading, faq, text-block, divider) and data widgets (chart, pivot, summary-card, progress, comparison, list-view, card-view, kanban-view, calendar-view, timeline-view, record-details, filter, data-schema).

ParametersJSON Schema
NameRequiredDescriptionDefault
dashboardIdYesThe dashboard (report) ID
applicationIdYesThe application ID
includeWidgetsNoFetch all widgets for every tab. Default false. Each tab triggers one extra API call.

TDQS

A4.7/5.0
Behavior5/5

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

Annotations declare readOnlyHint=true, and the description adds value by detailing the returned data (tabs, footer, etc.) and the behavioral impact of includeWidgets (triggering extra API calls per tab). No contradictions; the description enhances transparency beyond annotations.

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 sentences: first states the core purpose, second expands on includeWidgets with widget types and cost. Every sentence adds value, no redundancy, and critical info is front-loaded.

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?

Given no output schema, the description adequately explains the return value (tabs, footer/branding, etc.) and widget details. It covers the complexity of dashboard configuration and even notes API call implications. No missing elements for a read tool with annotations.

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 description coverage is 100%, so baseline is 3. The description adds extra meaning by listing widget types for includeWidgets and explaining its behavior, improving upon the schema's brief text. The other parameters (IDs) are well-documented in the schema, so no further addition needed.

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 clearly states 'Get the full configuration for a single SmartSuite dashboard' with a specific verb and resource. It lists the components (tabs, footer/branding, style, sharing settings) and distinguishes from siblings like smartsuite_list_dashboards (list vs. single) and create/update tools.

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?

The description implies usage when needing a dashboard's full configuration and mentions the includeWidgets parameter's API cost, but does not explicitly state when not to use it or directly reference alternatives like list_dashboards. It provides clear context but lacks exclusions.

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

smartsuite_describe_fieldA
Read-only

Get detailed metadata for a single field in a SmartSuite application, including help text, choice options, linked-record targets, and — for formula fields — the formula expression and its computed return type.

ParametersJSON Schema
NameRequiredDescriptionDefault
fieldSlugYesThe field slug (e.g. s10a908cbe)
applicationIdYesThe application ID

TDQS

A4/5.0
Behavior4/5

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

The description discloses read-only behavior (consistent with annotations) and adds specific metadata included in the response, which is valuable given no output schema. However, it doesn't reveal potential errors or limitations.

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?

The description is a single sentence that efficiently conveys the main purpose and key metadata categories with no wasted words. It is front-loaded and easily digestible.

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?

Given no output schema, the description usefully lists several metadata fields returned. However, it may not be exhaustive (e.g., missing default values, field type). For a complex tool interacting with SmartSuite, slightly more detail would improve completeness.

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?

The input schema already describes both parameters with 100% coverage. The description does not add extra meaning or usage hints beyond what the schema provides, so the baseline score of 3 is appropriate.

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 clearly states the tool retrieves detailed metadata for a single field, listing specific metadata types (help text, choice options, linked-record targets, formula expression/return type). This distinguishes it from sibling tools like smartsuite_list_fields, which lists fields without such detail.

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?

The description implies usage for obtaining detailed field metadata but provides no explicit guidance on when to choose this over alternatives (e.g., smartsuite_list_fields for summaries). No prerequisites or exclusions are mentioned.

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

smartsuite_describe_formA
Read-only

Get the full structure of a SmartSuite form for review: settings (title, description, submit label, redirect, branding, logo), sharing (enabled, public URL, password protection), and the page-by-page layout. Each page is an input (form), review, or submission page. Input-page items are parsed into bound fields (slug, label, required, help text) and content elements (heading, html_block/paragraph, callout, consent, divider, image, video, recaptcha, pdf_viewer), including section groupings and conditional-visibility flags.

ParametersJSON Schema
NameRequiredDescriptionDefault
formIdYesThe form (report) ID
applicationIdYesThe application ID

TDQS

A4/5.0
Behavior4/5

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

Annotations declare readOnlyHint=true; description adds rich detail about what is returned (settings, sharing, page layout with bound fields and content elements, conditional visibility). No contradictions. Provides significant context beyond 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?

Single sentence that front-loads purpose and then lists details. Is somewhat long but each element is relevant. Could be split into two sentences for readability, but overall efficient.

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?

No output schema exists, yet description fully covers return structure: top-level categories (settings, sharing, page layout) and nested elements (bound fields, content elements, conditional flags). Complete for a read tool with two parameters.

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 coverage is 100% with basic descriptions of formId and applicationId. The description does not add additional semantic meaning for parameters; it focuses on output. Baseline 3 is appropriate.

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?

Clearly states 'Get the full structure of a SmartSuite form for review' and enumerates elements (settings, sharing, page-by-page layout). Distinguishes from sibling tools like smartsuite_list_forms, which likely returns only metadata.

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?

Implies usage for review/diagnostics by describing the output, but does not explicitly state when to use versus alternatives or provide exclusions. Siblings include mutations (create, update, submit) and listing, so context hints at read-only usage, but no direct guidance.

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

smartsuite_describe_viewA
Read-only

Get the full configuration for a single SmartSuite view: filters, sort, group-by, visible/collapsed fields, sharing/permission settings, and the raw view state. Use smartsuite_list_views to find view IDs.

ParametersJSON Schema
NameRequiredDescriptionDefault
viewIdYesThe view ID
applicationIdYesThe application ID

TDQS

A4.3/5.0
Behavior4/5

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

The description details the configuration components returned (filters, sort, etc.), adding behavioral context beyond the readOnlyHint annotation. No output schema exists, but the listed items give a good sense of the response.

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?

The description is two sentences: the first states the purpose and lists outputs, the second gives a usage hint. No unnecessary words, efficiently front-loaded.

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?

For a simple read operation with well-documented parameters and annotations, the description covers purpose, output components, and a prerequisite step (list_views). It is complete for effective agent use.

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 100% for both parameters, so the baseline is 3. The description does not add parameter-specific details beyond the schema, but it implies the role of viewId and references list_views for obtaining it.

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 clearly states the tool gets the full configuration for a single SmartSuite view, listing specific components (filters, sort, group-by, etc.). It distinguishes from sibling tools like smartsuite_list_views and the create/update/delete view tools.

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?

The description explicitly advises to use smartsuite_list_views to find view IDs, providing a prerequisite. It could also mention when not to use this tool (e.g., if only needing a list of views), but the guidance is clear and helpful.

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

smartsuite_diagnosticsA
Read-only

Validate SmartSuite MCP server configuration and connectivity. Returns server version, mode, and account info. Does not return the API key.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already mark it as readOnlyHint=true. The description adds that it does not return the API key, a key behavioral guarantee. It also discloses what it returns (server version, mode, account info), providing full transparency beyond annotations.

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 sentences, front-loaded with the primary purpose, and every word adds value. No unnecessary detail.

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?

For a diagnostic tool with no parameters and annotations present, the description is complete in telling what it does and returns. It could mention error behavior or typical use case, but current level is adequate.

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?

There are zero parameters and schema coverage is 100%, so description needs no parameter details. The baseline for no-parameter tools is 4, and the description adds no extra parameter info because none needed.

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 clearly states the tool validates SmartSuite MCP server configuration and connectivity, specifying returns of version, mode, and account info. This distinguishes it from all sibling tools which focus on data operations like records, forms, or automations.

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?

The description implies usage for validating server setup and connectivity, but does not explicitly mention when not to use or alternatives. However, given the unique diagnostic purpose among siblings, context is sufficiently clear.

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

smartsuite_diff_schemasA
Read-only

Step 3 of solution migration: compare table/field schemas (lower → prod) for confirmed mappings and write the diff package. Fields match by slug (stable across cloned workspaces); cross-table references are remapped via the table map and system-generated values are ignored, so only real differences surface. With scope "all" (default) it also diffs views and forms in full and dashboards at the report-config level (matched by name); scope "schema" limits to tables + fields. Classifies added / removed / modified (with per-property detail and compatible/risky risk). Writes diff.json and returns a summary.

ParametersJSON Schema
NameRequiredDescriptionDefault
scopeNoall (default) = tables, fields, views, forms, dashboards; schema = tables + fields only.
projectYesMigration project name.
solutionNoOptional: limit to one confirmed solution (default: all confirmed).

TDQS

A3.7/5.0
Behavior1/5

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

The description indicates the tool writes diff.json (a side effect), contradicting the readOnlyHint=true annotation. This is a serious inconsistency, per rules scoring 1 for contradiction.

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?

The description is detailed but each sentence adds value. It is front-loaded with purpose and logically sequenced. Slightly long but justified by complexity; could be broken into structured points.

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?

For a complex tool with no output schema, the description covers classification of changes and file output. It lacks specifics on summary format but is mostly complete given the tool's role.

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%. The description adds valuable context beyond schema, such as how fields match by slug and remapping of cross-table references. This enhances understanding of parameter effects.

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 clearly states the tool compares table/field schemas and writes a diff package, distinguishing it from siblings like smartsuite_match_solutions. It specifies it is Step 3 of solution migration and details what it diffs based on scope.

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?

The description explains the tool's role in a migration sequence and provides clear scope options (all vs schema). However, it does not explicitly state when not to use it or mention alternatives, but the context is sufficient for selection.

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

smartsuite_export_diffA
Read-only

Step 4 of solution migration: render the project diff as a human-readable XLSX (summary tab + per-change detail) alongside the JSON. Run smartsuite_diff_schemas first. Returns the written file paths.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNoOutput format (default both).
projectYesMigration project name.

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already provide readOnlyHint=true, so the bar is lower. The description adds that the tool creates files (XLSX, JSON) and returns their paths, which is useful behavioral context beyond what annotations convey. Could be more explicit about the operation being non-destructive.

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 sentences with no wasted words. Front-loaded with the step number and key purpose. Every sentence earns its place, providing purpose, format details, prerequisite, and return value.

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?

For a tool with no output schema, the description adequately explains that it returns file paths. It also specifies the output formats and the prerequisite. Given the tool's role in a multi-step process, the description is complete.

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 coverage is 100%, so the schema already describes both parameters (format and project). The description does not add extra meaning beyond the schema, which is adequate given the baseline for high coverage.

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 clearly states the tool renders a project diff as XLSX and JSON, specifies it's Step 4 of solution migration, and names a prerequisite (smartsuite_diff_schemas). This distinguishes it from sibling tools like form or record operations.

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?

Explicitly advises to run smartsuite_diff_schemas first, providing clear sequential context. Also mentions it returns file paths, helping the agent understand what to expect after invocation.

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

smartsuite_get_automation_limitsA
Read-only

Get the workspace's automation run usage and plan limit (account-wide). Returns plan category (e.g. enterprise), the automation run limit, runs used, remaining, percent used, and whether the limit is enforced. Use this for "how much of our automation quota are we using?" and plan-type questions.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.5/5.0
Behavior4/5

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

The description discloses the return fields (plan category, limit, used, remaining, percent, enforce flag) beyond the readOnlyHint annotation. It adds context about what the tool reports, though it doesn't discuss permissions or rate limits.

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?

The description is two sentences, front-loading the purpose and then listing return fields. Every sentence earns its place without redundancy.

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?

For a no-parameter read-only tool without output schema, the description fully covers the return data and usage context. It is complete for the agent to understand what the tool does and what it returns.

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?

There are no parameters, and schema coverage is 100%. The description adds value by explaining what the response will contain, which is useful despite the lack of params.

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 clearly states the tool retrieves the workspace's automation run usage and plan limit. It distinguishes itself from sibling automation tools like smartsuite_list_automations or smartsuite_describe_automation by focusing on quotas and plan limits.

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?

The description explicitly provides use cases: 'how much of our automation quota are we using?' and plan-type questions. While it doesn't mention when not to use it, the context is clear enough for the agent to select it appropriately.

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

smartsuite_get_file_urlA
Read-only

Resolve a SmartSuite file handle to a signed CDN download URL. SmartSuite file fields (type: filefield) return an array of file objects — each has a "handle" property. Pass that handle here to get a temporary URL for downloading the file. Example field value: [{ "handle": "abc123", "filename": "report.pdf", "size": 12345, "mimetype": "application/pdf" }] Note: a file handle is not scoped to a solution, so this tool is disabled when a solution/application allowlist (SMARTSUITE_ALLOWED_SOLUTIONS / SMARTSUITE_ALLOWED_APPLICATIONS) is configured.

ParametersJSON Schema
NameRequiredDescriptionDefault
fileHandleYesThe Filestack handle from a file field value (the "handle" property)

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already mark this as read-only, and the description adds useful behavioral details: the URL is temporary and the tool is disabled when an allowlist is configured. It does not mention response format or expiration duration, but the read-only annotation reduces the burden.

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?

The description is front-loaded with the core purpose, followed by a compact example and a necessary constraint note. Every sentence adds value, and there is no redundant filler.

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?

Given the tool has no output schema, the description sufficiently covers inputs, source of the handle, output nature (signed CDN download URL), and a key environment-specific limitation. An agent has enough information to use the tool correctly without additional context.

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% and the parameter description already identifies the handle property. The description adds meaning by showing the full file object structure and clarifying where the handle originates, which helps the agent extract it correctly from a file field value.

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 states a specific verb ('Resolve') and resource ('SmartSuite file handle to a signed CDN download URL'), making the tool's function immediately clear. It also explains where file handles come from (filefield values), which uniquely identifies this tool among siblings like upload_file and move_attachments.

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?

The description clearly tells the agent to pass the 'handle' property from a file object, and even provides an example field value. It also warns about the allowlist configuration that disables the tool, giving practical usage context. It does not explicitly name alternative tools, but no direct alternative exists for this operation.

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

smartsuite_get_recordA
Read-only

Get a single SmartSuite record by ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
fieldsNoField slugs to include (empty = all fields)
recordIdYesThe record ID
applicationIdYesThe application ID
includeFieldContextNoWhen true, each field value is returned as an annotated object with slug, label, type, helpText, linkedApplication, linkedFieldSlug, and value.

TDQS

A3.7/5.0
Behavior3/5

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

The description aligns with the readOnlyHint annotation, indicating a safe read operation. However, it adds no additional behavioral context such as rate limits, authentication requirements, or error handling beyond what annotations already provide.

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?

The description is extremely concise at one sentence, with no filler. It is front-loaded with the core action. However, it could be slightly expanded to include usage context without losing brevity.

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?

For a simple get-by-ID tool with well-documented parameters and a readOnlyHint, the description is fairly complete. It does not describe return values or error scenarios, but this is typical and acceptable given the tool's simplicity.

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?

The input schema has 100% description coverage, adequately explaining all four parameters (recordId, applicationId, fields, includeFieldContext). The tool description adds no further parameter meaning beyond the schema.

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 clearly states the verb 'Get', the resource 'single SmartSuite record', and the identifier 'by ID'. It is specific and distinguishes from sibling tools like smartsuite_list_records and smartsuite_search_records.

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?

No explicit when-to-use or when-not-to-use guidance is provided. The description implies usage when a record ID is known, but does not mention alternatives or exclusions.

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

smartsuite_get_smartdoc_contentA
Read-only

Retrieve the content of a SmartDoc field as plain text and raw value.

ParametersJSON Schema
NameRequiredDescriptionDefault
recordIdYesThe record ID
fieldSlugYesThe SmartDoc field slug
applicationIdYesThe application ID

TDQS

A4.1/5.0
Behavior3/5

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

Annotations already declare 'readOnlyHint: true', so the description adds only the output format ('plain text and raw value'). No additional behavioral traits are disclosed beyond what annotations provide.

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?

The description is a single, focused sentence with no wasted words. It is front-loaded with the main purpose and immediately states the output type.

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?

For a simple read operation on a SmartDoc field, the description together with the schema covers all necessary information: what it does, what it returns, and the required input parameters. No output schema is needed for such a straightforward tool.

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 coverage is 100% with each parameter having a description. The tool description does not add any new meaning beyond the schema's parameter descriptions, so it meets the baseline of 3.

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 uses a specific verb 'Retrieve' and specifies the resource 'SmartDoc field' and the output format 'plain text and raw value'. It clearly distinguishes from sibling write tools like 'smartsuite_append_smartdoc_content'.

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?

The description implies when to use the tool (to retrieve SmartDoc content) but does not explicitly state when not to use it or mention alternatives. However, the context is clear and no exclusions are needed.

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

smartsuite_get_solutionA
Read-only

Get details for a specific SmartSuite solution.

ParametersJSON Schema
NameRequiredDescriptionDefault
solutionIdYesThe solution ID

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint: true, so the description does not need to repeat that. It adds no extra behavioral traits beyond the annotations.

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?

The description is a single sentence with no superfluous words, conveying the necessary info efficiently.

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?

For a simple read operation with one parameter and no output schema, the description is adequate. It clearly states the tool fetches details for a specific solution, which is complete for its simplicity.

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 100% schema description coverage for the single parameter (solutionId), the description does not add meaning beyond the schema's 'The solution ID'. Baseline score of 3 is appropriate.

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 clearly states the verb 'Get' and the resource 'details for a specific SmartSuite solution', distinguishing it from sibling tools like smartsuite_list_solutions (which lists all solutions) and smartsuite_create_solution (which creates).

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?

The description does not provide guidance on when to use this tool versus alternatives like smartsuite_list_solutions. It only states the function without context or exclusions.

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

smartsuite_list_applicationsA
Read-only

List SmartSuite applications (tables). Optionally filter by solution. Returns full table objects by default (heavy — includes each table's field structure); set slim:true to return only {id, name, slug, solution, fieldCount}, which is the safe way to inventory a multi-table solution without exceeding the token budget. The response includes a total (pre-limit count).

ParametersJSON Schema
NameRequiredDescriptionDefault
slimNoReturn a compact shape {id, name, slug, solution, fieldCount} instead of full table objects. Default false. Recommended for multi-table solutions.
limitNoMaximum number of applications to return. The SmartSuite API ignores this, so it is enforced client-side.
solutionIdNoFilter by solution ID

TDQS

A4.4/5.0
Behavior4/5

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

Beyond the already-present readOnlyHint=true annotation, the description reveals that limit is enforced client-side because the API ignores it, and that the response includes a total count. This adds useful behavioral context about the actual behavior of the limit parameter.

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?

The description is extremely concise: three sentences covering purpose, filtering, return shapes, and a performance warning. Every sentence earns its place, with no redundant or vague wording.

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?

For a list tool with no output schema, the description adequately covers both return shapes and the total count. It could be improved by mentioning whether pagination (e.g., offset) is supported, but it already explains the limit behavior and provides enough for most usage.

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?

All three parameters have schema descriptions (100% coverage). The description adds further value by explaining the effect of slim (compact vs full objects) and the client-side enforcement of limit, which are not in the schema. The explanation of slim's recommendation for multi-table solutions is particularly helpful.

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 starts with 'List SmartSuite applications (tables)', a clear verb+resource pair. It distinguishes from sibling list tools like smartsuite_list_forms and smartsuite_list_automations by specifying the resource type and noting optional filtering by solution.

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?

The description provides actionable guidance by noting the default 'heavy' return and recommending the slim:true option for multi-table solutions to avoid token budget issues. It does not explicitly state when not to use the tool or compare to alternatives, but the context is clear enough.

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

smartsuite_list_automation_credentialsA
Read-only

List the integration credentials configured for a solution's automations (e.g. Gmail, Slack, Microsoft Teams, webhooks, SmartSuite). Returns each credential's id, integration, auth method, and label. Use this to review which external integrations a solution's automations connect to.

ParametersJSON Schema
NameRequiredDescriptionDefault
solutionIdYesThe solution ID

TDQS

A4.1/5.0
Behavior3/5

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

Annotations already provide readOnlyHint=true. The description aligns by describing a list operation and adds output details (id, integration, etc.), but does not disclose additional behavioral traits beyond what annotations offer.

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 sentences efficiently cover what the tool does, examples, return fields, and usage purpose. No wasted words.

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?

For a simple list tool with one parameter and no output schema, the description fully explains the return value and use case. No gaps.

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 100% with a single parameter described as 'The solution ID.' Description does not add extra meaning beyond the schema; baseline of 3 is appropriate.

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?

Description clearly states the tool lists integration credentials for a solution's automations, naming specific examples (Gmail, Slack, etc.) and return fields (id, integration, auth method, label). Distinguishes from sibling list tools.

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?

Explicitly says 'Use this to review which external integrations a solution's automations connect to,' providing clear context. No exclusions or alternatives mentioned, but the purpose is well-defined.

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

smartsuite_list_automationsA
Read-only

List automations for a solution. Automations are scoped per solution (not per table). Returns each automation's id, name, enabled state, trigger reference, action count/types, and generated description.

ParametersJSON Schema
NameRequiredDescriptionDefault
solutionIdYesThe solution ID

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, so the description need not repeat that. It adds value by explaining the scoping per solution (not per table) and listing the returned attributes, which is useful context beyond the annotation.

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 sentences, front-loaded with purpose, no redundant information. Every sentence contributes meaningful detail (scope and return fields).

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?

The description enumerates return fields, compensating for the lack of an output schema. It clarifies scope and contrasts with per-table scoping. However, it omits details like pagination or limits, which are minor given the tool's simplicity.

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?

The schema already fully documents the single parameter ('solutionId') with a description. The tool description reiterates 'solution' but adds no additional parameter-specific semantics, so baseline 3 applies.

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 clearly states the tool lists automations for a solution, specifies the scope (per solution, not per table), and enumerates the return fields (id, name, etc.). It uses a specific verb and resource, making the purpose unambiguous.

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?

The description implies usage for listing automations per solution but does not explicitly contrast with sibling tools like smartsuite_describe_automation or smartsuite_create_automation. No when-not-to-use guidance is provided.

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

smartsuite_list_commentsB
Read-only

List comments on a SmartSuite record.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax comments to return (default 50)
cursorNoPagination cursor
recordIdYesThe record ID
applicationIdYesThe application ID

TDQS

B3.3/5.0
Behavior2/5

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

The description adds no behavioral information beyond the annotations (readOnlyHint=true). It does not disclose traits like rate limits or result format.

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?

The description is a single, clear sentence with no unnecessary words. It is appropriately concise.

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?

The description is minimal and does not mention pagination or additional context, though the schema covers parameters. Given no output schema, it could be more complete.

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 100%, so the schema already documents all parameters. The description adds no additional parameter meaning or context beyond the schema.

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 clearly states the verb 'list' and the resource 'comments on a SmartSuite record'. It is specific and distinguishes from sibling tools like smartsuite_create_comment.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool or when not to. No alternatives or prerequisites are mentioned.

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

smartsuite_list_dashboardsA
Read-only

List dashboards for a SmartSuite application. Returns id, name, description, order, tab count, and the tab list (id/name/order) for each dashboard. Use smartsuite_describe_dashboard for branding and widget detail.

ParametersJSON Schema
NameRequiredDescriptionDefault
applicationIdYesThe application ID

TDQS

A4.2/5.0
Behavior4/5

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

The description adds value beyond the readOnlyHint by detailing the return structure (fields and tab list). It does not contradict annotations and provides useful behavioral context.

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 sentences with no wasted words: first sentence defines purpose and output, second gives alternative. Ideal conciseness and structure.

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?

For a simple list operation with one required parameter and no output schema, the description is sufficient. It covers the return fields and offers an alternative. Minor omission of pagination/ordering details, but not critical.

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?

The only parameter, applicationId, is fully described in the schema. The description adds no further semantic meaning, so baseline 3 is appropriate given 100% schema coverage.

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 clearly states the verb 'List' and resource 'dashboards for a SmartSuite application', and specifies the returned fields (id, name, description, order, tab count, tab list). This distinguishes it from sibling tools like smartsuite_describe_dashboard.

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?

The description explicitly suggests an alternative tool (smartsuite_describe_dashboard) for branding and widget detail, guiding when not to use this tool. However, it does not mention other scenarios or limitations.

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

smartsuite_list_deleted_applicationsA
Read-only

List soft-deleted applications (tables) in a solution's trash (read-only). Returns id, name, and recordTerm for each. Note: SmartSuite exposes no public endpoint to restore a deleted application, so this is listing only (restore a table from the SmartSuite UI).

ParametersJSON Schema
NameRequiredDescriptionDefault
solutionIdYesThe solution ID whose deleted applications to list.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already mark the tool as readOnlyHint=true. The description goes beyond by specifying exact return fields (id, name, recordTerm) and the important limitation that restore is not available via API. This adds valuable behavioral context without contradiction.

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?

Three sentences, no wasted words. The first sentence states the core purpose, the second lists outputs, and the third provides essential caveat. Structure is front-loaded and all sentences earn their place.

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?

Given the tool's simplicity (one param, read-only, no output schema), the description covers the essential: what it lists, what it returns, and what it cannot do. It lacks mention of pagination or error scenarios, but for a basic listing tool this is sufficient.

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?

There is only one parameter (solutionId) with 100% schema description coverage. The description does not add extra meaning beyond the schema's 'The solution ID whose deleted applications to list.' Since schema carries the burden, a baseline of 3 is appropriate.

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 clearly specifies 'list soft-deleted applications in a solution's trash' with a precise verb and resource. It distinguishes from listing active applications by explicitly stating 'deleted' and 'in trash', and differentiates from other deletion-related tools via the 'read-only' and 'listing only' qualifiers.

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?

The description provides clear context on when to use: to view deleted applications. It adds critical guidance by noting that no public restore endpoint exists, nudging the agent toward UI restore. While it does not explicitly list alternatives, the sibling set includes 'list_applications' for active ones, which is implicitly contrasted. This is strong but not exhaustive.

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

smartsuite_list_deleted_fieldsA
Read-only

List soft-deleted fields in a solution (read-only). Returns each deleted field's slug, label, and fieldType. Solution-scoped — the API does not attribute deleted fields to their source application, so results are not app-filtered. Restore one with smartsuite_restore_field (supplying the applicationId it belonged to).

ParametersJSON Schema
NameRequiredDescriptionDefault
solutionIdYesThe solution ID whose deleted fields to list.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true. The description adds that the API does not attribute deleted fields to their source application (so no app filtering), and that it returns slug, label, and fieldType. This provides useful behavioral context beyond the annotation. No contradictions.

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 sentences, each conveying essential information. The first sentence states purpose and read-only nature. The second specifies return fields. The third adds scope limitation and a pointer to restore tool. No unnecessary words.

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?

Given the tool has only one parameter and no output schema, the description covers all essential aspects: what it does, what it returns, its scope, a limitation, and a related action. It is fully informative for an agent to use correctly.

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 coverage is 100% for the single parameter solutionId, with a clear description. The description does not add any additional parameter details beyond the schema, so it meets the baseline but does not exceed it.

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 clearly states that the tool lists soft-deleted fields, is read-only, and returns specific data. It distinguishes from active field listing tools (smartsuite_list_fields) by focusing on deleted fields and mentioning solution-scoping. The verb 'List' with resource 'soft-deleted fields' is specific.

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?

The description provides context for when to use this tool: to see deleted fields. It mentions that results are not filtered by app, which sets expectations. It also suggests the next step of restoring with smartsuite_restore_field. However, it does not explicitly exclude other alternatives beyond the scope limitation.

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

smartsuite_list_deleted_recordsA
Read-only

List soft-deleted records in a solution's trash (read-only). Solution-scoped — spans all applications in the solution; pass applicationId to filter to one. Returns id, title, applicationId, applicationName, deletedBy (member id), and deletedAt. Use the returned ids with smartsuite_restore_records. Respects allow/deny lists.

ParametersJSON Schema
NameRequiredDescriptionDefault
cursorNoPagination cursor (next_cursor from a previous response).
fieldsNoOptional extra field slugs to include per deleted record.
pageSizeNoMax deleted records to return (default 100).
solutionIdYesThe solution ID whose trash to list.
applicationIdNoOptional: only return deleted records from this application.

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, so the read-only mention is redundant. The description adds useful behavioral context about returned fields and permission respect, but lacks details on pagination behavior beyond schema.

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?

The description is concise (4 sentences) and front-loaded with purpose. Every sentence adds value, with no redundancy.

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?

Given no output schema, the description adequately explains return fields and suggests follow-up use. Missing details like sorting or limits, but sufficient for a list tool.

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 coverage is 100%, so baseline 3. The description repeats some schema info (required solutionId, optional applicationId, cursor for pagination) but adds minimal new meaning. No significant extra value.

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 clearly states the tool lists soft-deleted records in a solution's trash, specifying it as read-only. It distinguishes from sibling tools by focusing on deleted records and clarifying solution-scoped behavior.

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?

The description provides explicit guidance: solution-scoped, optional applicationId filter, and relevance to smartsuite_restore_records. It could improve by contrasting with list_records for non-deleted records, but overall good.

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

smartsuite_list_fieldsA
Read-only

List a SmartSuite application's fields as a token-lean column list: slug, label, type, choice options (value+label), and linked-app targets — omitting help text and false flags. Cheapest way to learn a table's fields; prefer this over smartsuite_describe_application when you just need field slugs/types/choices and not the record layout or help text. The result is stable within a session — call once per table and reuse it.

ParametersJSON Schema
NameRequiredDescriptionDefault
applicationIdYesThe application ID

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already indicate readOnlyHint=true. The description adds that the result is 'stable within a session — call once per table and reuse it,' which is a useful behavioral trait beyond the annotation's scope.

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 sentences contain all essential information: output details, exclusions, usage guidance, and caching hint. No unnecessary words.

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?

For a simple read-only listing tool with one parameter and no output schema, the description fully covers purpose, content, exclusions, and caching behavior. Nothing significant is missing.

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 100% schema description coverage (schema already describes applicationId as 'The application ID'), the description adds no additional semantic information for the parameter. Baseline 3 is appropriate.

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 specifies the exact action ('List a SmartSuite application's fields'), the resource (fields), and the output structure ('slug, label, type, choice options, linked-app targets'), explicitly stating what is omitted. This distinguishes it from sibling smartsuite_describe_application.

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?

The description explicitly states to prefer this tool over smartsuite_describe_application when only field slugs/types/choices are needed, providing clear context. However, it does not specify when not to use it (e.g., when help text is needed), but the guidance is strong.

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

smartsuite_list_formsA
Read-only

List forms (form-type report views) for a SmartSuite application. Returns each form's id, name, description, page count, bound-field count, sharing state, and public form URL (when sharing is enabled). Forms are how external/internal users submit records; in ITSM dashboards they are launched from button-row widgets.

ParametersJSON Schema
NameRequiredDescriptionDefault
applicationIdYesThe application ID

TDQS

A4/5.0
Behavior4/5

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

Annotations declare readOnlyHint=true, so the tool is read-only. The description adds behavioral context by listing the specific fields returned (id, name, description, page count, etc.) and the usage scenario. It does not mention pagination or limits, but the read-only nature reduces the burden.

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?

The description is two sentences, front-loading the main purpose and returned fields, then adding context. Every sentence adds value, with no wasted words.

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?

With one required parameter, no output schema, and readOnlyHint annotations, the description explains the output fields and usage context. It lacks detail on error handling or pagination, but for a simple list operation, it is largely complete.

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?

The only parameter 'applicationId' is described in the schema as 'The application ID.' The description adds no new semantics beyond mentioning 'for a SmartSuite application.' Since schema coverage is 100%, baseline is 3; no additional value.

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 clearly states 'List forms (form-type report views) for a SmartSuite application.' It specifies the verb 'List', resource 'forms', and provides context. It distinguishes from sibling tools like smartsuite_describe_form by detailing the returned fields and usage in ITSM dashboards.

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?

The description implies forms are used for record submission and are launched from button-row widgets in ITSM dashboards, but it does not explicitly state when to use this tool versus alternatives like smartsuite_describe_form. No when-not-to-use guidance is provided.

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

smartsuite_list_my_workA
Read-only

List the authenticated user's assigned work ("My Work") — comment mentions, assigned checklist items, and records assigned via people fields — for answering questions like "what's on my plate?", "how many open items are overdue?", or "what's assigned to me in this solution?". Returns a summary (totals, overdue count, breakdowns by item type / priority / solution) plus the items themselves (with a truncated text preview). Defaults to open items; set status:"resolved" for completed work (which also returns per-period counts).

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax items to return (default 50). The summary always reflects the full filtered set.
periodNoOptional time bucket filter (most useful with status:resolved).
statusNoopen (default) = unresolved assigned items; resolved = completed items.
itemTypeNoFilter by item type
priorityNoFilter by priority value (e.g. "high")
solutionIdNoFilter to one solution ID
overdueOnlyNoOnly items with a due date in the past (open items)
applicationIdNoFilter to one application ID

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true. The description adds details about the response (summary, items, truncated preview) and defaults. No contradictions. Additional context like overdue counts and breakdowns is provided.

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?

The description is two sentences, efficiently delivering purpose and key details. It is front-loaded with the main action and includes examples. Could be slightly more concise, but overall well-structured.

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?

Given 8 parameters, no required ones, and no output schema, the description covers the main points (defaults, summary, item types). However, it lacks details on response structure beyond summary and items, and some parameter interactions (e.g., period with resolved) could be clearer.

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 parameters are already documented. The description adds value by noting the default behavior (open items, limit 50) and how summary reflects full filtered set, which is not in the schema. Some parameter details (like period with resolved) are only implied.

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 clearly states the tool lists the authenticated user's assigned work, specifies item types (comment mentions, checklist items, records) and gives example questions. It uniquely identifies its purpose among sibling tools.

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?

The description explains default behavior (open items) and how to get completed work (status:resolved). It provides example questions, giving context for use. However, it does not explicitly exclude cases or compare to alternative tools.

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

smartsuite_list_recordsA
Read-only

List records from a SmartSuite application. Use smartsuite_describe_application first to learn field slugs. For large result sets, pass format:"compact" and a fields projection to cut token usage substantially.

ParametersJSON Schema
NameRequiredDescriptionDefault
idsNoFetch specific records by ID. When provided, filter and cursor are ignored.
sortNo
limitNoMax records to return (default 50, max set by server config)
cursorNoPagination cursor from a previous response
fieldsNoField slugs to include (empty = all fields). Projecting only the fields you need is the biggest token saver.
formatNo"json" (default) = array of record objects. "compact" = { columns, rows } table where field names appear once instead of on every record — materially fewer tokens for large lists, lossless for scalar values. Prefer "compact" for big result sets.
applicationIdYesThe application ID
includeFieldContextNoWhen true, adds a _fieldContext map to the response with label, type, helpText, and linked field info for each slug. Defaults to SMARTSUITE_AI_ENRICHED_RECORDS server setting.

TDQS

A4/5.0
Behavior3/5

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

Annotations declare readOnlyHint=true, so the description does not need to re-state safety. It adds token-saving tips but no additional behavioral traits like pagination behavior or rate limits. The description contributes marginal value beyond the annotations.

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?

The description is three sentences, each earning its place: purpose, prerequisite, optimization tip. No wasted words, clearly front-loaded, and efficiently structured.

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?

For a read-only list tool with 8 parameters and no output schema, the description covers the response format (json vs compact), pagination (cursor), and a helpful prerequisite. It is mostly complete but could mention error handling or rate limits.

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 high (88%), so the baseline is 3. The description adds usage advice (e.g., using compact format and fields projection to save tokens) but does not significantly enhance parameter meanings beyond what the schema already provides.

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 clearly states 'List records from a SmartSuite application' with a specific verb and resource. It also hints at a prerequisite using another tool, which adds clarity. Although siblings like smartsuite_search_records exist, the purpose is unambiguous and well-defined.

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?

The description explicitly advises using smartsuite_describe_application first to learn field slugs and recommends using format:"compact" with a fields projection for large result sets. It provides clear context on when to use certain parameter options but does not exclude alternative tools like search_records.

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

smartsuite_list_solution_membersA
Read-only

List the members available to a solution (id, name, email, job title, status). These are the members automations can assign work to or run as. Also useful for resolving member ids seen in records, assignments, and credentials.

ParametersJSON Schema
NameRequiredDescriptionDefault
solutionIdYesThe solution ID

TDQS

A4.2/5.0
Behavior4/5

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

Annotations indicate readOnlyHint: true, and the description adds contextual use cases (automation, resolving IDs) without contradicting. No hidden side effects are implied.

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 sentences with no fluff. The first sentence delivers the core purpose and output, the second adds practical usage context. Information is front-loaded and efficient.

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?

For a simple read operation with one parameter, the description sufficiently explains the tool's function and relevance. Missing details like result limits or filtering are acceptable given the tool's straightforward nature.

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?

The sole parameter (solutionId) is described in the schema as 'The solution ID'. The description does not add new constraints or format details beyond what the schema provides, so it adds minimal value.

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 clearly states the action (list), resource (solution members), and returned fields (id, name, email, job title, status). It differentiates from sibling tools by noting its utility for resolving member IDs and supporting automations.

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?

The description explicitly states when to use: to view members for automation assignment or to resolve IDs from records. While it doesn't specify when not to use, the context makes it clear this is the tool for listing solution members.

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

smartsuite_list_solutionsA
Read-only

List SmartSuite solutions (workspaces) accessible to the authenticated user.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum results to return (default 50)
cursorNoPagination cursor from a previous response

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, which the description aligns with. The description adds no additional behavioral traits beyond what annotations provide. No contradiction.

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?

Single sentence of 10 words with no fluff. Front-loaded with the key action and resource. Every word earns its place.

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?

For a simple list operation with 2 optional parameters and no output schema, the description is sufficient. It clearly explains what the tool does. Could mention pagination behavior but schema covers that.

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 100% for both parameters (limit, cursor). The description does not add any new meaning beyond the schema; baseline score of 3 applies.

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 clearly states the action ('List'), the resource ('SmartSuite solutions (workspaces)'), and the scope ('accessible to the authenticated user'). It is specific and distinct from sibling tools like smartsuite_get_solution and smartsuite_create_solution.

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?

The description implies when to use (when needing a list of solutions) but does not provide explicit guidance on when not to use or mention alternatives. It is adequate but lacks depth.

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

smartsuite_list_viewsA
Read-only

List views for a SmartSuite application (grid, kanban, calendar, timeline, gantt, map, chart, form). Dashboards are excluded — use smartsuite_list_dashboards for those. Returns a slim list by default: id, name, type, description, order, and isDefault (the lowest-order view, inferred since SmartSuite has no explicit default flag). Set includeConfig:true to also return each view's filters, sort, group-by, and visible/collapsed fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
applicationIdYesThe application ID
includeConfigNoInclude per-view config (filters, sort, groupBy, visibleFields, collapsedFields). Default false.

TDQS

A4.7/5.0
Behavior5/5

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

Annotations declare readOnlyHint=true, and the description adds context about the default slim list, the inferred isDefault field, and the optional config return, making behavior fully transparent.

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?

A single paragraph that is front-loaded with the main purpose, concise, and free of fluff. Every sentence earns its place.

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?

Given the simplicity (2 params, no output schema), the description covers purpose, behavior, default fields, optional config, and refers to the sibling tool for dashboards. No gaps.

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?

The input schema has 100% coverage, so the description doesn't need to explain parameters, but it adds value by detailing what the default output contains and what includeConfig:true returns.

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 clearly states it lists views for a SmartSuite application, enumerates view types (grid, kanban, etc.), and explicitly excludes dashboards, distinguishing it from smartsuite_list_dashboards.

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?

The description explicitly says to use smartsuite_list_dashboards for dashboards and explains the default vs. config options, but does not mention alternatives like smartsuite_describe_view for a single view.

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

smartsuite_match_applicationsB
Read-only

Step 2 of solution migration: for one confirmed solution pair, match its tables (applications) by exact name (table ids AND slugs both regenerate across workspaces, so name is the only handle). Same confirm/overrides flow as match_solutions. Persists the lower→prod table-id map into the project.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNoConfirm unambiguous table matches. Default false.
projectYesMigration project name.
solutionYesName of a confirmed solution pair (from match_solutions).
overridesNoManual table resolutions: [{sourceId, prodId}].

TDQS

B3.4/5.0
Behavior1/5

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

The description claims to 'persists the lower→prod table-id map into the project', indicating a write operation. However, annotations declare readOnlyHint=true, a direct contradiction. Description contradicts 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?

The description is concise in two sentences, front-loading its purpose. However, it could better structure the flow description and explicitly mention prerequisites.

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?

The description adequately places this tool in a multi-step migration process and explains why name matching is necessary. However, the contradiction with annotations undermines trust, and no output schema or return value details are provided.

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 coverage is 100%, so baseline is 3. The description adds no new parameter details beyond the schema, merely referencing the 'confirm/overrides flow'. It does not explain parameter formats or constraints beyond what the schema provides.

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 clearly states the tool's role as 'Step 2 of solution migration', matching tables (applications) by exact name. It distinguishes from the sibling 'match_solutions' by specifying it operates on the table level within a confirmed solution pair.

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?

The description implies this tool is used after match_solutions, stating 'for one confirmed solution pair'. It references the 'same confirm/overrides flow as match_solutions', providing context but no explicit when-not-to-use or alternatives.

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

smartsuite_match_solutionsA
Read-only

Step 1 of solution migration: match solutions in a lower-environment workspace to those in your primary (production) workspace by exact name, since object ids differ across workspaces. Set your primary workspace to production (the migration target). Requires SMARTSUITE_ENABLE_CROSS_WORKSPACE. Without confirm, returns proposed matches (exact / ambiguous / unmatched) for review. Re-call with confirm:true to confirm unambiguous matches, and overrides:[{sourceId,prodId}] to resolve ambiguous/unmatched ones. Persists to a project mapping file.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNoConfirm unambiguous (1:1) name matches. Default false (propose only).
projectYesMigration project name (namespaces the saved mapping/diff files).
overridesNoManual resolutions: [{sourceId, prodId}] to pin a source solution to a specific prod solution.
nameFilterNoOptional: only consider source solutions whose name contains this string.
sourceWorkspaceYesThe lower-environment workspace slug or name (must be allow-listed and differ from primary).

TDQS

A3.8/5.0
Behavior1/5

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

The description states 'Persists to a project mapping file,' indicating a write operation, but annotations declare readOnlyHint=true. This is a clear contradiction. Beyond that, the description does not disclose potential side effects, authorization requirements beyond the environment variable, or what happens to existing data. The contradiction severely undermines trust.

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?

The description is dense but every sentence adds value. It starts with purpose, then usage steps, then parameter roles, and finally side effect. No fluff. The structure is logical and front-loaded.

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?

Given the tool's complexity (migration step with two modes), the description covers workflow, parameters, and high-level output categories (exact/ambiguous/unmatched). However, it lacks details on the exact return structure (e.g., schema of proposed matches) and does not specify what the mapping file looks like. Without an output schema, some agents might need more detail, but the description is adequate for most use cases.

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 baseline is 3. The description adds significant meaning beyond the schema: it explains the two-step workflow (propose vs confirm), how overrides resolve ambiguous/unmatched matches, and the role of nameFilter. This contextual information helps an agent understand parameter interplay.

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 clearly states the tool's purpose as 'Step 1 of solution migration: match solutions in a lower-environment workspace to those in your primary (production) workspace by exact name.' It distinguishes from sibling tools like smartsuite_list_solutions and smartsuite_match_applications through the specific migration context.

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?

The description explains when to use this tool (as part of a migration workflow) and provides step-by-step guidance: set primary workspace, call without confirm to propose matches, then with confirm and overrides to finalize. It mentions a prerequisite (SMARTSUITE_ENABLE_CROSS_WORKSPACE) and that source workspace must differ from primary. However, it does not explicitly state when not to use or list alternatives, but the context is clear.

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

smartsuite_move_attachmentsA

Move attachments (files) from one file field to another. Requires readwrite/admin mode. Copies the source field's files into the target field (handles reference existing storage — no re-upload) and clears the source. Target one record with recordId, or every record that has source files with allRecords:true (capped at SMARTSUITE_MAX_RECORDS). mode "append" (default) keeps the target's existing files; "replace" overwrites. Set clearSource:false to copy instead of move. Both fields must be filefield type. Dry-run preview unless confirm:true.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNoappend (default) keeps target's existing files; replace overwrites the target.
confirmNoMust be true to apply (default false = preview).
recordIdNoMove for a single record (omit to use allRecords).
allRecordsNoMove for every record that has source files (capped at SMARTSUITE_MAX_RECORDS).
clearSourceNoClear the source field after copying (default true = move; false = copy).
applicationIdYesThe application (table) ID.
sourceFieldSlugYesFile field slug to move attachments FROM.
targetFieldSlugYesFile field slug to move attachments TO.

TDQS

A4.4/5.0
Behavior5/5

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

The description discloses that files are copied without re-upload (reference existing storage), that the source is cleared by default, that mode can append or replace, and that there is a dry-run mode unless confirm:true. It also mentions a cap on records. This provides full insight into the tool's behavior, matching the readOnlyHint=false annotation.

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?

The description is a single dense paragraph that efficiently communicates all key points. It front-loads the purpose and then details options. While it could be more structured (e.g., bullet points), it is concise and contains no wasted words.

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?

The description covers most behavioral aspects but does not explicitly state the return value or output format. Since there is no output schema, the agent is left to infer the response (likely success/result or preview data). Given the complexity (8 params, mutation tool), this omission is a gap.

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% with descriptions for all 8 parameters. The description adds context beyond the schema, such as 'handles reference existing storage — no re-upload' and the dry-run behavior, but the schema already explains individual parameters well. The description adds overall behavioral context but not per-parameter detail.

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 clearly states the verb 'move' and the resources 'attachments' and 'file fields'. It explains the core action: copying files from one field to another and optionally clearing the source. This distinguishes it from sibling tools like smartsuite_upload_file or smartsuite_create_record.

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?

The description specifies required access mode ('readwrite/admin'), explains when to use recordId vs allRecords, and describes the mode (append/replace) and clearSource options. It also mentions the dry-run behavior. It lacks an explicit 'when not to use' statement, but the instructions are clear and the tool is unique among siblings.

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

smartsuite_move_layout_fieldA

Move/arrange a field in the record-view layout — reorder it, place it under a section, or move it to a different tab. Requires readwrite/admin + SMARTSUITE_ENABLE_SCHEMA_WRITE. To move a field to ANOTHER tab, pass toTab = the destination tab id: the field is removed from its current tab and added to the destination (this is the cross-tab move — plain reorder can't pull a field in from another tab). Otherwise it reorders within the current layout. Pass afterField = a field slug OR a section__ slug to position this field right after it (right after a section marker = first field under that section); omit afterField for the end. In two-column layouts the field is placed as its own full-width row. When tabs are enabled and toTab is NOT used, tabId is required (a tab id, "all", or "top"). Dry-run preview unless confirm:true.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesThe field slug to move.
tabIdNoFor within-layout reorder when tabs are enabled (required then): a tab id, "all", or "top". Ignored when toTab is set. Omit when tabs are disabled.
toTabNoDestination tab id — moves the field to that tab (removing it from its current tab). Use this for cross-tab moves.
confirmNoMust be true to apply (default false = preview).
afterFieldNoField slug or section__ slug to place this field after (default: end).
applicationIdYesThe application (table) ID.

TDQS

A4.8/5.0
Behavior5/5

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

Discloses key behavioral traits: write operation (contradicts readOnlyHint: false but that's consistent), dry-run default unless confirm:true, cross-tab removal behavior, and positioning logic. No contradictions with annotations.

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?

Compact, well-structured description with no redundancies. Each sentence adds value: purpose, usage, parameter details, and edge cases are covered efficiently.

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?

Given 6 parameters, no output schema, and no enums, the description covers all essential aspects: permissions, operation modes, parameter dependencies, and preview/confirm behavior. Leaves no major gaps.

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

Parameters5/5

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

Adds significant meaning beyond the schema: explains afterField semantics (field slug or section__ slug), toTab for cross-tab moves, tabId conditional requirement, and confirm flag role. Enhances understanding despite high schema coverage.

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 uses a specific verb ('Move/arrange') and resource ('field in the record-view layout'), and clearly distinguishes it from sibling layout tools by focusing on field positioning rather than section/tab management.

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?

Provides clear context for when to use the tool, including permissions required and parameter guidance for cross-tab vs within-layout moves. Does not explicitly contrast with alternative tools, but the intent is well understood.

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

smartsuite_normalize_dashboard_widgetsA

Repair a dashboard's widgets: reset them to their natural per-type size and/or re-stack them to remove overlaps. Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true. Fixes dashboards built with wrong sizes (e.g. metric cards left too tall — which re-saving in the UI does not correct) or with widgets piled on top of each other (all near position (0,0), so they overlap and hide each other). Dry-run preview (before→after per widget) unless confirm:true. SIZE: by default HEIGHT is normalized; dimension:"both" also fixes width; restrict with widgetTypes (e.g. ["summary-card-widget"]). REFLOW: pass reflow:true to re-lay-out the tab — widgets sharing the same current row (same position_y) are kept side-by-side, and rows are stacked top-to-bottom by their tallest widget so nothing overlaps (reflow repositions ALL widgets on the tab, regardless of widgetTypes). Use tabId to limit to one tab.

ParametersJSON Schema
NameRequiredDescriptionDefault
tabIdNoOptional: only affect widgets on this tab.
reflowNoRe-stack widgets top-to-bottom to remove overlaps (preserves each row's side-by-side columns). Default false.
confirmNoSet true to apply; otherwise returns a dry-run preview of the changes.
dimensionNo"height" (default) fixes height only; "both" also fixes width.
dashboardIdYesThe dashboard (report) ID.
widgetTypesNoOptional: only resize these widget types (e.g. ["summary-card-widget"]). Does not limit reflow.

TDQS

A4.8/5.0
Behavior5/5

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

Annotations indicate write operation (readOnlyHint=false). Description adds critical behavioral details: dry-run mode unless confirm:true, reflow behavior (keeps side-by-side, stacks rows), default normalization only height. Comprehensive disclosure beyond annotations.

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?

Dense but efficient. Front-loaded with main purpose, then prerequisites, use cases, and per-parameter details. Every sentence adds value; no fluff.

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?

For a 6-parameter tool with no output schema, description covers both modes (size and reflow), dry-run behavior, prerequisites, and parameter nuances. Complete enough for an agent to invoke correctly.

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

Parameters5/5

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

100% schema coverage, and description adds substantial context: dimension 'both' also fixes width, confirm toggles apply vs dry-run, widgetTypes limited to resize only. Each parameter's meaning is enriched well beyond schema.

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?

Description specifies verb 'repair' with resource 'dashboard widgets' and clearly distinguishes two operations (size normalization and reflow). It differentiates from sibling tools like add/update/remove widget by addressing specific dashboard anomalies.

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?

Explicitly states required mode (readwrite/admin) and environment variable (SMARTSUITE_ENABLE_SCHEMA_WRITE=true). Describes when to use: for wrong sizes or overlapping widgets, noting that UI re-saving doesn't fix. Lacks explicit alternatives but context is clear.

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

smartsuite_query_recordsA
Read-only

Query records using a structured SmartSuite filter. Use smartsuite_describe_application first to learn field slugs and valid values for choice fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
sortNo
limitNoMax records (default 50)
cursorNoPagination cursor
fieldsNoField slugs to include in results
filterYesSmartSuite filter object with operator ("and"/"or") and fields array
formatNo"json" (default) or "compact" columns+rows table (fewer tokens for large result sets).
applicationIdYesThe application ID
includeFieldContextNoWhen true, adds a _fieldContext map to the response.

TDQS

A3.7/5.0
Behavior2/5

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

The annotations already declare readOnlyHint: true, confirming this is a safe read operation. The description adds no further behavioral context (e.g., no mention of side effects, rate limits, or response structure). Since annotations suffice, the description provides minimal added value beyond confirming the read-only nature.

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?

The description is two sentences: the first states the purpose and method, the second provides a crucial prerequisite action. It is front-loaded and contains no redundant information. Every sentence earns its place.

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?

The tool has nested parameters (filter object) and no output schema. The description correctly advises on prerequisite knowledge (field slugs) but does not explain the response format, pagination behavior, or how the filter object maps to results. While parameter documentation is thorough, the overall behavior remains somewhat opaque without additional context.

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 88% (7 of 8 parameters have descriptions), so the schema already explains most parameters. The description does not add parameter-specific details beyond the overall purpose. It includes a hint about field slugs, which is indirectly useful but not parameter-specific. Baseline 3 is appropriate given the high schema coverage.

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 clearly states the action ('Query records') and the resource ('using a structured SmartSuite filter'). This distinguishes it from sibling record tools like smartsuite_list_records (which lists all records) and smartsuite_search_records (which likely uses search syntax). The verb and resource are specific and unambiguous.

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?

The description explicitly advises to 'Use smartsuite_describe_application first to learn field slugs and valid values for choice fields', providing a clear prerequisite. However, it does not specify when not to use this tool versus alternatives like smartsuite_list_records or smartsuite_search_records. The guidance is helpful but lacks exclusions.

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

smartsuite_remove_dashboard_widgetA

Remove a widget from a dashboard. Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true AND SMARTSUITE_ENABLE_DELETE=true. Without confirm:true returns a preview; pass confirm:true to permanently delete. Destructive — cannot be undone.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNoSet true to permanently delete; otherwise returns a dry-run preview.
widgetIdYesThe widget ID to delete.

TDQS

A4.4/5.0
Behavior5/5

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

Discloses destructive behavior ('cannot be undone'), preview mode without confirm, and required permissions (readwrite/admin mode, env vars). Adds value beyond readOnlyHint: false annotation, with no contradictions.

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?

Three concise sentences, each serving a purpose: action, prerequisites, and detailed behavior. No unnecessary words, front-loaded with primary action.

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?

Covers purpose, prerequisites, confirm behavior, and destructiveness. Lacks detail on return value (preview output), but no output schema exists. Adequate for a simple deletion tool.

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?

Parameter descriptions in schema already cover widgetId and confirm. The description repeats confirm's dry-run behavior but does not add new information beyond schema. With 100% coverage, baseline of 3 is appropriate.

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 clearly states the action ('Remove a widget from a dashboard'), matches the tool name, and distinguishes from sibling tools like add/update/delete widgets. It also specifies prerequisites and destructive nature.

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?

Provides clear when-to-use guidance, including required mode and environment variables, and explains the confirm parameter for preview vs. permanent delete. Does not explicitly mention alternatives but context is sufficient.

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

smartsuite_remove_layout_sectionA
Destructive

Remove a section from an application's record-view layout by its section__… slug. Requires schema-write. Removes only the section grouping; fields that were under it are preserved (they just rejoin the surrounding layout). Dry-run preview unless confirm:true.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesThe section slug (section__…) to remove.
tabIdNoWhich layout to edit when tabs are enabled (REQUIRED then): a tab id, "all" for every tab, or "top" for the hidden top-level layout. Omit only when tabs are disabled.
confirmNoMust be true to apply (default false = preview).
applicationIdYesThe application (table) ID.

TDQS

A4.2/5.0
Behavior4/5

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

Adds detail beyond annotations: requires schema-write (mutation), dry-run behavior, and non-destruction of fields. Annotations indicate destructive, but description clarifies scope.

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?

Three concise sentences, front-loaded with purpose. No unnecessary words, every sentence adds value.

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?

Covers key aspects: purpose, effect, permission, preview behavior. Lacks error conditions or exact slug format, but sufficient for an AI to use correctly.

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 coverage is 100%, so baseline 3. Description adds minimal extra meaning: slug pattern 'section__…' and confirm default false. Does not add to other parameters.

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?

Clearly states verb 'Remove', resource 'section from layout', and identifier 'section__… slug'. Distinguishes from sibling tools like 'add_layout_section' and 'update_layout_section' by specifying it removes only the grouping, preserving fields.

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?

Provides context: requires 'schema-write' permission, explains dry-run preview unless confirm=true, and clarifies that fields are preserved. Does not explicitly state when not to use, but the distinction is clear.

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

smartsuite_remove_layout_tabA
Destructive

Remove a tab from an application's record-view layout by its tab id. Requires schema-write. Fields remain in the top-level layout (not deleted). Removing the last tab disables tabs. Dry-run preview unless confirm:true.

ParametersJSON Schema
NameRequiredDescriptionDefault
tabIdYesThe tab id to remove.
confirmNoMust be true to apply (default false = preview).
applicationIdYesThe application (table) ID.

TDQS

A4.4/5.0
Behavior5/5

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

Adds valuable behavior beyond destructiveHint annotation: fields remain, last tab disables tabs, dry-run preview mode, and authentication requirement. No contradiction with annotations.

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?

Three efficient sentences, front-loaded with core purpose. No wasted words.

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?

Covers key behavioral aspects and requirements for a simple tool with no output schema. Minor omission of error handling or behavior on missing tab, but generally complete.

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 coverage is 100% so parameters are well-documented. Description adds meaning for confirm (dry-run preview) but no extra detail for tabId or applicationId beyond schema.

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?

Clearly states the tool removes a tab from a record-view layout by tab id. Differentiates from siblings like smartsuite_add_layout_tab and smartsuite_remove_layout_section.

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?

Specifies prerequisites (schema-write), confirms dry-run preview by default, and covers edge case (last tab disables tabs). Does not explicitly contrast with alternatives but context is sufficient for most agents.

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

smartsuite_restore_fieldA

Restore a soft-deleted field back into its application. Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true. Supply the applicationId the field belonged to and its slug (from smartsuite_list_deleted_fields). Dry-run preview unless confirm:true.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesThe deleted field slug to restore.
confirmNoMust be true to restore (default false = preview).
applicationIdYesThe application (table) the field belonged to.

TDQS

A5/5.0
Behavior5/5

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

The description discloses behavioral traits beyond annotations: mutation (consistent with readOnlyHint=false), required mode and env variable, dry-run preview, and need for explicit confirmation. No contradictions with annotations.

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?

The description is concise (two sentences) and front-loaded with the main action and essential requirements. Every sentence adds value without redundancy.

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?

Given the tool's complexity (3 parameters, no output schema), the description covers all critical aspects: purpose, prerequisites, input sources, and default behavior. It is complete for agent selection and invocation.

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

Parameters5/5

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

Even though schema coverage is 100%, the description adds meaning by explaining the slug's origin (from smartsuite_list_deleted_fields) and the confirm parameter's default behavior. This enriches the schema's definitions.

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 clearly states the action ('Restore a soft-deleted field back into its application'), specifying the verb 'Restore' and the resource ('soft-deleted field'). It distinguishes itself from sibling tools like 'smartsuite_list_deleted_fields' and 'smartsuite_delete_field' by focusing on restoration.

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?

The description explicitly states requirements ('readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true'), provides context on inputs ('Supply the applicationId the field belonged to and its slug (from smartsuite_list_deleted_fields)'), and explains behavior ('Dry-run preview unless confirm:true'). This gives clear guidance on when and how to use the tool.

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

smartsuite_restore_recordsA

Restore soft-deleted records from the trash. Requires readwrite or admin mode AND SMARTSUITE_ENABLE_RESTORE=true. Without confirm:true returns a preview; pass confirm:true to restore. Get record IDs from the smartsuite_delete_records response, the audit log, or smartsuite_list_deleted_records.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNoSet true to restore; otherwise returns a dry-run preview.
recordIdsYesIDs of deleted records to restore.
applicationIdYesThe application the records belong to.

TDQS

A4.7/5.0
Behavior4/5

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

Annotations only provide readOnlyHint=false, indicating mutation. The description goes beyond by detailing the need for specific access modes and configuration flags, and it discloses the preview behavior when confirm is not true. No contradictions with annotations. It adds significant behavioral context that annotations alone do not cover.

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?

The description is two sentences long, each packed with essential information. The first sentence states purpose and prerequisites, the second explains behavior and data sources. Every word earns its place; no fluff or repetition.

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?

Given the tool has 3 simple parameters, no output schema, and minimal annotations, the description covers prerequisites, behavior, and parameter semantic. It doesn't describe the preview response format, but for a tool with a clear dual behavior, this is a minor gap. Overall, it provides sufficient context for an agent to use the tool correctly.

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

Parameters5/5

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

Schema coverage is 100% with descriptions for all parameters, but the description adds crucial semantics: it explains that confirm controls preview vs actual restore, and it tells users where to find record IDs (delete response, audit log, list_deleted_records). This goes well beyond the schema's minimal parameter descriptions.

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 starts with a clear verb+resource: 'Restore soft-deleted records from the trash.' It distinguishes this tool from siblings like smartsuite_delete_records and smartsuite_list_deleted_records by specifying it's for restoration from trash, and it mentions prerequisites that separate it from other record operations.

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?

The description explicitly states when to use the tool (restore soft-deleted records) and provides critical context: it requires readwrite/admin mode and the SMARTSUITE_ENABLE_RESTORE=true flag. It also explains the dual behavior of the confirm parameter (preview vs actual restore) and where to obtain record IDs, giving comprehensive usage guidance.

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

smartsuite_search_recordsB
Read-only

Search records using a text query across specified fields.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax records to return (default 25)
queryYesText to search for
cursorNoPagination cursor
formatNo"json" (default) or "compact" columns+rows table (fewer tokens for large result sets).
fieldSlugsNoField slugs to search within
applicationIdYesThe application ID
includeFieldContextNoWhen true, adds a _fieldContext map to the response.

TDQS

B3.4/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, so the description's contribution is minimal. It adds no additional behavioral context such as performance implications, rate limits, or edge cases. The description does not contradict 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?

The description is a single, clear sentence of 10 words, with no extraneous information. It is appropriately concise for a simple tool, though it could benefit from slightly more structure.

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?

Given the tool has 7 parameters (2 required) and no output schema, the description is somewhat minimal. It does not describe the return format or pagination behavior, but the tool's purpose is straightforward enough that the description is adequate.

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 100%, so the schema already documents all parameters. The description adds no extra meaning beyond the schema, meeting the baseline expectation.

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 clearly states the action ('Search records'), the resource ('records'), and the scope ('using a text query across specified fields'). It effectively distinguishes this from sibling tools like 'list_records' or 'get_record' by focusing on text-based search.

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?

The description implies usage for full-text search but does not provide explicit guidance on when to use this tool versus alternatives (e.g., 'list_records' or 'query_records'). No when-not-to-use or alternative references are included.

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

smartsuite_set_automation_ai_promptA

Set the dynamic prompt on an automation's AI ("AI Workflow Agent" / ai-custom-prompt) action. Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true. Supply promptTemplate as plain text where {{field_slug}} inserts a live reference to a field (resolved against applicationId — the table the automation works on). The tool builds the correct rich-text prompt (with field-reference pills) and writes it to the action, leaving the rest of the automation intact — this is the reliable way to author workflow AI prompts (do NOT hand-build the prompt). If the automation has multiple AI actions, pass actionInstanceId. Dry-run preview unless confirm:true. (Reads via GetAutomation, so it works even in solutions where listing automations fails.)

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNoSet true to apply; otherwise returns a dry-run preview.
solutionIdYesThe solution the automation belongs to.
automationIdYesThe automation ID.
applicationIdYesThe table whose field slugs {{slug}} references resolve against (usually the automation trigger's table).
promptTemplateYesPlain-text prompt; {{field_slug}} inserts a live field reference.
actionInstanceIdNoOptional: which AI action, when the automation has more than one (action_reference.instance_id).

TDQS

A4.9/5.0
Behavior5/5

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

Annotations only set readOnlyHint=false, so the description carries the burden. It discloses that the tool writes the prompt, leaves the rest intact, builds rich-text from plain text, resolves field references, and dry-runs by default. Auth and environment requirements are noted. No contradictions.

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?

The description is a single dense paragraph of about 100 words. It is front-loaded with the main action and contains no fluff, but could benefit from slight structuring (e.g., bullet points or separate sentences for prerequisites). Still very concise.

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?

Given 6 parameters, no output schema, and no annotations beyond readOnlyHint, the description thoroughly explains the mechanism, edge cases, and safe usage (dry-run preview). It mentions the underlying GetAutomation call for reliability. The agent has enough to use the tool correctly.

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

Parameters5/5

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

Schema coverage is 100%, but the description adds vital context: promptTemplate format with {{field_slug}} syntax, applicationId as the resolution table, actionInstanceId for multi-action scenarios, and confirm's dry-run behavior. This goes beyond the schema descriptions.

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 clearly states the tool's action: 'Set the dynamic prompt on an automation's AI action.' It specifies the exact resource and distinguishes itself by calling itself 'the reliable way' compared to hand-building.

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?

Explicit prerequisites are given (readwrite/admin mode, SMARTSUITE_ENABLE_SCHEMA_WRITE=true), usage instructions for dry-run vs confirmation with confirm:true, and handling multiple AI actions via actionInstanceId. It also warns against hand-building the prompt.

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

smartsuite_set_display_logicA

Add, modify, or remove display (visibility) logic on a field, section, or tab — show it only when conditions on other fields are met. Requires readwrite/admin + SMARTSUITE_ENABLE_SCHEMA_WRITE. Set target ("field"|"section"|"tab") + targetId (field slug / section__ slug / tab id) and conditions: an array of {comparison, field, value} combined by operator ("and"/"or"); pass clear:true to remove the rule. Example: show the Priority field only when Status is complete → target:"field", targetId:"priority", conditions:[{comparison:"is", field:"status", value:"complete"}]. Common comparisons: is, is_not, is_empty, is_not_empty, contains. Dry-run preview unless confirm:true.

ParametersJSON Schema
NameRequiredDescriptionDefault
clearNoRemove the existing rule from the target (ignores conditions).
targetYesWhat the rule controls.
confirmNoMust be true to apply (default false = preview).
operatorNoHow multiple conditions combine (default and).
targetIdYesField slug, section__ slug, or tab id (matching target).
conditionsNoConditions: [{comparison, field, value}]. The target shows when these are met.
applicationIdYesThe application (table) ID.

TDQS

A4.6/5.0
Behavior5/5

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

Annotations indicate readOnlyHint: false, confirming it's a write operation. The description adds important details: required permissions, the ability to remove logic via clear:true, and the dry-run behavior (preview unless confirm:true). It also explains the conditions structure and common comparisons. No contradictions.

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?

The description is well-structured and front-loaded with the core purpose. It includes an example and lists common comparisons. Slightly long but all sentences earn their place. Minor reduction due to length but no fluff.

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?

Given the complexity (7 parameters, nested conditions, three target types), the description covers behavior, permissions, and usage patterns. It does not mention return values, but that is acceptable since no output schema exists. Overall, it is complete enough for an agent to use correctly.

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

Parameters5/5

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

Schema coverage is 100%, so baseline is 3. The description goes well beyond the schema by explaining target types (field slug, section__ slug, tab id), conditions array format with example, common comparisons, and the clear/confirm flags. This adds significant value for an agent.

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 states the verb 'Add, modify, or remove' and the resource 'display (visibility) logic on a field, section, or tab', with the specific purpose 'show it only when conditions on other fields are met'. This clearly distinguishes it from sibling tools like smartsuite_set_field_visibility, which likely handles static visibility instead of conditional logic.

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?

The description provides clear context: it's used for conditional visibility, requires readwrite/admin + SMARTSUITE_ENABLE_SCHEMA_WRITE, and mentions dry-run preview unless confirm:true. It gives an example and lists common comparisons. However, it does not explicitly contrast with smartsuite_set_field_visibility or state when not to use it.

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

smartsuite_set_field_help_textA

Set or modify a field's help text (any field type). Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true. helpText is lightweight markdown — paragraphs (blank-line separated), bullet lists (-/*), ordered lists (1.), and inline bold / italic — converted to SmartSuite's rich help_doc. Pass helpText:"" to clear it. displayFormat controls how it shows: "tooltip" (info icon) or "below_field_name". The full field definition is read and rewritten (other params preserved). Applies asynchronously. Dry-run preview unless confirm:true.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesThe field slug.
confirmNoMust be true to apply (default false = preview).
helpTextNoHelp text as markdown ("" clears it).
applicationIdYesThe application (table) ID.
displayFormatNoHow the help text is displayed (default tooltip when setting).

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only provide readOnlyHint=false, indicating a write operation. The description adds extensive behavioral details: markdown conversion, clearing help text, display format options, that the full field definition is rewritten, async application, and dry-run preview. No contradictions.

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?

The description is a single paragraph of 5 sentences, each providing essential information without redundancy. It front-loads the core purpose and adds concrete details efficiently.

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?

Given no output schema, the description fully covers the tool's behavior, prerequisites, and effects. No missing context for proper invocation.

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

Parameters5/5

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

Schema coverage is 100%, but the description adds significant value beyond parameter descriptions: explains markdown syntax for helpText, the effect of empty string, the meaning of displayFormat values, and the confirm parameter's role in dry-run vs apply.

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 clearly states the tool's purpose: 'Set or modify a field's help text (any field type).' This is a specific verb+resource combination, and the sibling tools like smartsuite_set_field_visibility and smartsuite_update_field handle different aspects, providing distinction.

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?

The description mentions required conditions ('Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true') and explains the dry-run behavior with confirm. While it doesn't explicitly contrast with siblings, the context is clear enough for appropriate use.

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

smartsuite_set_field_visibilityA

Hide or show a field in the record view. Requires readwrite/admin + SMARTSUITE_ENABLE_SCHEMA_WRITE. hidden:true hides the field (adds it to the layout's record-wide hidden_fields list); hidden:false shows it. Hidden fields stay in the layout structure but aren't displayed; this is record-wide (not per-tab). Dry-run preview unless confirm:true.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesThe field slug to hide or show.
hiddenYestrue = hide the field, false = show it.
confirmNoMust be true to apply (default false = preview).
applicationIdYesThe application (table) ID.

TDQS

A4.3/5.0
Behavior4/5

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

Discloses mutation (annotations confirm readOnlyHint:false), details effect on layout's hidden_fields list, record-wide scope, and preview mode. No contradiction with 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 sentences efficiently convey purpose, requirements, and behavior. Front-loaded with main action, then details.

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?

Covers inputs and behavior well, though no output schema means return values are not described. Still sufficient for a mutation tool with clear inputs.

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%, but description adds value by explaining behavioral impact of hidden (true/false) and confirm, e.g., 'hidden:true hides the field (adds it to the layout's record-wide hidden_fields list).'

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?

Description clearly states 'Hide or show a field in the record view.' with specific verb and resource, distinguishing it from siblings like smartsuite_delete_field or smartsuite_create_field.

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?

Description specifies required permissions ('readwrite/admin + SMARTSUITE_ENABLE_SCHEMA_WRITE'), explains dry-run behavior unless confirm:true, and notes that hiding is record-wide. Lacks explicit when-not-to-use, but context is clear.

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

smartsuite_submit_formA

Submit a SmartSuite form — creates a record through the form's submission pipeline, exactly as a user filling out the form would. Two-step: call WITHOUT values to get the form's input spec (fields to collect, with type and choice hints); then call WITH values (keyed by field slug, using normal SmartSuite record value shapes) to submit. Validates that supplied fields are on the form and that required fields are present. Submitting requires readwrite or admin mode (it creates a record).

ParametersJSON Schema
NameRequiredDescriptionDefault
formIdYesThe form (report) ID — from smartsuite_list_forms
valuesNoField values keyed by slug (same shapes as record create). Omit to preview the form's fields first.
applicationIdYesThe application ID the form belongs to

TDQS

A4.5/5.0
Behavior5/5

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

Beyond annotations, the description fully discloses the two-step workflow, validation behavior (required fields, field membership), and the need for readwrite/admin mode. No annotation contradiction.

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?

The description is extremely concise, using two sentences to convey purpose, workflow, validation, and auth. Front-loaded with the primary action.

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?

While the description covers the process and constraints, it omits details about the return value shape for both steps (preview and submission). Given no output schema, this is a notable gap for an agent expecting a response.

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 already covers all parameters (100% coverage). The description adds value by integrating the parameters into the two-step process, explaining the role of 'values' omission for preview, and clarifying that values use slug keys and record shapes.

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 clearly states the tool submits a SmartSuite form to create a record, exactly as a user filling out the form. It distinguishes from sibling tools like direct record creation by emphasizing the form pipeline.

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?

The description explains the two-step usage pattern (call without values to preview, then with values to submit) and mentions authentication mode. However, it does not explicitly contrast with alternative tools like direct record creation or other form actions.

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

smartsuite_update_applicationA

Update table (application) attributes — rename the table (name) and/or change its record term (e.g. "record" → "invoice"). Requires readwrite/admin + SMARTSUITE_ENABLE_SCHEMA_WRITE. Dry-run preview unless confirm:true. (This is the table rename tool; for field renames use smartsuite_update_field.)

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoNew table name.
confirmNoMust be true to apply (default false = preview).
recordTermNoOptional: singular record term for the table (e.g. "invoice").
applicationIdYesThe application (table) ID.

TDQS

A4.9/5.0
Behavior5/5

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

The description adds behavioral context beyond annotations: it's a mutation requiring specific permissions, and it performs a dry-run preview unless confirm:true. This fully informs the agent about the tool's effects.

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?

The description is two sentences plus a parenthetical note. Every sentence adds essential information without redundancy.

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?

For a mutation tool with 4 parameters and no output schema, the description covers everything needed: purpose, parameters, prerequisites, behavior, and sibling differentiation.

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 baseline is 3. The description adds meaning by explaining the tool's purpose (rename table and record term) and the confirm parameter's role (preview vs. apply), which goes beyond the schema descriptions.

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 clearly states it updates table attributes like name and record term. It explicitly distinguishes itself as the table rename tool vs. smartsuite_update_field for field renames, providing a specific verb and resource.

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?

The description explains when to use the tool (rename table/change record term), mentions required permissions (readwrite/admin + SMARTSUITE_ENABLE_SCHEMA_WRITE), and indicates dry-run behavior unless confirm:true. It also points to an alternative for field renames.

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

smartsuite_update_automationA

Update an existing automation. Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true. Fetches the current automation and applies only the fields you provide — label, trigger, actionGroups/actions, automaticDescription, timezone — preserving the rest (including first_created and the untouched trigger/actions). Pass credentialId to fill missing credentials. IMPORTANT — preserve fidelity: trigger and action groups you supply REPLACE the existing ones wholesale (no per-action merge). To change only the label/description, OMIT trigger and actions so they are preserved byte-for-byte. Do NOT rebuild an action or trigger from smartsuite_describe_automation_step output — that view is SLIMMED (it drops input encodings such as an AI action's model setting); reconstructing from it and saving will strip those settings and can leave the automation invalid (which the engine then marks disabled). If you must edit one action, start from the raw automation object and change only the target input. The enabled state is engine-computed from validity — you cannot set it directly; a disabled result means the automation is invalid (see the returned statusReason).

ParametersJSON Schema
NameRequiredDescriptionDefault
labelNoNew name (optional).
actionsNoReplacement flat action list, wrapped into one group (optional).
triggerNoReplacement trigger object (optional).
timezoneNoNew IANA timezone (optional).
solutionIdYesThe solution ID the automation belongs to.
actionGroupsNoReplacement native action groups (optional). Mutually exclusive with `actions`.
automationIdYesThe automation ID to update.
credentialIdNoOptional: fill this credential_id onto the trigger and any action missing one.
automaticDescriptionNoNew UI display phrase (optional).

TDQS

A4.9/5.0
Behavior5/5

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

Annotations only set readOnlyHint=false, so the description carries the burden. It details the fetch-then-apply pattern, the wholesale replacement of trigger/actions, the preservation of unprovided fields, and the engine-computed enabled state. No contradiction with 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?

The description is long but well-structured: purpose first, then requirements, then behavior, then warnings. Every sentence is justified given the complexity and potential for destructive updates. A minor trim could be made, but the length is warranted for safety.

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?

Given no output schema, the description explains the outcome (disabled status if invalid) and mentions statusReason. It covers prerequisites, parameter interactions, and common pitfalls. For a tool with 9 parameters and nested objects, this is thorough and complete.

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

Parameters5/5

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

Schema coverage is 100%, but the description adds crucial meaning: explains the fetch-and-apply behavior, mutual exclusivity of actions/actionGroups, the role of credentialId, and the replacement semantics for trigger and actions. This goes well beyond the schema descriptions.

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 opens with 'Update an existing automation.' This is a specific verb+resource, clearly distinguishing from create, delete, or describe siblings. It immediately identifies the tool's core action.

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?

Explicitly states prerequisites (readwrite/admin mode, environment variable), explains how to use parameters to avoid overwriting (OMIT trigger/actions to preserve them), warns against using describe_automation_step output, and clarifies the enabled state behavior. Provides comprehensive when-to and when-not-to guidance.

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

smartsuite_update_dashboardA

Update a dashboard: rename (label), change description, and/or edit tabs, footer, and style. Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true. tabs REPLACES the tab set — pass the full desired list as {id?, name, order?}; include a tab's existing id to rename/reorder it (get ids from smartsuite_describe_dashboard), omit id to add a new tab, drop a tab to remove it (its widgets go too). tabsEnabled toggles the tab bar; tabsPosition is "left"/"top". footer/style are merged onto the existing config.

ParametersJSON Schema
NameRequiredDescriptionDefault
tabsNoReplacement tab set: [{id?, name, order?}]. Keep ids to preserve/rename tabs; omit id to add; drop to remove.
labelNoNew name (optional; checked for uniqueness).
styleNoStyle overrides, e.g. {width, background_color} (merged).
footerNoFooter config overrides (merged).
dashboardIdYesThe dashboard (report) ID.
descriptionNoNew description (optional).
tabsEnabledNoShow/hide the tab bar.
tabsPositionNoTab bar position: "left" or "top".

TDQS

A4.6/5.0
Behavior5/5

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

Beyond the annotation readOnlyHint=false, the description discloses the tabs replacement behavior (including destructive deletion of widgets), the merging of footer/style, and required permissions. This provides comprehensive behavioral context.

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?

The description is approximately 150 words, well-structured with clear explanations of each updatable aspect. It front-loads the main purpose and elaborates on parameters efficiently, avoiding redundancy.

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?

Given the tool's complexity (8 parameters, nested objects) and no output schema, the description covers permissions, parameter behavior, and cross-tool references. It is nearly complete; only missing an explanation of the return value, which is not required per rubric.

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 description coverage is 100%, so the baseline is 3. The description adds extra value by explaining the tabs replacement semantics (full list required, id usage for rename/add/remove) and merge behavior for footer/style, which goes beyond the schema descriptions.

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 clearly states 'Update a dashboard' and lists specific updatable components (label, description, tabs, footer, style). It distinguishes the tool from sibling update tools (e.g., update_form) by focusing on dashboard-specific properties.

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?

The description specifies prerequisites (readwrite/admin mode and SMARTSUITE_ENABLE_SCHEMA_WRITE=true) and gives guidance on obtaining tab IDs from smartsuite_describe_dashboard. However, it does not explicitly state when not to use this tool or mention alternatives.

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

smartsuite_update_dashboard_widgetA

Update a dashboard widget's settings and/or layout. Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true. Change position {x,y} and size {width,height} to move/resize (x/width columns, y/height pixels), rename (name), toggle showName/collapsedByDefault, set color/description, move to another tab (tabId), or replace params. NOTE: params is replaced wholesale — to tweak it, read the widget first via smartsuite_describe_dashboard(includeWidgets:true) and pass the full new params object. Updating params can also reset the widget height, so pass size in the same call to preserve it.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoNew name (optional).
sizeNoNew size {width, height} (optional).
colorNoWidget accent color (optional).
tabIdNoMove the widget to a different tab (optional).
paramsNoReplacement params object (optional; replaces wholesale).
positionNoNew position {x, y} (optional).
showNameNoShow the widget title (optional).
widgetIdYesThe widget ID (from describe_dashboard).
descriptionNoWidget description (optional).
collapsedByDefaultNoCollapse the widget by default (optional).

TDQS

A4.5/5.0
Behavior5/5

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

Annotations only provide readOnlyHint=false, so the description must disclose behavioral traits. It does so thoroughly: explains that params is replaced wholesale, that updating params can reset widget height (advising to also pass size), and that position uses columns for x and pixels for y. This adds significant value beyond 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?

The description is front-loaded with the core purpose, then lists modifications concisely. It contains all necessary warnings and explanations in a single paragraph. While slightly long (5 sentences), every sentence adds essential context. Minor redundancy in listing 'settings' and then enumerating them, but overall efficient.

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?

Given 10 parameters, no output schema, and nested objects, the description covers the main use cases, prerequisites, side effects, and references a companion tool. It explains the critical params replacement and height reset. Lacks information on return value or error handling, but completeness is high for a mutation tool.

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 baseline is 3. The description adds meaning by clarifying the coordinate units (x/width columns, y/height pixels), the replacement behavior of params, and linking tabId to moving widgets. It doesn't detail every parameter but compensates for nested objects and complex behaviors.

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 clearly states the tool updates a dashboard widget's settings and/or layout, listing specific attributes (position, size, name, color, etc.). It distinguishes itself by being the update counterpart to add/remove widgets, though it doesn't explicitly contrast with siblings. Still, purpose is unmistakable.

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?

Explicitly states the required mode (readwrite/admin) and environment variable (SMARTSUITE_ENABLE_SCHEMA_WRITE=true). Provides guidance on updating params (read first, pass full object) and warns about height reset. Does not explicitly list when NOT to use it or compare to alternatives, but context is clear.

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

smartsuite_update_fieldA

Update a field's label and/or params (any type). Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true. params is a PATCH — only the keys you pass are changed (shallow-merged onto the existing params); everything else (choices, nested, links) is preserved. Read the field first with smartsuite_describe_field to see current params. Note: choices is replaced wholesale, not merged — to edit select options pass the FULL choices array (each choice may set value_help_text=description and weight=numeric value; colors auto-assigned if omitted). Applies asynchronously. Dry-run preview unless confirm:true. (For help text use smartsuite_set_field_help_text; for formula expressions use smartsuite_update_formula_field.) AI PROMPT: pass aiPrompt (plain text with {{field_slug}} references) to (re)build the field's dynamic AI instructions; it preserves the existing ai_agent model/settings and replaces only the prompt.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesThe field slug to update.
labelNoNew label (optional).
paramsNoOptional params patch (shallow-merged onto existing params). For select fields, omitted choice colors are auto-assigned.
confirmNoMust be true to apply (default false = preview).
aiPromptNoOptional: rebuild the field's AI prompt. Plain-text with {{field_slug}} references; preserves existing ai_agent model/settings.
applicationIdYesThe application (table) ID.

TDQS

A4.8/5.0
Behavior5/5

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

Discloses PATCH semantics, shallow merge, wholesale replacement of choices, async application, dry-run mode, and aiPrompt behavior. Annotations only indicate it's not read-only; description adds extensive detail.

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?

Though lengthy, every sentence carries essential information for a complex operation. Front-loaded with core purpose, but could be slightly more terse without losing clarity.

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?

Covers all aspects: prerequisites, parameter behaviors, usage patterns, alternatives, and async/dry-run details. Adequate given no output schema and moderate complexity.

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% but description adds meaningful explanation of params (shallow-merged, choices replaced wholesale) and aiPrompt (preserves existing settings), going beyond basic schema descriptions.

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 explicitly states it updates a field's label and/or params, distinguishing it from related tools like smartsuite_set_field_help_text and smartsuite_update_formula_field.

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?

Provides explicit prerequisites (readwrite/admin mode, SMARTSUITE_ENABLE_SCHEMA_WRITE=true), recommends reading the field first, and lists alternatives for help text and formula updates.

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

smartsuite_update_formA

Update a form's settings and/or structure. Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true. Provide any of: settings (title/description/submitLabel/redirectToUrl/displaySmartSuiteBranding) to merge; fields to replace the first input page's fields (slugs validated against the schema); or formState as a full raw form_state object (advanced escape hatch, replaces everything). Without confirm:true returns a dry-run preview; set confirm:true to apply.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleNo
fieldsNoReplace the first input page's fields. Each item is a slug string or { slug, required, label, helpText }.
formIdYesThe form (report) ID
confirmNoMust be true to apply. Omit/false for a dry-run preview.
formStateNoAdvanced: a complete form_state object ({ pages: [...] , ...settings }) that replaces the form structure wholesale. Mutually exclusive with fields.
descriptionNo
submitLabelNo
applicationIdYesThe application ID
redirectToUrlNo
displaySmartSuiteBrandingNo

TDQS

A4.6/5.0
Behavior5/5

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

Annotations show readOnlyHint=false, and the description elaborates on the write behavior, including dry-run preview, confirm to apply, and the advanced formState escape hatch. No contradictions.

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?

The description is a single paragraph that efficiently covers requirements, options, and behavior. Every sentence adds value without redundancy.

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?

Given 10 parameters, nested objects, and no output schema, the description covers primary behaviors and the dry-run mechanism. It lacks return value details but is adequate for agent invocation.

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 has 50% description coverage; the description adds meaning by explaining settings merging, fields replacement, and formState wholesale replacement. It compensates for missing schema descriptions on parameters like title, submitLabel, etc.

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 clearly states 'Update a form's settings and/or structure.' It specifies what can be updated (settings, fields, formState) and distinguishes from sibling tools like list, describe, create, submit forms.

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?

The description provides explicit prerequisites (readwrite/admin mode, SMARTSUITE_ENABLE_SCHEMA_WRITE=true) and explains the dry-run vs apply flow via confirm parameter. It does not explicitly state when not to use, but the alternatives are implied by sibling tool names.

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

smartsuite_update_formula_fieldA

Update an existing formula field's expression, label, and/or return type. Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true. The current definition is fetched and only the supplied fields are changed (other params preserved). The new expression is validated first. Without confirm:true returns a dry-run preview (new vs previous); set confirm:true to apply.

ParametersJSON Schema
NameRequiredDescriptionDefault
labelNoNew display label (optional)
confirmNoMust be true to apply. Omit/false for a validate-only dry run.
formulaNoNew formula expression (optional)
fieldSlugYesThe formula field slug to update
returnTypeNoNew output field type (optional)
applicationIdYesThe application ID

TDQS

A4.7/5.0
Behavior5/5

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

The description discloses behavioral traits beyond the annotations: it is not read-only (readOnlyHint=false) and explains that it fetches the current definition, selectively updates fields, validates the expression, and supports a dry-run mode via the confirm parameter. This provides full behavioral transparency, complementing the annotations effectively.

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 well-structured sentences cover purpose, prerequisites, and behavior without any fluff. The information is front-loaded and every sentence adds value. Highly concise and effective.

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?

Given the complexity (6 parameters, no output schema), the description covers prerequisites, update mechanism, validation, and dry-run mode. It is complete for an AI agent to understand the operation and its nuances, and it differentiates well from siblings like smartsuite_update_field.

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. The description adds value by explaining how parameters interact (only supplied fields changed) and the role of confirm (validate vs apply). This goes beyond the schema descriptions, hence a 4.

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 clearly states the action (update) and the resource (existing formula field), specifying that it can update expression, label, and return type. This distinguishes it from sibling tools like smartsuite_create_formula_field (create new) and smartsuite_update_field (generic field update). The verb 'update' with a specific resource provides excellent purpose clarity.

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?

The description provides explicit prerequisites (readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true) and explains the behavior (fetches current definition, only supplied fields changed, validates expression, dry-run with confirm). While it doesn't explicitly state alternatives or when not to use, the context is clear enough for an AI agent to decide usage.

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

smartsuite_update_layout_sectionA

Update an existing record-view layout section (title, description, collapsed, hidden) by its section__… slug. Requires schema-write. Pass description:"" to clear it. Dry-run preview unless confirm:true.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesThe section slug (section__…).
tabIdNoWhich layout to edit when tabs are enabled (REQUIRED then): a tab id, "all" for every tab, or "top" for the hidden top-level layout. Omit only when tabs are disabled.
titleNoNew title.
hiddenNoHidden state.
confirmNoMust be true to apply (default false = preview).
collapsedNoCollapsed state.
descriptionNoNew description (plain text; "" clears it).
applicationIdYesThe application (table) ID.

TDQS

A4.4/5.0
Behavior4/5

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

Discloses schema-write permission and dry-run mechanism beyond annotations (which only indicate non-read-only). Also notes clearing description with empty string. Adds useful behavioral context.

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?

Three concise sentences with no superfluous content. Front-loads purpose and key constraints. Excellent economy of words.

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?

Covers essential behavioral aspects (preview, permission, clearing description) despite no output schema. Could be slightly more detailed on return value but adequate given complexity.

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% (baseline 3). Description adds semantic value by explaining dry-run via confirm param and clearing description with empty string, which are not fully captured in schema descriptions.

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?

Clearly states verb (update), resource (layout section), and specific attributes (title, description, collapsed, hidden). Distinguishes from sibling tools like add_layout_section.

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?

Provides context on permission requirement ('Requires schema-write') and preview behavior ('Dry-run preview unless confirm:true'). No explicit when-not or alternatives, but enough guidance for typical use.

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

smartsuite_update_layout_tabA

Update a record-view tab (name, description, position) by its tab id, and/or the tab-bar style/align. Requires schema-write. Pass description:"" to clear it. Dry-run preview unless confirm:true.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoNew tab name.
alignNoTab-bar alignment (e.g. "left").
styleNoTab-bar style for the whole table.
tabIdYesThe tab id to update.
confirmNoMust be true to apply (default false = preview).
positionNoNew 0-based position (reorders tabs).
descriptionNoNew description (plain text; "" clears it).
applicationIdYesThe application (table) ID.

TDQS

A4.4/5.0
Behavior5/5

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

With only readOnlyHint=false in annotations, the description fully discloses key behaviors: requires schema-write permission, dry-run preview unless confirm:true, and the ability to clear description by passing empty string. This significantly aids agent decision-making.

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?

Three concise sentences, each adding distinct value: operation, permission, and behavioral note. No fluff, front-loaded with essential 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?

Adequately complete for a mutation tool with no output schema. Covers permission, preview mode, and clearing description. Could mention error handling or side effects of reordering, but not required.

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 coverage is 100% and each parameter is well-described. The description adds minimal new semantic information beyond grouping the parameters. Baseline 3 is appropriate.

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 clearly states the tool updates a record-view tab, specifies the updatable attributes (name, description, position, style/align), and uses the tab id. It differentiates from sibling tools like add_layout_tab and remove_layout_tab by focusing on update.

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?

Provides clear context: requires schema-write, dry-run unless confirm:true. However, it does not explicitly exclude other tools or mention when to use alternatives like add_layout_tab or remove_layout_tab.

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

smartsuite_update_my_workA

Update one of the authenticated user's My Work items: mark it resolved/open and/or set its due date. Requires readwrite or admin mode. Use smartsuite_list_my_work to find the item id. Returns the updated item.

ParametersJSON Schema
NameRequiredDescriptionDefault
itemIdYesThe My Work item id (the "id" field from smartsuite_list_my_work)
statusNoMark the item resolved or reopen it.
dueDateNoSet the due date (ISO 8601, e.g. "2026-07-01T00:00:00Z"), or null to clear it.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations indicate readOnlyHint=false, so description adds the mode requirement and return value ('Returns the updated item'). It provides behavioral context beyond annotations without contradiction.

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 sentences front-load the core action, then provide prerequisites and outcome. Every word is necessary and no redundancy.

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?

For a simple update tool with three parameters and no output schema, the description covers purpose, prerequisites, and return value. It lacks error handling or edge cases but is sufficient for a typical use case.

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 100%, so parameters are well-documented. The description summarizes the actions (mark resolved/open, set due date) but adds minimal new meaning beyond the schema.

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 clearly states the tool updates 'My Work items' with specific actions: marking resolved/open and setting due date. It uses a specific verb ('Update') and resource ('My Work items'), distinguishing it from siblings like smartsuite_list_my_work.

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?

The description specifies required mode ('readwrite or admin mode') and directs to use smartsuite_list_my_work to find the item ID. While it lacks explicit when-not-to-use or alternatives, the context is clear.

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

smartsuite_update_recordA

Update an existing record. Requires readwrite or admin mode. Only supply fields you want to change.

ParametersJSON Schema
NameRequiredDescriptionDefault
fieldsYesFields to update, keyed by slug
recordIdYesThe record ID to update
applicationIdYesThe application ID

TDQS

A4.2/5.0
Behavior4/5

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

Behavior is consistent with annotations (readOnlyHint=false indicates mutation). The description adds context about required access mode and partial update behavior, which annotations do not cover. No contradiction.

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 sentences, front-loaded with core purpose, no unnecessary words. Every sentence provides value.

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?

For an update tool with no output schema, the description covers mode requirement and partial update best practice. It does not specify return value, but this is not critical given lack of output schema. Adequate for the complexity.

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 coverage is 100% with descriptions for all three parameters. The description does not add new parameter information beyond what the schema already provides, so baseline applies.

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 clearly states 'Update an existing record,' which is a specific verb+resource combination. This distinguishes it from sibling tools like create_record, list_records, and delete_records.

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?

The description provides explicit usage context: 'Requires readwrite or admin mode' and advises 'Only supply fields you want to change,' which implies partial updates. However, it does not explicitly mention when not to use or alternatives.

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

smartsuite_update_recordsA

Batch update multiple records. Supports dry-run mode. Requires readwrite or admin mode.

ParametersJSON Schema
NameRequiredDescriptionDefault
dryRunNoIf true, validate only without writing (default true)
confirmNoMust be true to execute when dryRun is false
recordsYesList of records to update
applicationIdYesThe application ID

TDQS

A4/5.0
Behavior4/5

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

Annotations indicate readOnlyHint false, consistent with mutation. The description adds beyond annotations by disclosing dry-run support and permission requirements, but does not detail error handling or side effects.

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 concise sentences with no fluff. All information is front-loaded and relevant.

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?

Covers purpose, basic usage, and constraints (permissions, dry-run). Lacks output information and error scenarios, but sufficient for a batch update tool with no output schema.

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 coverage is 100% with descriptions for all parameters. The description adds no parameter-level details beyond restating dry-run mode, so baseline 3 is appropriate.

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 clearly states 'Batch update multiple records', specifying the verb ('update') and resource ('multiple records'). It distinguishes from siblings like smartsuite_update_record (singular) and smartsuite_create_records (create).

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?

The description mentions dry-run mode and required permissions ('readwrite or admin mode'), which provide context but does not explicitly state when to use this tool over alternatives like smartsuite_update_record.

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

smartsuite_update_viewA

Update a view (report): rename it (label), change its description, and/or change its configuration — visibleFields, filters (+filterOperator), sort, groupBy. Requires readwrite/admin mode AND SMARTSUITE_ENABLE_SCHEMA_WRITE=true. Only the parts you pass are changed; each provided config window replaces that window (e.g. passing sort replaces the sort rules). Field slugs are validated. Refuses forms/dashboards (use their own tools). Use smartsuite_list_views / smartsuite_describe_view to find the viewId and current settings.

ParametersJSON Schema
NameRequiredDescriptionDefault
sortNoReplacement sort rules [{field, direction}] (optional).
labelNoNew name (optional; checked for uniqueness).
viewIdYesThe view (report) ID to update.
filtersNoReplacement filter conditions [{field, comparison, value}] (optional).
groupByNoReplacement group-by rules (optional).
descriptionNoNew description (optional).
visibleFieldsNoReplacement visible field slugs (optional).
filterOperatorNoAND/OR for filters (default and).

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only have readOnlyHint: false, so the description carries the full burden. It clearly indicates this is a write operation, explains the replace behavior for each configuration window, and states validation of field slugs. It also mentions the environment variable requirement. No contradiction with 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?

The description is a few sentences but each adds value. It is front-loaded with the main purpose and then covers requirements, behavior, and exclusions. Could be slightly more concise but is well-structured and efficient.

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?

Given 8 parameters, only one required, no output schema, and nested objects set to false, the description covers when to use, prerequisites, partial update behavior, validation, and what the tool does not handle. It also guides the agent to use other tools for viewId discovery. This is comprehensive for a complex update tool.

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 baseline is 3. The description adds useful context beyond schema: it explains that passing sort replaces the sort rules entirely, and that filterOperator defaults to 'and'. It also mentions field slugs are validated, which is not in the schema.

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 clearly states the tool updates a view/report, listing specific configurable attributes (label, description, visibleFields, filters, sort, groupBy). It distinguishes from siblings by explicitly stating it refuses forms/dashboards and directs to their own tools, which is a strong differentiator.

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?

The description provides explicit prerequisites (readwrite/admin mode + SMARTSUITE_ENABLE_SCHEMA_WRITE=true), explains partial update semantics ('Only the parts you pass are changed'), and suggests using other tools to gather viewId and current settings. It also notes that field slugs are validated and that forms/dashboards are handled by separate tools.

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

smartsuite_upload_fileA

Upload a file from the local filesystem to a SmartSuite file field. Requires readwrite or admin mode. The file is read from the local path and posted as multipart form data.

ParametersJSON Schema
NameRequiredDescriptionDefault
filePathYesAbsolute or relative path to the file on the local filesystem
filenameNoOverride the filename sent to SmartSuite (defaults to the basename of filePath)
recordIdYesThe record ID
fieldSlugYesThe file field slug
applicationIdYesThe application ID

TDQS

A4/5.0
Behavior4/5

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

Annotations indicate readOnlyHint: false, so it is a write operation. The description adds context: file is read locally and posted as multipart form data, and requires specific authorization modes. This goes beyond annotations.

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 sentences (31 words) directly state the purpose, prerequisites, and mechanism. No extraneous 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?

Given 5 parameters, no output schema, and simple operation, the description covers core behavior. It could mention success/failure responses or size limits, but is adequate for an agent to understand the tool's role.

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 coverage is 100%, so the schema already documents all parameters. The description adds minimal additional meaning beyond 'file is read from the local path,' which is already reflected in the filePath parameter description.

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 specifies the action ('Upload a file'), the source ('local filesystem'), and the destination ('SmartSuite file field'), clearly distinguishing it from siblings like smartsuite_get_file_url (download) and smartsuite_move_attachments (move).

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?

The description mentions prerequisite mode ('Requires readwrite or admin mode') but provides no guidance on when to use this vs. alternatives, nor when not to use it. Usage is implied but not explicit.

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

smartsuite_validate_automationA
Read-only

Check an automation for the errors SmartSuite shows inline in the automation list — most importantly "Trigger output with id not found", which means an action still references a trigger output (a field) that no longer exists (the field was deleted or its slug changed), so the automation is broken. Reproduces the UI check: resolves the trigger's current outputs and flags every action-input reference to a missing trigger output. Returns userEnabled (the ON/OFF toggle), status (engine validity: enabled/disabled/pending + reason), valid, and an errors[] list (each with the missing outputId and where it is used). Read-only. Works even in solutions where listing automations fails (uses GetAutomation).

ParametersJSON Schema
NameRequiredDescriptionDefault
solutionIdYesThe solution the automation belongs to.
automationIdYesThe automation ID to validate.

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the readOnlyHint annotation, the description discloses the validation logic ('resolves the trigger's current outputs and flags every action-input reference to a missing trigger output'), the exact return fields with semantics, and the fallback behavior using GetAutomation. This is far richer behavioral context than annotations alone provide.

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?

The description is dense yet well-organized: it leads with the core purpose, then explains the main error, the reproduced UI check, return values, read-only nature, and fallback behavior. Every sentence contributes essential information without repetition.

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 fully compensates by enumerating userEnabled, status, valid, and errors[] with meaningful explanations. It also covers an important edge case (works when listing automations fails), making the tool safely callable and interpretable by an agent.

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?

The input schema already describes both parameters at 100% coverage, so the baseline is 3. The description does not add parameter-specific detail beyond what the schema provides, though it does give useful surrounding context about solutions and automations.

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 ('Check'), a clear resource (an automation), and the exact kind of errors it detects, including the 'Trigger output with id <id> not found' case. This makes it immediately distinguishable from sibling automation tools like describe, list, update, or delete.

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?

The description clearly explains when to use the tool: to check an automation for errors shown inline in the SmartSuite automation list, and it notes that it works even when listing automations fails. It does not explicitly name alternatives or state when not to use them, so it falls just short of a 5.

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

smartsuite_validate_formulaA
Read-only

Validate a SmartSuite formula expression against an application WITHOUT writing anything (safe in any mode). Returns {valid, safe, warnings} when valid, or a descriptive error message when not (syntax errors, unknown functions, missing field references). Field references use [slug] and chain across linked/compound fields as [slug].[slug]. Use this to check a formula before creating or updating a field.

ParametersJSON Schema
NameRequiredDescriptionDefault
formulaYesThe formula expression, e.g. COUNT([sf1ac24c84]) or CONCAT([title], " - ", [status])
returnTypeNoOptional declared output field type (e.g. textfield, numberfield, datefield, currencyfield, yesnofield). Validation works without it.
applicationIdYesThe application ID the formula will run in (field references are resolved against its schema)

TDQS

A4.7/5.0
Behavior5/5

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

Adds significant detail beyond the readOnlyHint annotation: describes return format (valid, safe, warnings or error), error handling, and field reference syntax. No contradiction with annotations.

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 well-structured sentences. First sentence states purpose and safety. Second explains output and syntax. Every sentence adds value.

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?

No output schema, but description adequately explains return types and error messages. Covers field reference syntax, safety, and typical use case. Complete for a validation tool.

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 baseline is 3. The description adds usage context for formula syntax and returnType optionality, going beyond the schema descriptions.

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 clearly states the verb 'validate' and the resource 'SmartSuite formula expression', and explicitly notes it is safe and non-writing. This distinguishes it from sibling tools like smartsuite_analyze_formulas or field creation tools.

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?

Explicitly says to use before creating or updating a field, and emphasizes safety. However, it does not mention when not to use or list alternatives, though the sibling context is broad.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 5 tool updatesv1.0.0
    • Changedsmartsuite_create_application2 fields changed
      • addedInput schema / properties / fields
        Added value: +{
        +  "description": "Optional: fields to provision inline with the table, in order — all in this single request. Each entry: { fieldType, label, params? }, same semantics as smartsuite_create_field. aiPrompt is not supported here (the fields it would reference do not exist yet); set AI prompts after the table exists.",
        +  "items": {
        +    "properties": {
        +      "fieldType": {
        +        "description": "SmartSuite field type, e.g. textfield, numberfield, singleselectfield, linkedrecordfield.",
        +        "type": "string"
        +      },
        +      "label": {
        +        "description": "Field display label.",
        +        "type": "string"
        +      },
        +      "params": {
        +        "description": "Optional sparse field params; omit to accept type defaults.",
        +        "type": "object"
        +      }
        +    },
        +    "required": [
        +      "fieldType",
        +      "label"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedInput schema / properties / recordTerm
        Added value: +{
        +  "description": "What each record is called (singular), e.g. \"Request\". Defaults to \"Record\".",
        +  "type": "string"
        +}
    • Changedsmartsuite_create_field1 field changed
      • removedInput schema / properties / afterFieldSlug
        Removed value: -{
        -  "description": "Optional: place the new field after this field slug (default: end).",
        -  "type": "string"
        -}
    • Addedsmartsuite_create_fields
    • Changedsmartsuite_create_formula_field1 field changed
      • removedInput schema / properties / afterFieldSlug
        Removed value: -{
        -  "description": "Optional: place the new field immediately after this existing field slug (defaults to last field).",
        -  "type": "string"
        -}
    • Addedsmartsuite_validate_automation
  2. 83 tool updatesv0.9.8
    • First observedsmartsuite_add_dashboard_widget
    • First observedsmartsuite_add_layout_section
    • First observedsmartsuite_add_layout_tab
    • First observedsmartsuite_analyze_formulas
    • First observedsmartsuite_append_smartdoc_content
    • First observedsmartsuite_create_application
    • First observedsmartsuite_create_automation
    • First observedsmartsuite_create_comment
    • First observedsmartsuite_create_dashboard
    • First observedsmartsuite_create_field
    • First observedsmartsuite_create_form
    • First observedsmartsuite_create_formula_field
    • First observedsmartsuite_create_record
    • First observedsmartsuite_create_records
    • First observedsmartsuite_create_solution
    • First observedsmartsuite_create_view
    • First observedsmartsuite_delete_automation
    • First observedsmartsuite_delete_dashboard
    • First observedsmartsuite_delete_field
    • First observedsmartsuite_delete_records
    • First observedsmartsuite_delete_view
    • First observedsmartsuite_describe_application
    • First observedsmartsuite_describe_automation
    • First observedsmartsuite_describe_automation_step
    • First observedsmartsuite_describe_dashboard
    • First observedsmartsuite_describe_field
    • First observedsmartsuite_describe_form
    • First observedsmartsuite_describe_view
    • First observedsmartsuite_diagnostics
    • First observedsmartsuite_diff_schemas
    • First observedsmartsuite_export_diff
    • First observedsmartsuite_get_automation_limits
    • First observedsmartsuite_get_file_url
    • First observedsmartsuite_get_record
    • First observedsmartsuite_get_smartdoc_content
    • First observedsmartsuite_get_solution
    • First observedsmartsuite_list_applications
    • First observedsmartsuite_list_automation_credentials
    • First observedsmartsuite_list_automations
    • First observedsmartsuite_list_comments
    • First observedsmartsuite_list_dashboards
    • First observedsmartsuite_list_deleted_applications
    • First observedsmartsuite_list_deleted_fields
    • First observedsmartsuite_list_deleted_records
    • First observedsmartsuite_list_fields
    • First observedsmartsuite_list_forms
    • First observedsmartsuite_list_my_work
    • First observedsmartsuite_list_records
    • First observedsmartsuite_list_solution_members
    • First observedsmartsuite_list_solutions
    • First observedsmartsuite_list_views
    • First observedsmartsuite_match_applications
    • First observedsmartsuite_match_solutions
    • First observedsmartsuite_move_attachments
    • First observedsmartsuite_move_layout_field
    • First observedsmartsuite_normalize_dashboard_widgets
    • First observedsmartsuite_query_records
    • First observedsmartsuite_remove_dashboard_widget
    • First observedsmartsuite_remove_layout_section
    • First observedsmartsuite_remove_layout_tab
    • First observedsmartsuite_restore_field
    • First observedsmartsuite_restore_records
    • First observedsmartsuite_search_records
    • First observedsmartsuite_set_automation_ai_prompt
    • First observedsmartsuite_set_display_logic
    • First observedsmartsuite_set_field_help_text
    • First observedsmartsuite_set_field_visibility
    • First observedsmartsuite_submit_form
    • First observedsmartsuite_update_application
    • First observedsmartsuite_update_automation
    • First observedsmartsuite_update_dashboard
    • First observedsmartsuite_update_dashboard_widget
    • First observedsmartsuite_update_field
    • First observedsmartsuite_update_form
    • First observedsmartsuite_update_formula_field
    • First observedsmartsuite_update_layout_section
    • First observedsmartsuite_update_layout_tab
    • First observedsmartsuite_update_my_work
    • First observedsmartsuite_update_record
    • First observedsmartsuite_update_records
    • First observedsmartsuite_update_view
    • First observedsmartsuite_upload_file
    • First observedsmartsuite_validate_formula

TDQS

A3.9/5.0
Disambiguation4/5

The 85 tools cluster into ~15 clear resource domains (records, fields, views, forms, dashboards, automations, layout, migration, etc.), each with distinct purposes. A few pairs could be confused — search_records vs query_records, create_field vs create_fields, set_field_visibility vs set_display_logic — but the descriptions explicitly cross-reference and distinguish these, making misselection unlikely.

Naming Consistency5/5

Every tool follows the smartsuite_<verb>_<resource> pattern with remarkable discipline: list_<plural> for enumeration, get/describe/create/update/delete_<singular> for individual resources, and consistent verbs like set_, add_, remove_, move_, restore_, and validate_. Even migration-specific tools (match_, diff_, export_) conform to the convention.

Tool Count2/5

At 85 tools, this far exceeds the 25+ threshold and will heavily tax agent context windows and tool-selection accuracy. The broad platform scope (solutions, tables, fields, records, views, forms, dashboards, automations, files, layout, migration) justifies some of the size, but the surface remains unwieldy for practical agent use.

Completeness4/5

Lifecycle coverage is strong across nearly every domain: records and fields have full CRUD plus restore paths, views/dashboards/automatons have complete create-read-update-delete, and the migration flow has a coherent 4-step arc. Minor gaps exist: no way to delete a form, no way to overwrite/replace SmartDoc content (only append), and no solution deletion or application deletion tool (only list_deleted).

Maintenance

ActivityActive
ResponsivenessUnresponsive

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    A governed MCP server for integrating AI agents with customer data, featuring role-based access control, field redaction, and human-in-the-loop approval for secure support operations.
    1
    -
  • F
    license
    Not graded
    quality
    C
    maintenance
    A local MCP server that provides controlled repository access with policy-based file filtering, secret redaction, and audit logging for AI coding agents.
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Config-driven MCP server that gives AI scoped, auditable database access without exposing the entire database.
    12
    6
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/SmartSuiteFoundry/smartsuite-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server