Skip to main content
Glama
christianclaudio

mcp-server-sigma

📊 mcp-server-sigma

CI PyPI Python License: Apache-2.0 Coverage CodeRabbit Reviews

Supercharge your AI Agents with native Sigma Computing superpowers! ⚡
An enterprise-grade Model Context Protocol (MCP) server with 257 tools covering connections, workbooks, data models, members, teams, deployments, webhooks, multi-tenant operations, and composite workflow recipes straight to your favorite AI assistant.


⚠️ Disclaimers & Safety Warnings

IMPORTANT

Community Project Disclaimer
mcp-server-sigma is an independent open-source community project. It is not affiliated with, sponsored by, endorsed by, or supported by Sigma Computing, Inc. "Sigma Computing" is a trademark of Sigma Computing, Inc.

WARNING

Credentials & Safety Notice
This server uses API credentials scoped to your Sigma organization. Tools can mutate workbooks, users, teams, and data models.

  • Read-Only Mode: To run safely without mutation risk, set SIGMA_MCP_READONLY=1 or --profile readonly (lists the 120 tools annotated readOnlyHint=true and refuses every other call).

  • Destructive Safety Gates: All single-delete tools require explicit confirm=True; without it they change nothing and return a normal result (isError: false) asking the caller to re-call with confirm=true. Missing or invalid arguments return a tool error (isError: true) the model can correct, and so do other failed calls such as a member not found, an export that times out, or a rejected bulk-deactivate pattern (see docs/errors.md). A batch tool whose every item failed returns isError: true with "type": "batch_failed"; a partial success stays a normal result with "status": "partial_success", a <verb>_count, failed_count, results and errors, where each entry has id, status and result or error, alongside the field names each tool returned before; failed items that earlier releases listed in results are still there too (see docs/errors.md). Bulk destructive operations (admin_bulk_deactivate_members, admin_bulk_remove_team_members) are listed in full but refused at call time unless SIGMA_MCP_ALLOW_BULK_DESTRUCTIVE=1.

  • Read SECURITY.md before deploying to production.


Related MCP server: Atlassian MCP Server

💡 Why This Exists

Sigma Computing has a unique architectural asymmetry that shapes how you automate it:

  1. Data Models are 100% Code-Representable: You can programmatically construct data models, define columns, joins, and SQL logic, update JSON specs, and swap warehouse sources via API.

  2. Workbook Layouts are primarily UI-driven: While Sigma has introduced Beta endpoints for workbook specifications (/v2/workbooks/spec), programmatically constructing layout elements from scratch remains highly complex.

The canonical path to automated BI dashboards is:
Build the layout once in the Sigma UI, save it as a template, then instantiate and source-swap it programmatically forever after! 🎨 ➡️ 🤖

Our composite recipe tools (like workbooks_deploy_template_to_folder and elements_swap_workbook_sources) automate this exact pattern in a single MCP tool call (returning structured step progress or partial failure details if an intermediate step fails):

graph TD
    UI["Sigma UI"] -->|"1. Build Layout Once & Save"| TPL["Sigma Template"]
    Agent["AI Agent / LLM"] -->|"2. Call workbooks_deploy_template_to_folder"| MCP["mcp-server-sigma"]
    MCP -->|"POST /v2/templates/{id}/instantiate"| API1["Instantiate Workbook"]
    MCP -->|"POST /v2/workbooks/{id}/swap_sources"| API2["Swap Warehouse Sources"]
    API2 -->|"Delivered"| Dest["Target Customer Folder"]

📦 Quickstart & Installation

1. Install via pip or uv

pip install mcp-server-sigma
# or with uv
uv pip install mcp-server-sigma

Or run via Docker

docker run --rm -i --env-file .env \
  ghcr.io/christianclaudio/mcp-server-sigma:latest

The image's default command is stdio. To serve Streamable HTTP from the container, bind 0.0.0.0 inside it and pass a token. Keep the token off the command line (it shows up in shell history and ps): put SIGMA_MCP_AUTH_TOKEN in .env, or export it and pass the name alone with -e:

export SIGMA_MCP_AUTH_TOKEN="$(openssl rand -hex 32)"  # or read it from your secret store
docker run --rm -p 8000:8000 --env-file .env \
  -e SIGMA_MCP_AUTH_TOKEN \
  ghcr.io/christianclaudio/mcp-server-sigma:latest \
  --transport streamable-http --host 0.0.0.0 --port 8000 --allowed-host mcp.example.com

2. Set Environment Variables

export SIGMA_CLIENT_ID="your-client-id"
export SIGMA_CLIENT_SECRET="your-client-secret"
export SIGMA_API_BASE_URL="https://api.us-a.aws.sigmacomputing.com"
TIP

Use the API base URL assigned to your organization's region.

Region

Base URL

AWS US East

https://api.us-a.aws.sigmacomputing.com

AWS US West

https://aws-api.sigmacomputing.com

AWS Canada

https://api.ca.aws.sigmacomputing.com

AWS EU

https://api.eu.aws.sigmacomputing.com

AWS UK

https://api.uk.aws.sigmacomputing.com

AWS Australia

https://api.au.aws.sigmacomputing.com

Azure US

https://api.us.azure.sigmacomputing.com

Azure EU

https://api.eu.azure.sigmacomputing.com

Azure Canada

https://api.ca.azure.sigmacomputing.com

Azure UK

https://api.uk.azure.sigmacomputing.com

Azure Australia

https://api.au.azure.sigmacomputing.com

GCP US

https://api.sigmacomputing.com

GCP Saudi Arabia

https://api.sa.gcp.sigmacomputing.com


🔌 Integration Guides for AI Assistants & IDEs

mcp-server-sigma works seamlessly with all major AI assistants, IDEs, and CLI tools via standard stdio or streamable-http.

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "sigma": {
      "command": "sigma-mcp",
      "env": {
        "SIGMA_CLIENT_ID": "your-client-id",
        "SIGMA_CLIENT_SECRET": "your-client-secret",
        "SIGMA_API_BASE_URL": "https://api.us-a.aws.sigmacomputing.com"
      }
    }
  }
}

For Claude Code CLI:

claude mcp add sigma -- sigma-mcp

Add to your project's .agents/mcp_config.json (or global ~/.gemini/config/mcp_config.json):

{
  "mcpServers": {
    "sigma": {
      "command": "sigma-mcp",
      "args": [],
      "env": {
        "SIGMA_CLIENT_ID": "your-client-id",
        "SIGMA_CLIENT_SECRET": "your-client-secret",
        "SIGMA_API_BASE_URL": "https://api.us-a.aws.sigmacomputing.com"
      }
    }
  }
}

Run in network transport mode (Streamable HTTP) for local CLI & agent extensions:

# Source environment variables from a protected file or secret manager
source .env

# Launch server on HTTP localhost port 8000 for local clients
sigma-mcp --transport streamable-http --host 127.0.0.1 --port 8000

Point your local Codex / Streamable HTTP client to http://127.0.0.1:8000/mcp. When SIGMA_MCP_AUTH_TOKEN is set, the client must send Authorization: Bearer <token>; requests without it, or with a different token, get HTTP 401.

HTTP transports follow the MCP guidance that a local server binds to localhost, and require a bearer token whenever the server is reachable beyond it:

  • On 127.0.0.1, ::1 or localhost (the --host default is 127.0.0.1), HTTP runs with or without SIGMA_MCP_AUTH_TOKEN; without it, a warning says requests are not authenticated.

  • On any other host (0.0.0.0, ::, a LAN address), the server refuses to start (exit code 2) unless SIGMA_MCP_AUTH_TOKEN is set, or SIGMA_MCP_ALLOW_UNAUTHENTICATED_BIND=1 accepts an unauthenticated bind (logged as a warning), for example behind a gateway that authenticates for you.

  • The token is attached when the server is built, so fastmcp run src/sigma_mcp/server.py:mcp --transport http and an ASGI host mounting mcp.http_app() enforce it too. Those entry points do not know the bind host, so they cannot refuse a public bind; use sigma-mcp for that policy.

  • In the default (stateful) HTTP mode, a session idle for 30 minutes expires: its next request gets HTTP 404 and the client must start a new session. Change this with FastMCP's session_idle_timeout (on http_app()) or FASTMCP_HTTP_SESSION_IDLE_TIMEOUT (seconds, or none to never expire); see the FastMCP 4.1.0 release and #5229.

Note for hosted ChatGPT Actions or Custom GPTs: Hosted cloud services cannot reach localhost. Place an authenticating HTTPS proxy (e.g., ngrok, Cloudflare Tunnel, or Caddy with TLS and Auth) in front of the server before connecting cloud services.

Cline / Roo Code Settings (cline_mcp_settings.json):

{
  "mcpServers": {
    "sigma": {
      "command": "sigma-mcp",
      "env": {
        "SIGMA_CLIENT_ID": "your-client-id",
        "SIGMA_CLIENT_SECRET": "your-client-secret",
        "SIGMA_API_BASE_URL": "https://api.us-a.aws.sigmacomputing.com"
      }
    }
  }
}

Continue.dev Config (~/.continue/config.yaml):

mcpServers:
  - name: sigma
    command: sigma-mcp
    env:
      SIGMA_CLIENT_ID: "your-client-id"
      SIGMA_CLIENT_SECRET: "your-client-secret"
      SIGMA_API_BASE_URL: "https://api.us-a.aws.sigmacomputing.com"

Add to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "sigma": {
      "command": "sigma-mcp",
      "env": {
        "SIGMA_CLIENT_ID": "your-client-id",
        "SIGMA_CLIENT_SECRET": "your-client-secret",
        "SIGMA_API_BASE_URL": "https://api.us-a.aws.sigmacomputing.com"
      }
    }
  }
}

Add .github/mcp.json to your repository:

{
  "mcpServers": {
    "sigma": {
      "type": "local",
      "command": "sigma-mcp",
      "env": {
        "SIGMA_CLIENT_ID": "${COPILOT_MCP_SIGMA_CLIENT_ID}",
        "SIGMA_CLIENT_SECRET": "${COPILOT_MCP_SIGMA_CLIENT_SECRET}",
        "SIGMA_API_BASE_URL": "https://api.us-a.aws.sigmacomputing.com",
        "SIGMA_MCP_READONLY": "1"
      },
      "tools": ["workbooks_get_workbook", "workbooks_list_workbooks", "datasets_get_data_model"]
    }
  }
}

Note for Copilot Cloud Agents: Cloud code-review integrations must be configured through Repository Settings > Copilot > MCP servers instead.

Add directly via the Cortex CLI:

cortex mcp add sigma-tools -- sigma-mcp

🛡️ Safety & Security Controls

Configure behavior using environment variables:

Variable

Default

Description

SIGMA_CLIENT_ID

Required

Your Sigma API client ID.

SIGMA_CLIENT_SECRET

Required

Your Sigma API client secret.

SIGMA_API_BASE_URL

Required

Region-specific Sigma API host URL. Must be HTTPS and a host in SIGMA_ALLOWED_HOSTS.

SIGMA_ALLOWED_HOSTS

official regional API hosts

Comma-separated hostname allowlist for SIGMA_API_BASE_URL and X-Sigma-Base-Url. Unset or empty uses the official Sigma regional API hosts. Loopback, private, link-local, and cloud-metadata targets are always rejected.

SIGMA_MCP_PROFILE

full

Profile: full, readonly, analyst, author, modeler, embed, access_admin (see Profiles). An unknown value fails at startup.

SIGMA_MCP_READONLY

0

Set 1 to list only tools annotated readOnlyHint=true and refuse every other call (120 tools on full). Composes with any profile.

SIGMA_MCP_ALLOW_BULK_DESTRUCTIVE

0

Set 1 to let the two listed bulk tools (admin_bulk_deactivate_members, admin_bulk_remove_team_members) execute. Without it they are refused at call time.

SIGMA_MCP_ENABLE_TOOL_SEARCH

0

Set 1 (or --enable-tool-search) for Tool Search on full only.

SIGMA_MCP_TOOL_SEARCH_BACKEND

regex

Tool Search backend: regex or bm25 (or --tool-search-backend).

SIGMA_MCP_ENABLE_CODE_MODE

0

Set 1 (or --enable-code-mode) for experimental Code Mode on full only; not with Tool Search.

SIGMA_MCP_AUTH_TOKEN

(unset)

On streamable-http and sse, requires Authorization: Bearer <token> on every MCP request (FastMCP server auth; a missing or wrong token gets HTTP 401). Leading and trailing whitespace is stripped; unset or blank: HTTP requests are not authenticated and the server logs a warning. Enforced on every HTTP entry point (sigma-mcp, fastmcp run, http_app()). Ignored on stdio.

SIGMA_MCP_ALLOW_UNAUTHENTICATED_BIND

0

Set to 1 (or true/yes/on) to let an HTTP transport bind a host other than 127.0.0.1, ::1 or localhost with no token. Without it, such a bind exits at startup with code 2.

SIGMA_ALLOWED_TENANTS

""

Comma-separated allowlist of tenant org IDs permitted for RFC 8693 token exchange.

SIGMA_STRICT_TENANT_ALLOWLIST

0

Set 1 to fail closed (HTTP 403) if a tenant request is made without an explicit allowlist entry.

SIGMA_MAX_RETRIES

3

Retries on HTTP 429 (0 to 10).

SIGMA_BASE_DELAY

1.0

Base delay in seconds for the exponential backoff used when a 429 has no Retry-After (base_delay * 2**attempt, with 0.5-1.5x jitter).

SIGMA_MAX_RETRY_DELAY

60.0

Cap in seconds on that backoff. It does not apply to a Retry-After wait.

SIGMA_MAX_RETRY_AFTER

300.0

Longest Retry-After wait in seconds that is honored, exactly and without jitter. A longer requested wait fails at once with a 429 error naming the wait, without retrying.

SIGMA_MCP_LOG_FORMAT

text

Set json for structured JSON logging with duration metrics (duration_ms).


🧭 Profiles

Pick a profile with --profile or SIGMA_MCP_PROFILE (default full). Every profile mounts all five domains (workbooks, datasets, elements, workspace, admin). Job profiles then expose only an explicit list of tool names for one job; prompts and resources stay available on every profile. Each listed name is checked against the full catalog when the server builds, so an unknown profile or a typo in a list fails at startup with ValueError.

Profile

Job it serves

Tools

With SIGMA_MCP_READONLY=1

full

Complete catalog, nothing omitted. Bulk tools are listed and refused at call time unless SIGMA_MCP_ALLOW_BULK_DESTRUCTIVE=1. Tool Search and Code Mode attach only here.

257

120

readonly

Auditor / safe exploration: every tool annotated readOnlyHint=true across all mounts.

120

120

analyst

Business user finds, reads, exports and schedules workbooks and reports, bookmarks views, and asks workbook agents.

50

33

author

Workbook author builds, versions and verifies workbooks, reports and templates, and inspects elements while editing.

53

37

modeler

Data modeler maintains connections and data models, swaps workbook/report/model sources and materializes elements.

42

30

embed

Embedded-analytics engineer provisions tenants and tenant dashboards: templates, deployments, source swaps, embeds, tenant user attributes and connection syncs.

72

31

access_admin

Org admin onboards and offboards members, manages teams, grants and user attributes, workspace/workbook/connection access, and org security settings.

70

26

Twenty-two tools are in no job profile and are reachable only in full: workspace_delete_file, workspace_update_file, workspace_create_tag, workspace_delete_tag, admin_list_translations, admin_bulk_deactivate_members, admin_bulk_remove_team_members, admin_api_capabilities, admin_list_recent_webhooks, workspace_update_tag, admin_list_api_credentials, admin_get_api_credential, admin_create_api_credential, admin_update_api_credential, admin_delete_api_credential, admin_get_translation, admin_get_translation_variant, admin_create_translation, admin_update_translation, admin_update_translation_variant, admin_delete_translation, and admin_delete_translation_variant.

Read-only behavior

  • The MCP readOnlyHint annotation is the only thing that decides whether a tool is read-only. Every tool declares it explicitly: true on the 120 reads and false on the 137 writes. A tool with no annotation or no readOnlyHint counts as a write.

  • --profile readonly or SIGMA_MCP_READONLY=1 (on any profile) lists only the read-only tools, and ReadOnlyGateMiddleware refuses any call to a real tool that is not read-only, including a write the filter hid. A refusal comes back as a tool result with isError: true.

  • A name that is not a tool on the server gets FastMCP's normal Unknown tool error, directly or through call_tool, so a typo is never reported as a blocked tool.

  • With Tool Search on, the gate checks the tool that call_tool wraps. Reads through call_tool work and writes are refused. Without Tool Search, call_tool is not a tool on the server, so a call to it gets Unknown tool: 'call_tool'.

  • If the gate cannot see the serving server, it refuses the call.

Bulk gate

admin_bulk_deactivate_members and admin_bulk_remove_team_members are listed in full. The admin domain guard refuses them at call time (isError: true) unless SIGMA_MCP_ALLOW_BULK_DESTRUCTIVE=1, and the handlers keep their own confirm / dry_run safeguards. Read-only mode hides and refuses them.

Tool Search and Code Mode

tools/list is flat by default. Discovery is opt-in and attaches only on full:

  • --enable-tool-search / SIGMA_MCP_ENABLE_TOOL_SEARCH=1 replaces tools/list with search_tools and call_tool. The backend is regex (default) or bm25 (--tool-search-backend / SIGMA_MCP_TOOL_SEARCH_BACKEND).

  • --enable-code-mode / SIGMA_MCP_ENABLE_CODE_MODE=1 attaches FastMCP's experimental Code Mode (search, get_schema, execute). Code Mode needs the sandbox from the package's code-mode extra (fastmcp[code-mode], which ships pydantic-monty): pip install "mcp-server-sigma[code-mode]" or uvx "mcp-server-sigma[code-mode]" --enable-code-mode. Without it, Code Mode is skipped with a warning and the flat catalog is served.

  • Turning on both raises ValueError. Asking for either on another profile logs a warning and keeps the flat list.

  • search_tools, search and get_schema only read the catalog and are annotated readOnlyHint=true. Under read-only, Code Mode execute is refused.


📊 Feature & Tool Summary

The full profile lists 257 tools. Every tool name starts with the domain it is mounted under:

Domain

Tools

Covers

workbooks

78

Workbooks, reports and templates: contents/spec, pages, versions, bookmarks, schedules, exports and one-off sends, tags, grants, embeds, cross-org sharing, report pages/elements/columns/controls, workbook agents, template deployment

datasets

34

Connections and data models: connection create/delete, connection paths and path grants, connection grants, tests and schema syncs, cross-tenant connection sync, data model specs, columns, lineage, sources, tags, materializations and source swaps

elements

24

Workbook elements, columns, controls, queries, sources and lineage; materializations; source-swap policies; Sigma docs search and formula reference

workspace

24

Workspaces and their grants, files and folders, member files, recents and favorites, tags

admin

97

Members, teams, user attributes, tenants, deployments, grants, org settings, AI config, IP allowlists, API connectors and credentials, translations, tenant deployment capabilities, member schedules and OAuth token revocation, recent webhook events

Total

257

scripts/check_tool_contract.py fails CI if these counts drift from the live registry. The 2 bulk-destructive tools (admin_bulk_deactivate_members, admin_bulk_remove_team_members) are in the admin count and are refused at call time unless SIGMA_MCP_ALLOW_BULK_DESTRUCTIVE=1.


🍳 Composite Workflow Recipes

These high-level tools bundle multi-step API sequences into a single atomic call:

Recipe Tool

What It Does

workbooks_deploy_template_to_folder

Instantiates a template & swaps warehouse sources in 1 call

elements_materialize_and_wait

Triggers a data materialization and polls until complete with timeout

admin_onboard_member

Atomically creates a member and assigns them to multiple teams

admin_bulk_assign_team_members

Batch-adds $N$ members to a team in a single request

admin_bulk_remove_team_members

Resolves member emails and batch-removes them from a team

admin_bulk_deactivate_members

Regex-matches members, generates dry-run report, and deactivates

datasets_bulk_sync_tenant_connections

Performs RFC 8693 token exchange per tenant to sync all connections

workbooks_copy_workbook_to_member

Duplicates a workbook directly into a user's home folder

workbooks_promote_workbook

Tags a workbook for version promotion (creates tag if missing)

workbooks_export_and_download

Exports workbook/element, handles 204 polling, returns final content

datasets_sync_all_tables_in_schema

Syncs an entire database.schema path across Sigma connections

workbooks_reassign_workbook_ownership

Bulk-transfers workbook ownership from one member email to another


📐 MCP 2.0 Hints & Safety Annotations

Every tool includes structured MCP hints to assist AI clients with user permission prompts:

Annotation

Count

Meaning

readOnlyHint=true

120

Indicates intended non-mutation; clients may still require explicit user approval

destructiveHint=true

43

Deletes, deactivates, or revokes; clients should prompt

idempotentHint=true

10

Safe to retry; same input = same outcome

openWorldHint=true

257

All tools hit an external API


🧮 Writing Sigma Formulas

AI models frequently hallucinate SQL or Excel functions when writing Sigma formulas (e.g. using ArrayAgg() instead of List()).
Before writing any Sigma formula, call the built-in reference tool:

# Model prompt helper
Use tool `elements_formula_pitfalls` to check formula syntax rules.

See docs/formulas.md for full syntax details.


👩‍💻 Local Development & Testing

# Install dev tools
pip install -e ".[dev]"

# Run full test suite with 100% statement line coverage enforcement
pytest --cov=src/sigma_mcp --cov-fail-under=100 --cov-report=term-missing

# Run OpenAPI drift check
python scripts/check_openapi_drift.py

# Run MCP tool contract validation
python scripts/check_tool_contract.py

# Code formatting & type checking
ruff check src/
ruff format --check .
mypy --strict src/
NOTE

Automated Drift Checks: This repository runs a weekly scheduled GitHub Action (sigma-drift-monitor.yml) that compares client methods against the live Sigma OpenAPI specification. If drift is detected, the workflow automatically opens an issue in the repository.


🤝 Contributing & Community

Contributions are welcome! Please read CONTRIBUTING.md for development rules, SECURITY.md for security reporting, and CODE_OF_CONDUCT.md for community standards.


📜 License

MIT License.
Copyright (c) 2026 Christian Claudio.

Disclaimer: Not affiliated with, sponsored by, or endorsed by Sigma Computing, Inc.

Available Tools

257 tools
admin_add_allowed_ipsAdmin Add Allowed IpsA

Create/add IP allowlist entries for the organization (v3alpha).

Mutating operation. Requires confirm=True. entries: List of dicts, each with 'ip' (IPv4/IPv6 or CIDR), 'scope' ('public-api', 'ui', or 'both'), and optional 'description'.

NameRequiredDescriptionDefault
confirmNo
entriesYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false; the description goes beyond them by flagging it as a mutating operation and requiring confirm=True, which is real behavioral guidance. It doesn't address idempotency, permission requirements, or what happens on duplicate entries, so it isn't exhaustive.

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 mutating/confirm warning is front-loaded and the entry format follows compactly; every sentence earns its place. Minor redundancy in 'Create/add' keeps it from a 5.

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?

An output schema exists so return values need no explanation, and the description covers the mutation semantics and nested entry fields well. It omits prerequisites like required permissions and entry-count limits, but is complete enough 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?

Schema description coverage is 0% and the schema itself only says entries is an array of open-ended objects, so the description carries the full burden. It fully documents the entry shape — 'ip' (IPv4/IPv6 or CIDR), 'scope' with the enumerated values ('public-api', 'ui', 'both'), and an optional 'description' — and explains 'confirm' via the confirm=True requirement.

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 and resource ('Create/add IP allowlist entries for the organization'), which is unambiguous and easily distinguished from sibling tools admin_list_allowed_ips and admin_remove_allowed_ips. The '(v3alpha)' tag also pins the API surface.

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?

Gives a concrete usage prerequisite ('Requires confirm=True') that tells an agent how to successfully invoke it. It does not explicitly name the list/remove siblings or state when-not to use this tool, so it stops short of a 5, but the operating context is clear.

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

admin_add_deployment_documentsAdmin Add Deployment DocumentsC

Add workbooks/reports to a deployment policy.

NameRequiredDescriptionDefault
inode_idsYes
policy_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

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

Annotations declare readOnlyHint=false, destructiveHint=false and openWorldHint=true, so the safety profile is partly covered. However, the description adds nothing about whether documents are appended or replaced, permission requirements, or side effects of a mutation on a live deployment policy.

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

Conciseness4/5

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

A single tight sentence with the action front-loaded and no wasted words. Its brevity is appropriate in form, though it comes at the cost of missing detail.

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

Completeness2/5

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

An output schema exists so return values needn't be described, but for a write operation with zero parameter documentation and no usage context, the definition is too thin to call confidently.

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

Parameters2/5

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

Schema coverage is 0% and the description does not explain either parameter. It implies inode_ids map to workbooks/reports, but the term 'inode' and the expected format of policy_id remain unexplained, so the description fails to compensate for the coverage gap.

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

Purpose4/5

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

States a specific verb ('Add') and resource ('workbooks/reports to a deployment policy'), making the action clear. It is distinguishable from the read-only sibling admin_list_deployment_documents, though it doesn't explicitly name alternatives.

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?

No when-to-use context, prerequisites, or alternatives are provided. The agent gets no guidance on when adding documents to a deployment is appropriate versus other deployment operations.

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

admin_add_deployment_tenantAdmin Add Deployment TenantC

Add a tenant to a deployment policy.

body requires tenantOrganizationId.

NameRequiredDescriptionDefault
bodyYes
policy_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already disclose readOnlyHint=false, openWorldHint=true, and destructiveHint=false. The description adds no behavioral context beyond those annotations: it does not say what happens on duplicate tenant associations, whether the policy must pre-exist, or what side effects the open-world call may have.

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?

Two short sentences, front-loaded with the operation and followed by the key input constraint. There is no wasted text, though the second sentence is slightly terse and could be merged more cleanly.

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 an output schema and annotations, so the description need not explain returns or safety. Still, for a two-parameter mutation with a nested body, the description leaves important gaps: the meaning and format of tenantOrganizationId and the role of policy_id are not fully specified.

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 0%, and the body is a generic object with additionalProperties=true, so the description's note that 'body requires tenantOrganizationId' is valuable. However, it documents only one nested field and says nothing about policy_id or the expected format/source of tenantOrganizationId.

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

Purpose4/5

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

The description states a specific verb and resource: 'Add a tenant to a deployment policy.' This is unambiguous and distinct from siblings like admin_remove_deployment_tenant and admin_list_deployment_tenants. It stops short of explicitly naming those alternatives, so no sibling differentiation is called out.

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?

There is no guidance on when to use this tool versus alternatives such as admin_list_deployable_tenants or admin_create_tenant. No prerequisites, ordering constraints, or exclusions are mentioned; the only usage-related detail is a required body field.

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

admin_api_capabilitiesAdmin Api CapabilitiesA
Read-only

Describe what the Sigma REST API can and cannot do programmatically.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety and scope profile is covered by structured data. The description adds that the scope is programmatic API capability rather than data retrieval, but discloses nothing extra about what the call returns or any limits. With the lower bar set by annotations, a 3 is appropriate.

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 front-loaded sentence with no filler, and the key distinction (can and cannot do) is stated up front. Nothing unnecessary is present.

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 zero-argument information tool with an output schema (so return values need no explanation in prose), the description is sufficient to call it correctly. It could be slightly more complete by noting when this orientation call is preferable to the sibling doc-search tools, but no critical gap exists.

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 tool takes zero parameters, and the schema coverage is 100%, so there is no parameter semantics to explain. Per the zero-parameter baseline, a 4 is correct.

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

Purpose4/5

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

The description gives a clear verb ('Describe') and resource ('what the Sigma REST API can and cannot do programmatically'), which cleanly distinguishes this meta/discovery tool from the dozens of resource-specific CRUD siblings. It stops short of naming itself as an orientation/capability-discovery tool relative to doc-search siblings like elements_search_docs, so it is clear but not fully differentiated.

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?

Usage is only implied: an agent can infer 'call this when you need to know what is possible via the API,' but the description states no explicit when-to-use condition and does not mention alternatives such as elements_search_docs or elements_get_doc_page. Adequate but leaves the selection decision to inference.

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

admin_archive_deploymentAdmin Archive DeploymentA
Destructive

Delete (archive) a deployment policy. Requires confirm=True.

NameRequiredDescriptionDefault
confirmNo
policy_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the safety profile is covered structurally. The description adds value beyond that by clarifying the operation is an *archive* rather than a hard delete and by disclosing the confirm=True gate, which is genuine behavioral context. It still omits reversibility and what happens to any documents attached to the policy.

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 short sentences with no filler, and the destructive action is front-loaded before the prerequisite. Every clause carries information an agent needs.

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?

An output schema exists, so return values need not be described, and annotations cover destructiveness. What remains is covered adequately by the confirm prerequisite and the archive framing, with only the meaning of policy_id and the reversibility of archival left implicit.

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 0% for both parameters, so the description carries the burden. It explains the confirm flag's required value, which the schema only reveals as a boolean defaulting to false, but policy_id is entirely uninterpreted — the description's phrase 'deployment policy' only indirectly hints at what the ID identifies.

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

Purpose4/5

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

States a specific verb plus resource — 'Delete (archive) a deployment policy' — so the agent knows exactly what object is affected and can distinguish it from sibling admin_deactivate_member or admin_create_deployment. It stops short of naming an alternative operation for the same resource, so it is clear but not sibling-routing.

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?

Gives one concrete precondition — 'Requires confirm=True' — which is real invocation guidance. It offers no when-to-use/when-not context, no statement of how this differs from other deployment operations, and no note on permanence or preconditions such as ownership.

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

admin_batch_add_tenant_capabilitiesAdmin Batch Add Tenant CapabilitiesC

Let a tenant deploy to more tenant organizations.

body requires deployToTenantOrganizationIds (list of tenant organization IDs).

NameRequiredDescriptionDefault
bodyYes
tenant_org_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

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

Annotations already establish that this is a non-read-only, non-destructive, open-world mutation. Beyond that, the description only hints that the effect is additive; it does not disclose permission requirements, idempotency, what happens if a capability already exists, or the batch semantics implied by the name.

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?

Two short sentences with the action front-loaded and no filler. The wording is fragmented, but there is no wasted text for such a small definition.

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

Completeness2/5

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

For a required-parameter mutation with a nested body and no schema descriptions, the definition is too thin. It omits the role of tenant_org_id, batch behavior, and the exact capability being granted, though the presence of an output schema reduces the need to explain return values.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate. It documents one nested body field (deployToTenantOrganizationIds as a list of tenant organization IDs) but leaves the required top-level tenant_org_id completely undocumented.

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

Purpose3/5

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

The description conveys an additive tenant capability action ('Let a tenant deploy to more tenant organizations') but never explicitly names the batch capability-granting operation or distinguishes it from siblings like admin_batch_remove_tenant_capabilities or admin_add_deployment_tenant.

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?

There is no when-to-use guidance, no prerequisites, and no mention of alternatives or when not to use this tool. The only routing signal is implied by the verb 'Let ... deploy'.

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

admin_batch_remove_tenant_capabilitiesAdmin Batch Remove Tenant CapabilitiesA
Destructive

Stop a tenant deploying to some tenant organizations. Requires confirm=True.

body requires deployToTenantOrganizationIds (list of tenant organization IDs).

NameRequiredDescriptionDefault
bodyYes
confirmNo
tenant_org_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the description needn't carry the safety profile; it does add the confirm gate, which is real behavioral context an agent must satisfy. It does not say what state is lost, whether the removal is reversible, or that the effect spans multiple tenant organizations at once.

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?

Two short sentences, front-loaded with the operation and then the prerequisite and body requirement. No filler, though the second sentence is a fragment and the overall text is arguably too terse for a destructive batch operation.

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?

Output schema exists, so return values needn't be explained. For a destructive three-parameter batch mutation with a nested body, the description gives the verb, the confirm requirement, and the one known body key — enough to attempt a correct call. It falls short on distinguishing tenant_org_id from the body ID list and on the consequences of the operation.

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 0%, so the description does meaningful work by naming the required body key deployToTenantOrganizationIds and the confirm flag. But the body is an untyped additionalProperties object, and the description does not explain the body's shape beyond one key, nor what tenant_org_id selects relative to the listed IDs — a notable gap given the nested object.

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

Purpose4/5

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

The description states a specific verb and resource: stop a tenant from deploying to certain tenant organizations. This is distinguishable from the sibling admin_batch_add_tenant_capabilities and from admin_remove_deployment_tenant, though neither alternative is named explicitly. The plural 'some tenant organizations' accurately captures the batch semantics.

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?

It names one hard prerequisite ('Requires confirm=True'), which is genuinely useful gating information. However, it says nothing about when to choose this over admin_batch_add_tenant_capabilities or admin_remove_deployment_tenant, and no conditions under which the caller should avoid it.

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

admin_bulk_assign_team_membersAdmin Bulk Assign Team MembersC

Add multiple members to a team in one call.

NameRequiredDescriptionDefault
team_idYes
member_idsYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false and openWorldHint=true, so the safety profile is covered structurally. The description adds only 'in one call', which restates the bulk name; it says nothing about idempotency, what happens to members already on the team, partial-failure behavior for invalid IDs, 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.

Conciseness4/5

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

A single short sentence, front-loaded with the action, with zero filler. It is efficient, though the brevity is closer to under-specification than hard-won conciseness.

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

Completeness2/5

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

This is a bulk mutation tool with two undocumented parameters and meaningful sibling overlap. Even though an output schema exists (so return values need not be explained), the definition omits permissions, validation limits, and duplicate handling that an agent needs before calling it.

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

Parameters2/5

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

Schema description coverage is 0%, so the description carries the full burden for both parameters and provides none of it. It does not explain the expected member ID format, any maximum on the member_ids array, or what happens if team_id is unknown.

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

Purpose4/5

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

The description states a specific verb and resource ('Add multiple members to a team') and the bulk nature is clear from 'multiple ... in one call'. It does not, however, distinguish itself from closely related siblings such as admin_bulk_remove_team_members or admin_update_team_members, which an agent could easily confuse for an add-members operation.

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?

There is no when-to-use guidance and no exclusions. The description never says how this differs from admin_update_team_members or admin_onboard_member, nor does it state prerequisites such as required admin permissions or whether the target team must already exist.

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

admin_bulk_deactivate_membersAdmin Bulk Deactivate MembersA
Destructive

Deactivate members matching a name pattern (regex on firstName+lastName).

DESTRUCTIVE: requires both dry_run=False AND confirm=True to execute. Default behavior (dry_run=True) reports matches without making changes. Uses ?includeInactive=true to avoid re-deactivating already-inactive members.

NameRequiredDescriptionDefault
confirmNo
dry_runNo
name_patternYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior4/5

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

The description strongly reinforces the destructive nature with the explicit 'DESTRUCTIVE' label and the two-flag safety gate, which is valuable beyond the destructiveHint=true annotation because it tells the agent exactly how to preview. It also explains the includeInactive behavior, which no annotation conveys. It stops short of 5 because it does not mention scope (tenant/org-wide), permissions required, or reversibility of deactivation.

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 tightly packed lines, each earning its place: what it does, the destructive gate, the default preview behavior, and the includeInactive hint. The danger warning is front-loaded, which is the right priority for a destructive tool.

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 a destructive mutation with a 3-param schema, an output schema present, and rich annotations, the description covers the execution gate and preview semantics that an agent needs to call it safely. Remaining gaps (scope of matching, permission requirements, what happens to inactive matches beyond the includeInactive hint) are minor but non-zero.

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 0% and the schema only gives parameter names, so the description must compensate and largely does: it explains dry_run's default-on preview behavior, confirm's gate role, and the regex semantics of name_pattern. It could be stronger by clarifying that name_pattern is required and how matching is anchored, but the meaning of all three parameters is conveyed.

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

Purpose4/5

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

The description states a specific verb+resource ('Deactivate members') plus the matching mechanism ('regex on firstName+lastName'). It is clear but the title already conveys 'Admin Bulk Deactivate Members', so the marginal gain is mostly the regex detail. A sibling admin_deactivate_member exists for single-member deactivation, and the description does not explicitly differentiate from it, keeping this at 4 rather than 5.

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 gives clear operational guidance: bulk by name pattern, requires dry_run=False and confirm=True to actually execute, and mentions using includeInactive=true to avoid redundant work. It does not, however, distinguish when to use this vs. admin_deactivate_member (single) or other bulk tools, so it stops short of full alternative routing.

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

admin_bulk_remove_team_membersAdmin Bulk Remove Team MembersA
Destructive

Remove multiple members from a team by their email addresses.

Resolves emails to member IDs, then sends a single PATCH to remove all. Requires confirm=True. An email is removed only when exactly one member's email equals it, ignoring case. An email that matches no member, or more than one, is listed in not_found and no one is removed for it; the other emails are still removed. If no email resolves, the call fails with not_found and nothing is sent.

NameRequiredDescriptionDefault
confirmNo
team_idYes
member_emailsYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already declare destructiveHint=true, but the description adds substantial behavioral detail: email resolution rules, case-insensitive exact matching, partial success behavior, not_found reporting, and the all-fail abort condition. This is valuable context 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 front-loaded with purpose, then mechanism, confirmation, matching rules, and failure behavior. Each sentence adds useful operational detail without unnecessary 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?

For a destructive bulk operation, the description covers confirmation, match resolution, partial failure, and abort behavior. It is complete enough alongside the existing annotations and 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?

With 0% schema description coverage, the description must carry parameter meaning. It clearly covers confirm=True and the email-based member selection semantics, and implies team_id through 'from a team', though it does not specify team_id format or array constraints.

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 and resource: remove multiple team members from a team by email address. It clearly distinguishes this bulk removal operation from sibling membership tools like update or assign team members.

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 gives clear usage context, including that it operates on multiple emails and requires confirm=True. It does not explicitly name alternatives such as admin_bulk_assign_team_members or admin_update_team_members, so it stops short of full when-to-use routing.

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

admin_change_member_emailAdmin Change Member EmailC

Change a member's email address via PATCH /v2/members/{id}.

NameRequiredDescriptionDefault
member_idYes
new_emailYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.6/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, and openWorldHint=true, so safety posture is covered by structured data. The description adds essentially nothing beyond them – no mention of required admin permissions, whether the change triggers a verification email, whether it's reversible, or any side effects, so it fails to extend the behavioral picture for a mutation tool.

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

Conciseness3/5

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

One terse sentence with no filler, and the verb+resource is front-loaded. But it is under-specified rather than genuinely concise; the brevity comes from omitting useful detail rather than from cutting waste.

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

Completeness2/5

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

An output schema exists, so return values needn't be explained. Still, for an admin mutation the description omits who may call it, what happens to the old address, and any verification or notification flow – too thin for a tool in a crowded admin surface.

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

Parameters2/5

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

Schema description coverage is 0% for two required parameters, so the description carries the full burden – yet it says nothing about member_id format or new_email constraints (uniqueness, domain restrictions, verification). Only the '{id}' path placeholder hints that member_id identifies the target.

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

Purpose4/5

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

States a specific verb and resource ('Change a member's email address') and even names the underlying endpoint, so the operation is unambiguous. It does not, however, distinguish itself from the sibling admin_update_member, which plausibly also modifies member email, leaving the agent to guess which to call.

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?

There is no when-to-use, when-not-to-use, or alternative routing guidance. With siblings like admin_update_member, admin_onboard_member, and admin_deactivate_member in the same namespace, the agent gets no help choosing between them.

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

admin_configure_org_aiAdmin Configure Org AiA

Configure the organization AI provider and models.

Mutating operation. Requires confirm=True. provider_config: Provider specification dict (e.g. provider='openAI'/'anthropic'/'gemini'/'snowflake'/'databricks'/'bedrock'/'azureOpenAI').

NameRequiredDescriptionDefault
confirmNo
provider_configYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior4/5

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

Annotations declare readOnlyHint=false, destructiveHint=false, openWorldHint=true, but they cannot express an interactive gate; the description's 'Mutating operation. Requires confirm=True.' adds real behavioral value that the structured fields do not. It still omits the blast radius (what happens to existing provider/model config) and any idempotency or auth details.

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?

Short and front-loaded: purpose first, then the mutation gate, then the parameter hint. The fragmented line-item formatting is slightly telegraphic but wastes no sentences.

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?

An output schema exists, so return values need no explanation, and the confirm gate plus provider examples cover the essentials. The remaining gap is that a free-form provider_config object with zero schema coverage is only illustrated, not specified, which leaves the agent guessing at the exact payload shape.

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 0% and provider_config is a free-form object with additionalProperties=true, so the description must carry the load. It partially does by naming accepted providers (openAI/anthropic/gemini/snowflake/databricks/bedrock/azureOpenAI), but the model specification keys and the confirm parameter's default/effect are left to inference.

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

Purpose4/5

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

States a specific verb and resource: configure the organization AI provider and models. That is clearly distinct from most siblings, but it does not explicitly differentiate itself from the adjacent admin_update_org_setting / admin_get_org_setting family, so an agent could hesitate between them.

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?

It gives one strong precondition ('Requires confirm=True') and labels itself a mutating operation, which is implied usage guidance. It never states when to choose this over admin_update_org_setting or what scope of change is appropriate, so no exclusion or alternative routing is provided.

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

admin_create_account_typeAdmin Create Account TypeC

Create an account type.

body requires name, description and permissions.

NameRequiredDescriptionDefault
bodyYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that: no mention of required admin permissions, validation failure behavior, or what creating an account type affects.

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?

Two short sentences with the action stated first and the body contract second; nothing is wasted. It is terse but not padded, and the required field list is front-loaded where an agent will read it.

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

Completeness2/5

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

For a mutation tool with a deeply opaque nested body and 0% schema coverage, the description is thin. It names the required fields but says nothing about permissions semantics, validation constraints, or permission requirements for the caller; the output schema being present excuses it from explaining return values, but the input side remains under-described.

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 0% and the single 'body' parameter is an opaque nested object with additionalProperties=true, so the schema provides essentially no guidance. The description partially compensates by naming the required body fields (name, description, permissions), but it doesn't describe their types or the structure of 'permissions', leaving the most complex part undocumented.

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

Purpose4/5

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

States a specific verb and resource ('Create an account type'), which cleanly separates it from the sibling admin_list_account_types and admin_delete_account_type. It doesn't explicitly name those siblings, but the create/list/delete naming pattern makes the distinction obvious, so a 4 rather than a 5.

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

Usage Guidelines2/5

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

The description gives no when-to-use guidance, no prerequisites, and no alternatives. The agent must infer that this is the creation counterpart to admin_list_account_types and admin_delete_account_type purely from the names.

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

admin_create_api_connectorAdmin Create Api ConnectorB

Create an API connector.

body requires name and params and may set description, config and authId.

NameRequiredDescriptionDefault
bodyYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

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

Annotations already cover the safety profile (readOnlyHint=false, destructiveHint=false, openWorldHint=true). The description adds nothing behavioral: it doesn't say whether the connector is validated on creation, whether it makes outbound calls, what permissions are needed, or what happens if authId is invalid. For an open-world mutation with a free-form body, that is a significant gap.

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?

Two tight sentences; the action is front-loaded and the field breakdown follows without filler. Nothing is wasted, though the second sentence reads like schema documentation compressed into prose.

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?

An output schema exists, so return values need not be explained. But for a free-form nested body with zero schema descriptions, the definition leaves too much implicit about what a connector is and what valid params/config look like.

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 0% and body is an untyped free-form object, so the description carries the full burden. It usefully enumerates required fields (name, params) and optional ones (description, config, authId), which the schema does not. It stops short of describing types or the shape of params/config.

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

Purpose4/5

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

States a specific verb and resource: 'Create an API connector.' An agent can distinguish it from admin_update_api_connector / admin_get_api_connector / admin_list_api_connectors by the verb, though the description never names those siblings explicitly.

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?

No guidance on when to create a connector versus updating or listing one, no prerequisites (e.g., an existing authId/credential), and no mention of what happens on duplicate names. The agent must infer usage from the name alone.

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

admin_create_api_credentialAdmin Create Api CredentialA

Create an API credential for API connectors.

body requires name, allowlist and credential, and may set description. The credential holds a secret: pass it only from the user's own input.

NameRequiredDescriptionDefault
bodyYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false and openWorldHint=true, so the mutation and open-world nature are covered structurally. The description adds genuinely useful context: the created object holds a secret and must be sourced from user input. It does not say whether the secret is echoed back in the response, whether creation is idempotent, or what permissions the caller needs.

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?

Two short sentences, purpose first and the required-field contract second, with no filler. Slightly compressed formatting (mid-sentence line break) but nothing wasted.

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?

An output schema exists, so return values need no explanation, and the description covers the otherwise undocumented request body. The remaining gap is scope-level: what allowlist means and what the caller needs in place before creating a credential for a connector.

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 0% and the single "body" parameter is an untyped object with additionalProperties=true, so the description carries the full burden. It names the three required fields (name, allowlist, credential) and the optional one (description), which is meaningful compensation. It does not describe the shape of allowlist or credential, so it does not fully close the gap.

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

Purpose4/5

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

States a specific verb and resource ("Create an API credential") and scopes it to API connectors, which separates it from admin_create_api_connector and the list/get/update/delete credential siblings. It stops just short of explicitly naming the sibling it is not, so a 4 rather than a 5.

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

Usage Guidelines3/5

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

The only usage instruction is a security caution: pass the secret only from the user's own input. There is no statement of when to use create versus admin_update_api_credential, nor any prerequisite (e.g. an existing connector to bind the credential to). Context is implied by the name but never spelled out.

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

admin_create_deploymentAdmin Create DeploymentC

Create a deployment policy.

NameRequiredDescriptionDefault
bodyYes
nameYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.2/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, and openWorldHint=true, so the safety profile is partially covered. The description adds nothing beyond that: it does not say what the opaque 'body' must contain, whether creation requires existing documents or tenants, or whether it is idempotent — real gaps for a mutation tool.

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

Conciseness3/5

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

It is a single front-loaded sentence with no filler, which is structurally clean. But the brevity here reflects under-specification rather than genuine conciseness, so it earns only a minimal score.

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

Completeness2/5

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

An output schema exists, so return values need not be described. Everything else is missing: the shape of the required 'body' object, any prerequisites, and the effect of the created policy, all of which are essential for a tool with a nested opaque payload.

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

Parameters1/5

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

Schema description coverage is 0% and neither parameter is documented in the schema; 'body' is an untyped object with additionalProperties:true. The description says nothing about what 'name' or 'body' should hold, so it fails to compensate for the complete lack of parameter documentation.

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

Purpose3/5

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

The description gives a clear verb+resource ('Create a deployment policy'), so the agent knows the general action. However, it does not distinguish this from sibling deployment tools (admin_archive_deployment, admin_add_deployment_documents) or clarify what a 'deployment policy' contains, leaving the object of the operation opaque.

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?

There is no guidance on when to use this tool versus alternatives, no prerequisites, and no mention of the supporting siblings (admin_list_deployments, admin_get_deployment) that would naturally precede creation. The agent must infer everything from the name.

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

admin_create_grantAdmin Create GrantB
Idempotent

Create or update a grant. Body must include inodeId, granteeId, permission, type.

NameRequiredDescriptionDefault
bodyYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, idempotentHint=true, destructiveHint=false and openWorldHint=true, so the safety and repeat-call profile is covered. 'Create or update' is consistent with idempotentHint and clarifies the upsert semantics, but the description adds nothing about required admin privileges, the effect of updating an existing grant, or what happens with missing/invalid fields.

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?

Two short sentences with no filler, and the verb/resource statement is front-loaded ahead of the body-field list. Nothing is padded, though the extreme terseness is part of why other dimensions are thin.

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?

An output schema exists, so return values need not be described, and annotations cover the safety profile. The main remaining gap is the fully opaque 'body' schema: the description names four fields but leaves field formats, allowed permission/type values, and error behavior unspecified for an admin-level mutation.

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 effectively 0% — 'body' is an opaque free-form object with no declared properties, so the schema contributes nothing. The description partially compensates by naming the four required body fields (inodeId, granteeId, permission, type), which is genuinely useful, but it gives no value formats, allowed values for permission/type, or meanings for inodeId/granteeId.

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

Purpose4/5

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

States a specific verb and resource ('Create or update a grant'), so the agent knows this is an upsert on a grant entity. It does not, however, distinguish this generic admin grant from siblings like workbooks_grant_workbook_access, workspace_grant_workspace_access, or datasets_add_connection_grant, which is what a 5 would require.

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?

No guidance on when to use this versus the many other grant tools, nor any prerequisites (e.g. admin scope, which inode namespaces are valid). The only implicit hint is that 'create or update' means it is an upsert, but that is inferred rather than stated as usage guidance.

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

admin_create_memberAdmin Create MemberC

Create a new member. member_type: 'admin', 'creator', 'viewer'.

NameRequiredDescriptionDefault
emailYes
last_nameYes
first_nameYes
member_typeNoviewer

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false, openWorldHint=true, destructiveHint=false, covering the safety profile. The description adds no behavioral context beyond that – nothing about required admin privileges, whether an invitation/email is triggered, or side effects of the mutation.

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?

Two short, front-loaded sentences with no filler; the core action comes first and the enum hint second. Efficient, though the second sentence reads as a fragment rather than polished guidance.

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?

An output schema exists, so return values need no explanation, and annotations cover the safety profile. Still missing for a mutation tool: prerequisites/permissions, the distinction from admin_onboard_member, and any post-creation side effects.

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 0%, so the description carries the burden. It usefully supplies the member_type enum values ('admin', 'creator', 'viewer') and implies the 'viewer' default, which the bare schema lacks. It says nothing about email/first_name/last_name, though those are largely self-evident from their names, keeping this at a middling score.

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

Purpose4/5

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

States a clear verb+resource ("Create a new member"), so the agent knows precisely what it does. However, it draws no boundary against closely related siblings such as admin_onboard_member or admin_update_member, so sibling differentiation is left to inference.

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?

No when-to-use, when-not-to-use, or alternative guidance is offered. With admin_onboard_member present among the siblings, an agent gets no help deciding which creation path to pick.

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

admin_create_teamAdmin Create TeamC

Create a new team.

NameRequiredDescriptionDefault
nameYes
descriptionNo

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.6/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, and openWorldHint=true, so the mutating, non-destructive profile is covered. The description adds nothing beyond them: no auth/permission requirements, no side effects (does it auto-add the creator?), and no note on what a new team starts with. With annotations carrying safety, a description that adds zero behavioral context earns only a 2.

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

Conciseness3/5

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

The single sentence is front-loaded and waste-free, which is good, but it is terse to the point of under-specification rather than genuinely concise. Nothing is padded, yet little is conveyed.

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

Completeness2/5

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

An output schema exists so return values need not be explained, but for a mutating admin tool with a 0%-documented schema, the description leaves the agent without prerequisites, parameter meaning, or post-conditions. It is inadequate for the tool's complexity.

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

Parameters2/5

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

Schema description coverage is 0% and the description mentions no parameters at all. The 'description' parameter (defaulting to empty) is especially undocumented, and there is no hint about naming constraints or uniqueness. Since the schema cannot compensate, the description should, and it does not.

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

Purpose4/5

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

States a specific verb and resource ('Create a new team'), so an agent knows exactly what operation is performed. It does not, however, distinguish this tool from siblings such as admin_list_teams, admin_get_team, or admin_delete_team, nor does it note the admin/tenant scope.

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?

There is no guidance on when to use this tool versus alternatives, no prerequisites (e.g. permission level, existing tenant), and no mention of the related admin_update_team_members or admin_list_teams tools. Usage must be inferred entirely from the name.

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

admin_create_tenantAdmin Create TenantC

Create a tenant organization.

NameRequiredDescriptionDefault
bodyNo
nameYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, openWorldHint=true, so the safety profile is covered structurally. The description adds nothing beyond that: no statement of side effects, permission requirements, whether creation is reversible, or what the open-world hint implies for this call.

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

Conciseness3/5

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

A single short, front-loaded sentence with no filler, but the brevity comes at the cost of under-specification rather than genuine efficiency. It is neither bloated nor sufficiently informative.

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

Completeness2/5

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

For a mutating admin tool with a 0%-documented schema, an opaque `body` parameter, and no output-schema need, the description is far too thin. It leaves the agent without enough to call the tool confidently despite an existing output schema covering return values.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must carry the burden and does not. It never mentions the required `name` or the free-form `body` object (anyOf object/null with additionalProperties: true), which is entirely mysterious from the schema alone.

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

Purpose3/5

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

The description states a verb and resource ("Create a tenant organization"), but it essentially restates the name admin_create_tenant and adds only the gloss "organization." It does not distinguish this tool from sibling tenant tools like admin_list_tenants, admin_get_tenant, or admin_list_tenants_paginated.

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?

There is no when-to-use guidance, no preconditions, and no mention of alternatives. An agent cannot tell from the description whether tenant creation requires prior org setup, is idempotent, or how it relates to workspace/deployment creation.

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

admin_create_translationAdmin Create TranslationB

Create the organization translation file for a language code.

body may set translations (key to translated string) and lng_variant.

NameRequiredDescriptionDefault
lngYes
bodyYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, and openWorldHint=true, so the write/safety profile is partly covered. The description adds useful semantics about what 'body' carries (a key-to-translated-string map plus lng_variant), but omits whether creation fails on an existing file, required permissions, and scope of 'organization'.

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?

Roughly two sentences with no filler; the core action is front-loaded. The second sentence is a bit terse and quoted, but it earns its place by explaining the body payload.

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 an output schema and annotations present, the description covers the action and the body's shape. However, for a create-with-nested-object mutation it omits duplicate-handling behavior and the lng format, leaving notable 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 0% for a 2-parameter tool with a nested object, so the description must compensate. It explains body's contents (translations map and lng_variant), which is meaningful, but the 'lng' parameter's expected format (language code syntax) is left unspecified.

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

Purpose4/5

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

States a specific verb and resource ('Create the organization translation file') scoped to a language code, which distinguishes it from admin_get_translation/list/update/delete by implication. It does not explicitly name a sibling, so it falls short of 5.

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 word 'Create' implies it is for a translation file that does not yet exist, and the surrounding sibling set (get/update/delete translation) hints at the alternative, but the description never states when to use this versus admin_update_translation or what happens if the file already exists. No prerequisites or exclusions are given.

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

admin_create_user_attributeAdmin Create User AttributeA

Create a user attribute for RLS or dynamic parameters.

name: Attribute name (e.g. 'Region', 'CustomerID'). default_value: Default string value assigned when no override exists. description: Optional description of the attribute.

NameRequiredDescriptionDefault
nameYes
descriptionNo
default_valueNo

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already establish the safety profile (readOnlyHint=false, destructiveHint=false, openWorldHint=true), so the bar is lower. The description adds domain context (RLS/dynamic parameters) but says nothing about admin permission requirements, duplicate-name behavior, or whether the attribute takes effect immediately.

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?

Front-loaded purpose sentence followed by a tight parameter glossary; every line earns its place. Slightly list-like, but no filler or redundancy.

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?

An output schema exists, so return values need no explanation, and all three params are documented. However, for an admin-scoped mutation the description omits prerequisites, idempotency/duplicate handling, and any note that creation is distinct from assignment — gaps that matter for correct 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 description coverage is 0%, so the description carries the full burden and does compensate: it explains name with concrete examples ('Region', 'CustomerID'), clarifies that default_value applies 'when no override exists', and marks description as optional. This meaningfully exceeds the bare schema types.

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

Purpose4/5

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

States a specific verb+resource ('Create a user attribute') and adds the domain purpose (RLS or dynamic parameters), which an agent can distinguish from the sibling list/set/update/delete user-attribute tools. It does not explicitly name the nearest siblings (admin_set_user_attribute_for_teams/tenants), so it stops short of a 5.

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

Usage Guidelines3/5

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

The phrase 'for RLS or dynamic parameters' gives implied usage context, but there is no explicit when-to-use, when-not-to-use, or pointer to the alternative tools for assigning values to users/teams/tenants. Usage is inferable rather than stated.

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

admin_deactivate_memberAdmin Deactivate MemberB
Destructive

Deactivate a member. Requires confirm=True.

NameRequiredDescriptionDefault
confirmNo
member_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the safety profile is known. The description adds the confirm=True gate, which is genuinely useful behavioral context beyond the schema default of false, but it omits whether deactivation is reversible, what happens to the member's grants/teams, and whether elevated permissions are required.

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?

Two short sentences, zero filler, with the action stated first and the prerequisite second. It is efficiently front-loaded, though the extreme terseness means it carries little beyond the bare minimum.

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?

An output schema exists so return values need not be described, and the confirm gate is stated. For a destructive admin operation, however, the description is missing the permission requirement, the effect on the member's existing access, and reversibility, leaving meaningful gaps for an irreversible-feeling action.

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 0%, so the description must compensate, and it partially does by clarifying that confirm must be set true rather than left at its default false. The member_id parameter gets no explanation, though its meaning is self-evident from the name.

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

Purpose4/5

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

"Deactivate a member" gives a specific verb plus resource, and the singular scope distinguishes it in practice from the sibling admin_bulk_deactivate_members. It stops short of explicitly naming that bulk alternative, so an agent must infer the distinction from the tool name rather than the description.

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 only usage-like information is the confirmation prerequisite ("Requires confirm=True"), which tells the agent how the call will succeed but not when to pick this tool over admin_bulk_deactivate_members, admin_update_member, or admin_onboard_member. No when/when-not guidance or alternatives are offered.

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

admin_delete_account_typeAdmin Delete Account TypeA
Destructive

Delete an account type. Requires confirm=True.

NameRequiredDescriptionDefault
confirmNo
account_type_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

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

The annotations already declare destructiveHint=true and readOnlyHint=false, so the destructive nature is covered structurally. The description adds the non-obvious confirmation requirement, which is useful behavioral context, but it does not explain side effects, permissions, or whether the deletion is reversible.

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 short sentences with no wasted text. The destructive action is front-loaded and the confirmation requirement follows immediately.

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?

An output schema exists and annotations already cover the destructive safety profile, so the description does not need to explain return values or basic safety. However, for an admin deletion tool it omits relevant context such as dependency checks, permission requirements, and the impact of deleting an account type.

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 0%, so the description carries more burden here. It usefully explains that confirm must be true despite defaulting to false, but it does not describe the required account_type_id parameter beyond its self-explanatory name.

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

Purpose4/5

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

The description states a specific verb and resource: 'Delete an account type.' This clearly separates it from sibling operations such as admin_list_account_types and admin_create_account_type. It does not add scope details, but the action itself is 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 gives one important usage prerequisite: 'Requires confirm=True.' It does not explain when this tool should be used instead of alternatives or what conditions must be met before deleting an account type, leaving usage context mostly implied by the tool name.

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

admin_delete_api_connectorAdmin Delete Api ConnectorA
Destructive

Delete an API connector. Requires confirm=True.

NameRequiredDescriptionDefault
confirmNo
connector_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true, readOnlyHint=false and openWorldHint=true, so the safety profile is known. The description adds the non-obvious confirmation gate, which the schema does not explain (confirm has no description, default false). It does not say whether deletion is permanent, what happens to associated credentials, or whether the confirm flag fails loudly or silently.

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, zero waste, with the action stated first and the gating requirement immediately after. Nothing to trim.

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?

An output schema exists, so return values need not be described. But for a destructive admin tool that is only minimally annotated, the description omits whether the action is irreversible, whether dependent credentials are removed, and what failure looks like when confirm is omitted.

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 0%, so the description must carry the load. It explains the semantics of confirm (must be True to proceed), which is the genuinely non-obvious parameter, but says nothing about connector_id's format or where to obtain it, leaving half the parameters undocumented.

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

Purpose4/5

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

The description opens with a specific verb and resource ("Delete an API connector"), which unambiguously separates it from the sibling admin_create_api_connector, admin_update_api_connector and admin_get_api_connector, and from datasets_delete_connection. It is clear but does not explicitly name an alternative or state the scope of deletion.

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?

"Requires confirm=True" gives a real precondition for invocation, which is more than most delete tools offer. However, there is no guidance on when to use this vs. updating/disabling a connector, no exclusions, and no warning about when deletion is inappropriate.

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

admin_delete_api_credentialAdmin Delete Api CredentialA
Destructive

Delete an API credential. Requires confirm=True. API connectors that use it stop authenticating.

NameRequiredDescriptionDefault
confirmNo
credential_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already flag destructiveHint=true, readOnlyHint=false, openWorldHint=true, and the description adds value beyond them by disclosing the confirm=True gate and the downstream effect that connectors using the credential stop authenticating. It stops short of stating irreversibility, cascade behavior, or what happens if connectors are actively using 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?

Three short sentences, action first, then the hard prerequisite, then the consequence. No filler and nothing buried.

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?

An output schema exists so return values need no explanation, and the mutation risk is covered jointly by annotations and the consequence sentence. A caveat about irreversibility or in-use credentials would make it complete for a destructive admin operation.

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 0%, so the description carries the burden; it partially discharges this by explaining that confirm must be True rather than the schema default of false. It says nothing about credential_id beyond the name, and does not note that confirm is technically optional-but-required-in-practice.

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

Purpose4/5

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

States a specific verb and resource ('Delete an API credential') that cleanly separates it from the sibling admin_get/update/list/create_api_credential tools. It does not explicitly name an alternative or scope limitation, so it is clear but not fully differentiated.

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?

Gives one real prerequisite, 'Requires confirm=True', which is genuine usage guidance. However, it never says when to prefer this over admin_update_api_credential (revoke/replace) or admin_delete_api_connector, so the agent must infer the choice from the name.

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

admin_delete_grantAdmin Delete GrantB
Destructive

Delete a grant by ID. Requires confirm=True.

NameRequiredDescriptionDefault
confirmNo
grant_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true, readOnlyHint=false, and openWorldHint=true, so the safety profile is carried by structured data. The description does add the non-obvious behavioral gate 'Requires confirm=True', which prevents a failed call. It does not say whether deletion is permanent, what permissions it requires, or what happens to dependent assignments.

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?

Two short sentences, both load-bearing, with the destructive action front-loaded. No filler, though it is arguably too terse for a destructive admin operation.

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?

An output schema exists so return values need not be explained, and the confirm prerequisite is covered. For a destructive admin mutation, though, the description omits irreversibility, required privilege level, and how to discover a valid grant_id, which an agent needs before committing.

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 0%, so the description must compensate; it explains that confirm must be True, which is genuinely useful since the schema only shows a boolean defaulting to false. However, grant_id is only described as 'by ID' with no format or source hint (e.g., obtainable from admin_list_grants), leaving the required parameter under-specified.

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

Purpose4/5

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

States a specific verb+resource (delete a grant) and the identifying key (by ID), which cleanly separates it from admin_get_grant, admin_create_grant, and admin_list_grants among the siblings. It doesn't state which grant namespace it applies to, but the name plus description is unambiguous.

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?

No when-to-use or when-not-to-use guidance, and no routing to any alternative (e.g., removing a team-level or workspace-level grant instead). The only usage instruction is the confirm flag, which is a precondition rather than a selection guideline.

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

admin_delete_teamAdmin Delete TeamA
Destructive

Delete a team. Requires confirm=True.

NameRequiredDescriptionDefault
confirmNo
team_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the destructive nature is covered. The description adds the non-obvious confirmation gate, which is real added value, but says nothing about cascade effects (team members, grants, user-attribute bindings) or irreversibility.

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 short sentences, zero filler, with the core action front-loaded and the prerequisite immediately after. Nothing could be removed without losing meaning.

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?

An output schema exists, so return values need not be explained, and annotations cover the destructive profile. However, for an irreversible admin deletion the description omits cascade scope and permission requirements, leaving the agent with a thin picture of the operation's blast radius.

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 0% for two parameters, so the description must compensate. It clarifies that confirm must be true (versus the schema's default of false), but team_id carries no added semantics beyond its name.

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

Purpose4/5

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

States a specific verb and resource ('Delete a team'), which clearly separates it from admin_create_team, admin_get_team, and admin_update_team_members. It does not explicitly name a sibling or scope the deletion, but the purpose is 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 supplies a hard prerequisite ('Requires confirm=True'), which is genuinely useful for correct invocation, but gives no when-to-use/when-not guidance and does not point to alternatives such as archiving or removing members instead.

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

admin_delete_tenantAdmin Delete TenantA
Destructive

Delete a tenant organization. Requires confirm=True.

NameRequiredDescriptionDefault
confirmNo
tenant_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true, readOnlyHint=false and openWorldHint=true, so the safety profile is covered structurally. The description usefully adds the confirm-gate behavior, but says nothing about irreversibility, what is cascaded (members, deployments, workbooks), or what permissions are needed for a tenant-level delete.

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 short sentences, zero waste, with the action front-loaded and the gating requirement immediately after. Nothing needs trimming and nothing is buried.

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?

Output schema exists, so return values need not be described. Annotations cover the safety profile. Description states action and gate. It's complete enough for an agent to call 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 0%, so the description must carry parameter meaning; it explains confirm's role as a safety gate but omits that it defaults to false, and never describes tenant_id (self-evident, but undocumented). Partial compensation for a two-parameter, zero-coverage schema.

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

Purpose4/5

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

The description states a specific verb and resource ('Delete a tenant organization'), which is unambiguous about what the tool does. It does not distinguish itself from nearby destructive admin siblings such as admin_delete_team or admin_delete_account_type, relying on the name for that differentiation.

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?

It gives one concrete prerequisite ('Requires confirm=True'), which is real usage guidance for invocation. It offers no guidance on when to choose this over alternatives (deactivation, archiving, removing a tenant from a deployment) or any warning about the conditions under which deletion is appropriate.

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

admin_delete_translationAdmin Delete TranslationA
Destructive

Delete the organization translation file for a language code. Requires confirm=True.

NameRequiredDescriptionDefault
lngYes
confirmNo

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the safety profile is known. The description adds real value beyond that by disclosing the confirm gate required to proceed and by narrowing the blast radius to the organization-level file for one language code. It does not say whether confirm=False errors out or merely no-ops, which keeps it short of a 5.

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

Conciseness5/5

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

Two sentences, zero padding. The action and scope come first and the prerequisite requirement follows, which is the correct front-loading for a destructive tool.

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 destructive 2-param tool with an output schema and annotations covering irreversibility, the description covers action, scope, and the confirm prerequisite. It stops short of stating whether deletion is reversible or how existing translation variants are affected.

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 0%, so the description must compensate, and it touches both parameters: 'language code' characterizes lng and 'Requires confirm=True' gives confirm its operational meaning. The expected lng format (e.g. 'en-US') and the exact consequence of confirm=false remain undocumented.

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

Purpose4/5

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

States a specific verb and resource ('Delete the organization translation file') plus the scoping unit ('for a language code'), which separates it from admin_delete_translation_variant. It doesn't explicitly name that sibling, but the resource wording is precise enough for selection.

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 supplies one hard prerequisite ('Requires confirm=True'), which is genuinely useful. It gives no when-to-use framing, no exclusions, and does not route the agent to admin_delete_translation_variant or admin_update_translation when a full deletion is not intended.

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

admin_delete_translation_variantAdmin Delete Translation VariantA
Destructive

Delete the organization translation file for a language code and variant. Requires confirm=True.

NameRequiredDescriptionDefault
lngYes
confirmNo
variantYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior3/5

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

The annotations already declare this operation as destructive, non-read-only, and open-world. The description adds the relevant safeguard that confirm=True is required, but it does not disclose irreversibility, permission requirements, or what exactly happens to the existing translation file.

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 short sentences, front-loaded with the action and resource, with no redundant explanation. The confirm requirement is placed immediately after the main action, which is appropriate.

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 tool has an output schema and destructive annotations, so the description does not need to explain return values or safety classification. It covers the core action and confirm prerequisite; the main remaining gap is guidance on choosing this tool over related translation tools.

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 0%, so the description has to compensate. It identifies lng as a language code, variant as a variant, and confirm as required, which is useful mapping, but it does not explain expected formats, what variant means precisely, or the consequence of the confirm boolean.

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

Purpose4/5

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

It states a specific verb and resource: deleting an organization translation file for a language code and variant. This distinguishes it implicitly from deleting a whole translation or updating a translation variant, though it does not explicitly name those 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 Guidelines3/5

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

The description gives a clear operational condition by saying confirm=True is required, which tells the agent this is a guarded deletion. However, it does not say when to use this tool instead of admin_delete_translation or admin_update_translation_variant, so routing guidance is only implied.

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

admin_delete_user_attributeAdmin Delete User AttributeA
Destructive

Delete a user attribute and every assignment of it. Requires confirm=True.

NameRequiredDescriptionDefault
confirmNo
attribute_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, so the safety profile is known; the description adds real value by disclosing the cascade ('every assignment of it') and the confirm gate. It stops short of saying whether the deletion is irreversible or what happens to users currently resolved against the attribute.

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, zero filler, with the destructive scope stated first and the confirm requirement second. Nothing to trim.

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?

An output schema exists and annotations cover destructiveness, so the description only needs the cascade and the confirm gate — both present. The remaining gap is how an agent finds a valid attribute_id, which matters for a one-required-param delete 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 0%, so the description must carry the load. It does explain that confirm must be true — a meaningful correction to the schema, which lists confirm as optional with a default of false — but attribute_id is left unexplained (format, where to obtain it). Partial compensation only.

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

Purpose4/5

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

States a specific verb (delete) and resource (user attribute) and adds the crucial scope detail that it also removes every assignment of it. That does implicitly separate it from the per-scope siblings (admin_delete_user_attribute_for_user/team/tenant), though it never names them explicitly.

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 stated prerequisite 'confirm=True' is a useful gate the agent must satisfy, but there is no guidance on when to choose this whole-attribute delete over the scoped variants (for_user, for_team, for_tenant) that sit right next to it in the tool list.

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

admin_delete_user_attribute_for_teamAdmin Delete User Attribute For TeamB
Destructive

Delete a user attribute assignment for a specific team. DESTRUCTIVE. Requires confirm=True.

NameRequiredDescriptionDefault
confirmNo
team_idYes
attribute_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, so 'DESTRUCTIVE' is partly redundant, but the description adds a genuinely valuable behavioral requirement: the agent must pass confirm=True to execute. That confirmation gate is not conveyed as mandatory by the schema (which merely shows default=false), so the disclosure meaningfully changes how the agent must invoke the tool.

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 short, front-loaded sentences with no filler; the destructive warning and confirm requirement are stated directly. Appropriate size for the operation, though terse enough that it omits useful clarification on the identifiers.

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?

An output schema exists so return values needn't be described, and annotations cover the safety profile. The confirm requirement is captured, but with a 0%-coverage schema the required parameters remain undefined, leaving a gap for a destructive mutation tool.

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

Parameters2/5

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

Schema description coverage is 0% for three parameters, and the description only explains the confirm flag while leaving attribute_id and team_id (the two required fields) entirely unqualified beyond their names. It does not compensate for the coverage gap on the required identifiers.

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

Purpose4/5

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

States a specific verb (Delete) and resource (user attribute assignment) with the scope qualifier 'for a specific team', which cleanly distinguishes it from the sibling delete_user_attribute_for_user and _for_tenant variants. It does not name those siblings, but the scope qualifier makes the tool selectable among them.

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?

Provides no when-to-use guidance and does not reference alternatives (the _for_user/_for_tenant deletes or the update variants). The only guidance is the confirm requirement, which is a prerequisite rather than usage context.

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

admin_delete_user_attribute_for_tenantAdmin Delete User Attribute For TenantA
Destructive

Delete a user attribute assignment for a specific tenant. DESTRUCTIVE. Requires confirm=True.

NameRequiredDescriptionDefault
confirmNo
attribute_idYes
tenant_org_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, but the description adds real value by flagging DESTRUCTIVE in the text and disclosing the confirm=True gate, which the schema shows only as a boolean defaulting to false with no description. It still does not say whether the deletion is reversible or cascades to related assignments.

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 short sentences that are front-loaded with the operation and scope, then the safety caveat. Nothing is wasted or redundant.

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 destructive admin tool with rich annotations and an output schema, the description covers scope, the destructive nature, and the confirmation requirement. Missing only post-condition details (reversibility, what state remains after deletion), which is a minor gap.

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 0%, so the description carries the load; it usefully explains the confirm parameter's requirement, while attribute_id and tenant_org_id are left to their self-explanatory names. It compensates for the one non-obvious parameter but not fully for the coverage gap.

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 (Delete), resource (user attribute assignment) and exact scope ('for a specific tenant'), which cleanly distinguishes it from the sibling admin_delete_user_attribute_for_user and admin_delete_user_attribute_for_team tools.

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 'for a specific tenant' scope implicitly signals when this tool applies rather than the user- or team-scoped variants, but the description never explicitly names those alternatives or states preconditions beyond the confirm requirement.

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

admin_delete_user_attribute_for_userAdmin Delete User Attribute For UserA
Destructive

Delete a user attribute assignment for a specific user. DESTRUCTIVE. Requires confirm=True.

NameRequiredDescriptionDefault
confirmNo
user_idYes
attribute_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so 'DESTRUCTIVE' is largely redundant. However, the description adds a genuinely non-obvious operational requirement, 'Requires confirm=True', which is not enforced by the schema (confirm defaults to false and is not in the required list). It stops short of saying what happens if confirm is omitted or whether the deletion is reversible.

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 short, front-loaded sentences with zero filler; the destructive warning and required-flag convention sit immediately after the action statement.

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 destructive mutation with an output schema (so return values need no explanation), the definition covers action, scope, destructiveness, and the confirm requirement. Remaining gaps are permission/authorization expectations and the failure mode when confirm is false.

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 0%, so the description carries the burden. It explains the semantics of confirm=True, but says nothing about user_id or attribute_id (formats, where to obtain them), leaving two of three parameters documented only by their names.

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 (Delete) and resource (user attribute assignment) with an explicit scope ('for a specific user'), which cleanly separates it from the sibling team and tenant variants. An agent can distinguish it 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 Guidelines3/5

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

The scope phrase 'for a specific user' implies when this variant applies versus the team/tenant siblings, but it never names those alternatives or states prerequisites. Usage is inferable rather than stated.

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

admin_get_api_connectorAdmin Get Api ConnectorA
Read-only

Get details for an API connector.

NameRequiredDescriptionDefault
connector_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is fully covered structurally. The description adds no behavioral context beyond that (no auth requirements, no pagination or scope notes), and the output schema covers the return shape.

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

Conciseness4/5

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

A single short, front-loaded sentence with no waste. It is appropriately sized, though it is arguably under-specified rather than richly concise.

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 single-id getter, the annotations cover safety and the output schema covers return values, so the description does not need to explain those. It is adequate, though it could name the sibling list tool for routing clarity.

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 0%, so the schema documents nothing about connector_id. The description only implies the id identifies a connector; the parameter name is self-explanatory, so minimal compensation is required and minimally delivered.

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

Purpose4/5

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

States a specific verb+resource ('Get details for an API connector'), which an agent can distinguish from the sibling admin_list_api_connectors. However, it does not explicitly differentiate itself from the list variant in text, leaving that inference to the name alone.

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 given. Usage is only implied by the verb 'Get' plus the required connector_id, which suggests fetching one connector versus listing many. No alternatives or prerequisites are named.

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

admin_get_api_credentialAdmin Get Api CredentialB
Read-only

Get an API credential's metadata.

NameRequiredDescriptionDefault
credential_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered. The description adds that this retrieves metadata, which usefully implies it does not return the credential secret, but it does not mention permissions or response format.

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 efficient sentence with no wasted text. It is appropriately front-loaded, though it is quite terse given the sparse parameter documentation.

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?

An output schema exists, so return values need not be detailed, and annotations cover the safety profile. However, with one undocumented parameter and no usage context, the description is only minimally complete for an admin-scoped retrieval tool.

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

Parameters2/5

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

Schema description coverage is 0%, and the description does not explain the single required parameter credential_id. It provides no format, source, or expected-value guidance beyond what the schema's property name already conveys.

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

Purpose4/5

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

The description states a specific verb and resource: 'Get an API credential's metadata.' This clearly distinguishes it from list/create/update/delete siblings, though it does not explicitly name the sibling alternatives.

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 versus admin_list_api_credentials or other credential-related siblings. There are no exclusions, prerequisites, or context clues beyond the tool name.

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

admin_get_current_userAdmin Get Current UserA
Read-only

Get the current authenticated user's details.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so safety is covered. The description adds only the word 'authenticated', hinting that a valid session/credential is required, but says nothing about what data is returned or any scoping behavior.

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, front-loaded sentence with zero filler. Nothing could be removed without losing meaning.

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?

An output schema exists so return values need not be described, and the zero-parameter signature leaves no ambiguity about invocation. For a simple read of the caller's own identity, the description is sufficient, though a one-clause contrast with admin_get_member would have made it fully 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?

The tool takes zero parameters, so there is nothing for the description to disambiguate beyond the fact that no input is needed. Baseline 4 applies for a no-parameter tool.

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

Purpose4/5

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

States a specific verb ('Get') and resource ('current authenticated user's details'), which is unambiguous about what is retrieved. It is implicitly distinct from the sibling admin_get_member because no identifier is required, but the description never explicitly contrasts the two.

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 phrase 'current authenticated user' implies the use case (identifying the caller/self), but there is no explicit when-to-use guidance, no mention of when to prefer admin_get_member with an ID, and no stated prerequisites.

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

admin_get_deploymentAdmin Get DeploymentC
Read-only

Get a deployment policy.

NameRequiredDescriptionDefault
policy_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that — no note on permissions, access scope, or error behavior for a missing/invalid deployment id.

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

Conciseness3/5

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

A single sentence with no padding, but it is under-specified rather than efficient — there is no content to front-load. Brevity here is a symptom of missing information, not discipline.

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

Completeness2/5

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

An output schema exists so return values needn't be explained, and the tool is low-complexity. However, the deployment-versus-policy naming ambiguity and the total absence of routing guidance to sibling tools leave the definition short of what an agent needs to call it correctly.

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

Parameters2/5

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

Schema description coverage is 0%, so the single parameter policy_id is documented nowhere except its name. The description does not explain what identifier is expected, where to obtain it (e.g., from admin_list_deployments), or its format.

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

Purpose3/5

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

The description gives a verb and a resource ('Get a deployment policy'), but the resource noun does not match the tool name ('deployment') or its siblings like admin_list_deployments and admin_archive_deployment, leaving ambiguity about whether this fetches a deployment or a separate policy object. It also offers no differentiation from those siblings.

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?

There is no when-to-use guidance and no mention of alternatives such as admin_list_deployments for discovery versus this for fetching a single item by id. The agent must infer the retrieval-vs-listing split entirely on its own.

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

admin_get_grantAdmin Get GrantC
Read-only

Get a grant by ID.

NameRequiredDescriptionDefault
grant_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so safe-read behavior is covered structurally. The description adds nothing beyond that: no note on what a 'grant' object represents, what happens if the ID is unknown, or any cross-org visibility consideration implied by openWorldHint.

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

Conciseness4/5

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

A single short sentence with the key qualifier ('by ID') front-loaded and zero waste. It is efficient, though the brevity borders on under-specification rather than disciplined conciseness.

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

Completeness2/5

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

An output schema exists, so return values needn't be described. But for a one-parameter lookup in a large admin surface with many grant-related siblings, the description leaves the agent without the concept of a grant, how to source the ID, or how this differs from listing grants.

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

Parameters2/5

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

With one parameter at 0% schema description coverage, the description carries the burden and offers only 'by ID', which merely restates the parameter name. It gives no indication of ID format, where to obtain a grant ID, or whether it is opaque or human-readable.

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

Purpose3/5

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

The verb 'Get' plus resource 'grant' with the qualifier 'by ID' tells the agent this retrieves a single grant record rather than a list. However, it does nothing to distinguish itself from nearby siblings such as admin_list_grants, admin_create_grant, and admin_delete_grant, so selection still relies on the name.

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?

There is no guidance on when to use this tool versus admin_list_grants (to enumerate) or other admin grant tools. No prerequisites, no mention of needing a grant ID obtained elsewhere, and no exclusions are given.

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

admin_get_memberAdmin Get MemberC
Read-only

Get member details including homeFolderId.

NameRequiredDescriptionDefault
member_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is fully covered elsewhere. The description adds no behavioral context beyond the read itself — no permission requirements, no error behavior, no note on what homeFolderId implies.

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

Conciseness4/5

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

A single short sentence with the resource and a key returned field front-loaded; nothing is padded. It is arguably too terse rather than wasteful, but on the conciseness dimension itself it performs well.

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

Completeness2/5

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

An output schema exists, so return values need not be explained, but the description leaves the required identifier format unspecified and offers no routing against the many sibling member tools. For a retrieval tool with zero schema coverage on its only parameter, that is a meaningful gap.

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

Parameters2/5

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

Schema description coverage is 0% for the single required member_id parameter, so the schema provides no format guidance. The description does not compensate — it never clarifies whether member_id is an internal ID, an email, or a username, which is exactly the ambiguity that causes failed calls.

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

Purpose4/5

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

States a specific verb (Get) and resource (member details), and even names one returned field (homeFolderId). It does not, however, distinguish itself from close siblings such as admin_list_members, admin_get_current_user, or admin_onboard_member, so an agent must still infer which member-fetch tool applies.

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?

There is no when-to-use guidance, no prerequisites, and no mention of alternatives. With several sibling tools that also return member data (admin_list_members, admin_get_current_user, admin_list_all_members), the description gives the agent nothing to route on.

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

admin_get_org_settingAdmin Get Org SettingC
Read-only

Get organization setting value.

NameRequiredDescriptionDefault
setting_nameYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.8/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true and destructiveHint=false, so the safety profile is covered. The description adds nothing beyond that: no note on required admin permissions, no behavior for unknown/invalid setting names, no indication of whether values are cached or resolved per-tenant.

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

Conciseness4/5

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

A single short sentence with no filler, and the key resource is front-loaded. It is efficient, though the terseness shades into under-specification rather than true conciseness.

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?

An output schema exists, so return values need not be described. For a simple one-param getter with read-only annotations, the minimal shape is nearly sufficient, but the absence of valid setting names or any usage context leaves a real gap for an agent trying to call it correctly.

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

Parameters2/5

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

The single parameter setting_name has 0% schema description coverage, and the description does not name it, describe its expected format, or list valid setting keys. With a required free-form string and no enum, the description should have compensated and does not.

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

Purpose4/5

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

States a specific verb (Get) and resource (organization setting value), which is more than a tautology of the name. However, it does not differentiate itself from the sibling admin_update_org_setting or admin_configure_org_ai, leaving the agent to infer the pairing from the name alone.

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?

No indication of when to use this versus the sibling admin_update_org_setting, nor any prerequisite or context (e.g., read-only inspection before updating, admin scope). Usage is only implied by the verb 'Get'.

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

admin_get_teamAdmin Get TeamC
Read-only

Get team details.

NameRequiredDescriptionDefault
team_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, destructiveHint=false, and openWorldHint, so safety is covered. The description adds nothing beyond that: no note on required permissions, scoping, or whether the team_id must come from admin_list_teams. For a terse read tool this is a minimal contribution.

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

Conciseness3/5

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

Extremely short and front-loaded, with no wasted words, but the brevity here reflects under-specification rather than efficient communication. Three words is not enough to carry the tool's semantics.

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?

An output schema exists, so return-value explanation is not required, and annotations cover the safety profile. Given the simple single-parameter shape, the definition is minimally viable, though it leaves the team_id's provenance and the tool's position relative to list-team siblings unaddressed.

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

Parameters2/5

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

Schema description coverage is 0%, so the description was expected to compensate for the undocumented team_id parameter, but it provides no format, source, or constraints. The parameter name is self-evident, which prevents a 1, but no added meaning is delivered.

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

Purpose3/5

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

States a specific verb (Get) and resource (team), so the basic operation is identifiable. However, 'details' is vague and the description does nothing to distinguish it from siblings like admin_get_tenant, admin_get_member, or admin_list_teams — the agent must infer scope from the name alone.

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?

No when-to-use guidance, no prerequisites, and no mention of alternatives such as admin_list_teams (for enumeration) or admin_list_team_members (for membership). The agent is left to infer the retrieval-vs-list distinction entirely from the tool name.

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

admin_get_tenantAdmin Get TenantC
Read-only

Get tenant organization details.

NameRequiredDescriptionDefault
tenant_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds only that the object is an "organization" tenant, with no note on permissions, tenant-id sourcing, or error behavior for invalid ids.

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

Conciseness4/5

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

A single front-loaded sentence with no filler or redundancy. It is efficient, though it errs toward being too terse for the information an agent actually needs.

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

Completeness2/5

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

An output schema exists, so return-value explanation is not required, but for a tool with a required, undocumented tenant_id and multiple similar siblings, the description leaves an agent without enough to invoke it confidently versus alternatives.

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

Parameters2/5

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

Schema description coverage is 0% and the single required parameter (tenant_id) is documented only as a bare string type. The description does not explain where tenant_id comes from or what identifiers are accepted, so it fails to compensate for the schema gap.

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

Purpose3/5

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

The description has a clear verb+resource ("Get tenant organization details"), but "organization details" is vague about what is actually returned. It also fails to distinguish this tool from close siblings such as admin_list_tenants, admin_list_tenants_paginated, and admin_get_tenant_scoped_info, which an agent must choose between.

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?

There is no when-to-use guidance, no prerequisites, and no mention of alternatives. Given the sibling set includes several tenant-related lookups (list, paginated list, scoped info), the absence of any selection criteria is a real gap.

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

admin_get_tenant_scoped_infoAdmin Get Tenant Scoped InfoB
Read-only

Demonstrate tenant token exchange by calling /whoami through a tenant-scoped client.

Uses RFC 8693 token exchange to obtain a tenant-scoped token, then calls the whoami endpoint to verify the scoped identity.

NameRequiredDescriptionDefault
tenant_org_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true. The description usefully explains why it is open-world: it performs an RFC 8693 token exchange and makes an outbound whoami call. That is real mechanism-level context, though it says nothing about permissions required or failure modes.

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?

Two short sentences with the mechanism front-loaded and no filler. Slightly loose wording ('Demonstrate') costs a point but the structure is tight.

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?

An output schema exists, so return values need no explanation. However, for a tool whose only input is undocumented and whose trigger condition is unstated, the description leaves real gaps an agent must close on its own.

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

Parameters2/5

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

Schema description coverage is 0% and the single parameter tenant_org_id is not mentioned in the description at all. With no enum, no format hint and no explanation of what a tenant org id is or where to obtain it, the agent gets no semantic help for the only input it must supply.

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

Purpose4/5

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

The description names a concrete mechanism and target: a tenant-scoped token is obtained via RFC 8693 exchange and then /whoami is called to verify the scoped identity. That is specific enough to distinguish it from admin_get_current_user and admin_get_tenant, though the opening verb 'Demonstrate' is loose and no sibling is named explicitly.

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?

There is no statement of when to call this versus alternatives such as admin_get_current_user or admin_get_tenant. The reader must infer that it is a verification/diagnostic tool from the flow description rather than from any explicit guidance.

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

admin_get_translationAdmin Get TranslationB
Read-only

Get the organization translation file for a language code (e.g. 'fr').

NameRequiredDescriptionDefault
lngYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered. The description adds that the result is organization-scoped and a 'file', but says nothing about fallback behavior or what happens for an unknown language code; with annotations handling the safety profile, a 3 is appropriate.

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

Conciseness4/5

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

A single, front-loaded sentence with the verb and resource first and no wasted words. Appropriately sized for a one-parameter read tool.

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?

An output schema exists, so return values need not be described, and annotations cover safety. The remaining gaps are sibling differentiation and language-code format, leaving the definition adequate but not fully 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 0% and the parameter name 'lng' is cryptic, but the description rescues it by clarifying it is a 'language code' and giving the example 'fr'. It still omits format constraints (e.g. ISO code length), so compensation is partial.

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

Purpose4/5

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

The description states a specific verb ('Get') and resource ('organization translation file') scoped by language code, so the operation is clear. It does not, however, differentiate itself from the sibling admin_get_translation_variant, leaving ambiguity about which retrieval tool to use.

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?

Usage is implied by 'for a language code', giving context for when this applies, but there is no explicit when-to-use/when-not guidance and no mention of the alternative admin_get_translation_variant or admin_list_translations.

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

admin_get_translation_variantAdmin Get Translation VariantC
Read-only

Get the organization translation file for a language code and variant.

NameRequiredDescriptionDefault
lngYes
variantYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

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

The annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds no behavioral context beyond the basic action, such as required permissions, organization scope details, or any side effects. It does not contradict 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 front-loaded sentence with no filler. It is appropriately sized for a simple getter and every word contributes to stating the action and inputs.

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 is simple, annotations cover safety, and an output schema exists, so return values need not be explained. However, the lack of parameter format details and the failure to differentiate this tool from closely named siblings leaves important gaps for correct invocation.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate for undocumented parameters. It maps 'lng' to 'language code' and 'variant' to 'variant', but gives no format details such as ISO language codes or valid variant values. This is only minimal semantic help for two required parameters.

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

Purpose4/5

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

The description uses a specific verb and resource: 'Get the organization translation file for a language code and variant.' This is clear enough to understand the operation. However, it does not explicitly distinguish this tool from close siblings such as admin_get_translation or admin_update_translation_variant, leaving the agent to infer the difference from the name.

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?

There is no guidance on when to use this tool versus admin_get_translation, admin_list_translations, or the update/delete variant tools. The description states what it does but does not state selection conditions, prerequisites, or exclusions.

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

admin_get_user_attributeAdmin Get User AttributeC
Read-only

Get a user attribute's definition.

NameRequiredDescriptionDefault
attribute_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that — no note on what a 'definition' contains, whether a missing attribute errors or returns empty, or any access requirements. A return schema exists, so return values needn't be explained, but no behavioral context is contributed.

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

Conciseness3/5

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

It is a single short, front-loaded sentence with no waste, but it is under-specified rather than concise — the terseness is a symptom of missing content rather than efficiency.

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

Completeness2/5

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

For a simple 1-param read with an output schema the burden is low, but the description omits the one thing this tool's crowded sibling family demands: how it differs from the team/user/tenant scoped getters and the list endpoint. That gap is material to correct tool selection.

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

Parameters2/5

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

Schema coverage is 0% for the single required attribute_id parameter; the schema only gives its type, not whether it is a numeric ID, UUID, or name. The description's phrase 'a user attribute's definition' only loosely implies that the parameter identifies the attribute, so it does not compensate for the coverage gap.

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

Purpose3/5

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

The description has a specific verb ('Get') and resource ('user attribute'), but 'definition' is vague about what is actually retrieved. It also fails to distinguish itself from closely-named siblings like admin_get_user_attribute_users, admin_get_user_attribute_teams, and admin_get_user_attribute_tenants, so an agent could easily pick the wrong one.

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?

There is no guidance on when to use this tool versus admin_list_user_attributes (list) or the scoped variants admin_get_user_attribute_users/teams/tenants. The agent must infer the distinction purely from tool names.

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

admin_get_user_attribute_teamsAdmin Get User Attribute TeamsA
Read-only

Get all team assignments for a user attribute.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
attribute_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior5/5

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

Annotations already mark this read-only and non-destructive, but the description adds real behavioral value beyond them: it declares that pagination is followed automatically to the last page, so the agent must not loop on nextPage. It further clarifies that nextPage is always null and hasMore always false, and that total reflects Sigma's own value, which prevents incorrect client-side pagination logic.

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 purpose sentence is front-loaded and the pagination caveat follows immediately. The parenthetical about hasMore and Sigma's total value is slightly dense but still earns its place by preventing a common misuse.

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 output schema exists, so the description is not obliged to explain return values, and the pagination semantics are well covered. The remaining gap is the undocumented attribute_id, which is not described anywhere in the schema or the description for a tool whose only input is that id.

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

Parameters2/5

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

Schema description coverage is 0% and the sole required parameter attribute_id carries no description in the schema. The description only implies that the id identifies a 'user attribute'; it does not explain the expected format or how to obtain a valid id, so it fails to compensate for the coverage gap.

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

Purpose4/5

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

The description names a specific verb and resource: get all team assignments for a user attribute. The resource is specific enough ('teams') to distinguish it implicitly from admin_get_user_attribute_users and admin_get_user_attribute_tenants, but it never names those siblings explicitly.

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?

Usage is implied by 'Get all team assignments for a user attribute', so an agent can infer it lists rather than mutates. However, there is no statement of when to use this versus the user- or tenant-scoped variants, and no stated prerequisite such as needing a known attribute_id.

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

admin_get_user_attribute_tenantsAdmin Get User Attribute TenantsA
Read-only

Get all tenant assignments for a user attribute.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
attribute_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered. The description adds real value beyond them by disclosing that pagination is followed to the last page, entries are concatenated across pages, and 'total' is Sigma's own value while 'nextPage' is nulled out because everything is read.

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?

Two sentences with the core purpose front-loaded and no wasted preamble. The second sentence is dense with parentheticals ('hasMore', 'nextPage'), which is slightly heavy but each clause conveys real pagination behavior.

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 single-parameter read tool with an output schema, the definition covers purpose and the non-obvious aggregation/pagination behavior. The one gap is that attribute_id itself is neither described in the schema nor clarified here.

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 one required parameter (attribute_id) at 0% schema description coverage, so the description must carry the load. It only implies that the id refers to a 'user attribute' and adds no syntax, format, or lookup guidance beyond that implication.

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

Purpose4/5

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

The description states a specific verb and resource ('Get all tenant assignments for a user attribute'), which an agent can distinguish from the sibling user- and team-scoped variants. However, it never names those siblings (admin_get_user_attribute_users / _teams) to make the distinction explicit.

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?

There is no guidance on when to call this versus the parallel admin_get_user_attribute_users, admin_get_user_attribute_teams, or admin_set/update/delete_user_attribute_for_tenants tools. Usage is only inferable from the resource name, not stated.

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

admin_get_user_attribute_usersAdmin Get User Attribute UsersA
Read-only

Get all user assignments for a user attribute.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
attribute_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior4/5

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

The annotations already declare this operation safe and read-only. The description adds genuinely useful behavior beyond them: it automatically follows pagination to the last page and normalizes the response shape (entries merged across pages, total when present, nextPage null, hasMore false). That explains why callers never need to page manually, which an agent cannot learn from annotations.

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

Conciseness4/5

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

The purpose is stated in the first sentence, and pagination caveats follow. The second sentence is dense but every clause conveys real information about pagination and the response envelope. Minor cost comes from backtick-quoted Sigma internals that read more like implementation notes than agent guidance.

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?

An output schema exists, so return values may be documented there. The description has already covered pagination semantics, the one behavior an agent cannot infer from structured fields. Only the parameter's origin and format are left unexplained, which is a moderate gap, not a blocking one.

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 one parameter, attribute_id, with 0% schema description coverage, so the schema itself provides no description. The description only indirectly helps: 'for a user attribute' suggests this argument identifies the attribute. It never states the format (UUID or otherwise) or how to obtain the value from admin_list_user_attributes.

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

Purpose4/5

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

The first sentence names a specific verb and resource: 'Get all user assignments for a user attribute.' That is distinct from the sibling tools for teams and tenants, although the description doesn't explicitly name those siblings as the alternatives. An agent can infer the distinction from 'user assignments', but the description never states it directly.

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, but it never says when to call this tool rather than admin_get_user_attribute_teams or admin_get_user_attribute_tenants. There are no stated prerequisites, such as whether the attribute must exist or belongs to the current org. The purpose makes the tool's role obvious, but routing relies on inference.

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

admin_list_account_typesAdmin List Account TypesA
Read-only

List all account types (license types) in the organization.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page and nextPageToken null, since every page is read.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already establish readOnlyHint=true and destructiveHint=false. The description adds genuinely new behavior: it auto-follows Sigma pagination to the last page and returns entries from every page with nextPageToken null, which tells the agent it need not loop manually — a meaningful detail 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?

Two sentences, front-loaded with the purpose and followed by the pagination caveat. The second sentence is slightly heavy with implementation jargon (backticks around field names) but every sentence 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?

An output schema exists, so return-value explanation is not strictly required; the description nonetheless explains the pagination outcome, which is the one thing the schema cannot convey. Nothing critical is missing for a zero-arg read 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?

Zero parameters, so the baseline is 4. There is nothing to document, and the description correctly focuses on behavior rather than parameters.

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

Purpose4/5

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

States a specific verb and resource ("List all account types") and adds the synonym "license types" to disambiguate terminology. It does not explicitly contrast with siblings like admin_create_account_type or admin_delete_account_type, but the read-only scope is 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?

Usage is only implied by the name and description; there is no statement of when to prefer this over alternatives, nor prerequisites (e.g., admin scope required). For a simple zero-arg list tool this is adequate but leaves the agent to infer context.

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

admin_list_all_membersAdmin List All MembersA
Read-only

List ALL members in the organization, automatically following pagination.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already cover the safety profile (readOnlyHint=true, destructiveHint=false, openWorldHint=true). The description adds one genuine behavioral fact beyond them: pagination is handled internally, so the caller gets the full set in one call. It does not address result size, latency, or truncation risk on a large organization, so it is useful but not rich.

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 sentence that front-loads scope ('ALL members in the organization') before the pagination behavior. Every word earns its place with no preamble or 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?

With no inputs, an output schema to define return values, and annotations covering safety, the description supplies what is needed to call it correctly: scope and auto-pagination. It stops short of noting result-size implications for large orgs or naming the paged alternative, which would make the routing 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?

The tool takes zero parameters, so the baseline is 4. Schema coverage is 100% and there is nothing for the description to disambiguate about inputs.

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

Purpose4/5

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

States a specific verb and resource with scope: 'List ALL members in the organization.' The capitalized ALL plus 'automatically following pagination' hints at how it differs from the sibling admin_list_members, but it never names that sibling, so the differentiation is inferred rather than stated.

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 the condition for use (when you want the complete member list rather than paged results), which effectively contrasts with admin_list_members. However, no alternative is named and no exclusions or prerequisites are given, so the agent must infer the choice from the ALL/pagination phrasing.

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

admin_list_allowed_ipsAdmin List Allowed IpsA
Read-only

List IP allowlist entries configured for the organization (v3alpha).

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page and nextPageToken null, since every page is read. page_token resumes from a nextPageToken; page_size is the page size.

NameRequiredDescriptionDefault
page_sizeNo
page_tokenNo

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already establish that this is a safe read, but the description adds genuinely useful behavior: it follows Sigma pagination to the last page, aggregates 'entries' from every page, and returns nextPageToken as null. That tells the agent it does not need to loop pages itself. It stops short of noting auth requirements or result-size characteristics.

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 purpose is front-loaded in the first sentence and the total length is modest. The reST-style double-backtick markup adds noise that an agent must parse through, but nothing is redundant.

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 only two optional pagination params and an output schema present, the description covers what an agent needs to call it correctly — particularly the auto-pagination behavior that determines how it should interpret results. Missing only when-to-use guidance against siblings.

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 0%, so the description must carry the load. It does explain that page_token resumes from a nextPageToken, which is real added meaning, but 'page_size is the page size' is tautological and gives no bounds or defaults guidance.

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

Purpose4/5

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

It states a specific verb and resource (list IP allowlist entries scoped to the organization) and adds the API version. It is clearly separable from the add/remove siblings by verb, though it never names them or otherwise differentiates explicitly.

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?

There is no guidance on when an agent should call this versus the related admin_add_allowed_ips / admin_remove_allowed_ips tools, and no prerequisites or scope conditions. Usage is only inferable from the tool name and the word 'List'.

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

admin_list_all_teamsAdmin List All TeamsA
Read-only

List ALL teams in the organization, automatically following pagination.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already establish the safe read-only, non-destructive profile. The description adds a genuinely useful behavioral trait beyond them: pagination is handled automatically, so the caller must not implement its own loop. It stops short of noting rate limits or result-size implications.

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 sentence with the scope ('ALL teams') front-loaded and the pagination behavior attached. Nothing is wasted and nothing important is buried.

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?

Return values are covered by the output schema and safety by annotations, so the description only needed to add scope and pagination behavior — which it does. The remaining gap is the absence of an explicit pointer to admin_list_teams for the paginated alternative.

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 tool takes zero parameters, which is the baseline-4 case. With no inputs to document, there is no semantic gap for the description to fill.

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

Purpose4/5

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

States a specific verb and resource ('List ALL teams') plus scope ('in the organization'), which contrasts with the sibling admin_list_teams. It does not name that sibling explicitly, so the differentiation from the paginated variant must be inferred from 'ALL'.

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?

Usage is implied by 'ALL' and 'automatically following pagination' — an agent can infer this is the convenience variant for fetching the complete team list. However, it never states when to prefer admin_list_teams instead, nor any prerequisites such as admin permissions.

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

admin_list_api_connectorsAdmin List Api ConnectorsA
Read-only

List all API connectors (custom data integrations).

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page and nextPageToken null, since every page is read.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint=true, destructiveHint=false, openWorldHint=true), so the bar is lower — but the description adds genuinely non-obvious behavior: it auto-paginates through every page and always returns nextPageToken=null. That is exactly the kind of trait an agent cannot infer from the empty schema and would otherwise be surprised by (no page-size control, potentially large result). It stops short of warning about cost/latency of an unbounded fetch.

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?

Two sentences, front-loaded with the purpose before the pagination caveat — good ordering with no filler. The second sentence is slightly dense ("returns the keys of Sigma's page: entries from every page and nextPageToken null") and could be stated more plainly, but every clause carries information.

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

Completeness4/5

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

With an output schema present, the description need not spell out the return shape, yet it volunteers the pagination-aggregated result. For a zero-parameter read tool this is nearly complete; the only gap is any indication of result size or whether the full walk can be slow in large orgs.

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 tool takes zero parameters, which is the baseline-4 case; there is nothing for the description to disambiguate. The schema is closed (additionalProperties: false) so an agent can be confident no filtering arguments exist.

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 and resource ("List all API connectors") and adds a clarifying gloss ("custom data integrations") so the agent knows what the resource actually is. The plural "all" plus the sibling set (admin_get_api_connector, admin_create_api_connector, admin_list_api_credentials) makes the boundary obvious without opening any schema.

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

Usage Guidelines3/5

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

Usage is implied by "List all" — you call this when you need the full connector inventory. However, there is no explicit when-to-use versus admin_get_api_connector for a single connector, no mention of the sibling credential-listing tool, and no note about when the exhaustive fetch is inappropriate. Adequate but leaves routing to inference.

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

admin_list_api_credentialsAdmin List Api CredentialsA
Read-only

List the API credentials API connectors use (metadata only).

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page and nextPageToken null, since every page is read.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior5/5

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

Annotations already establish read-only, non-destructive, open-world behavior, but the description adds material behavior beyond them: it automatically follows Sigma pagination to the last page and explains the returned page keys, including nextPageToken null. This is exactly the kind of operational/return behavior an agent needs.

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; the second sentence earns its place by documenting auto-pagination and output behavior. There is no 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?

For a no-parameter list tool with full annotations and an output schema, the description supplies the remaining key context: scope, metadata-only nature, automatic pagination, and final token behavior. Nothing needed to invoke it correctly is missing.

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 tool has zero input parameters, so the baseline 4 applies. There are no parameters whose meaning the description could further clarify.

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

Purpose4/5

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

States a specific verb ('List') and resource ('API credentials') scoped to credentials that API connectors use, with a metadata-only qualifier. It is distinguishable from get/create/update/delete credential siblings by the list operation, though it does not explicitly name alternatives.

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 a listing use case and the 'metadata only' note hints that detailed credential retrieval belongs elsewhere, but it never states when to use this over admin_get_api_credential or admin_list_api_connectors. No explicit exclusions or alternatives are given.

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

admin_list_deployable_tenantsAdmin List Deployable TenantsA
Read-only

List the tenant organizations deployments can target.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page and nextPageToken null, since every page is read.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true and destructiveHint=false, so safety is covered. The description adds meaningful behavior beyond that: it auto-follows pagination to the last page and returns concatenated 'entries' with a null 'nextPageToken.' That is useful operational context for an agent.

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?

Two sentences, front-loaded with purpose and followed by pagination behavior. The pagination sentence is dense but earns its place because it changes how an agent interprets the result.

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 parameterless read-only list with an output schema, the description covers purpose and pagination semantics sufficiently. It could be improved by explicitly noting how it differs from admin_list_tenants, but nothing essential for correct invocation is missing.

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 tool takes zero parameters and the schema is fully specified, so the baseline is 4. The description does not need to explain parameters and appropriately does not attempt to.

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

Purpose4/5

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

States a specific verb and resource ('List the tenant organizations') and narrows scope with 'deployments can target,' which implicitly distinguishes it from the broader admin_list_tenants. It does not explicitly name the sibling it differs from, so it falls short of the top score.

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 phrase 'deployments can target' implies the use case, but there is no explicit guidance on when to choose this over admin_list_tenants or admin_list_tenants_paginated. The agent must infer the distinction from scope wording alone.

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

admin_list_deployment_documentsAdmin List Deployment DocumentsA
Read-only

List documents in a deployment policy.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page and nextPageToken null, since every page is read.

NameRequiredDescriptionDefault
policy_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds valuable behavioral context beyond annotations: it explains that it follows pagination to the last page, aggregates `entries` from every page, and returns `nextPageToken` as null.

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 purpose and then explains pagination behavior in a second sentence. It is efficient overall, though the pagination sentence is somewhat repetitive with 'Sigma's page' and 'every page.'

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 tool is simple: one required parameter, an output schema, and clear read-only annotations. The description covers what the tool does and how pagination is handled, which is sufficient for correct invocation, though it omits any mention of admin access requirements or deployment-policy lookup 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?

The schema has zero description coverage for the single required `policy_id` parameter. The description indirectly clarifies that `policy_id` refers to a deployment policy, but it does not provide format, identity, or lookup details beyond what the parameter name and tool name already imply.

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 and resource: 'List documents in a deployment policy.' This clearly distinguishes it from siblings like admin_list_deployments (which lists deployment policies themselves) and admin_add_deployment_documents or admin_remove_deployment_document (which mutate deployment documents).

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?

Usage is implied by the purpose: call this when you need the documents attached to a deployment policy. However, there is no explicit guidance on when to use this tool versus related siblings, nor any stated prerequisites or exclusions.

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

admin_list_deploymentsAdmin List DeploymentsA
Read-only

List all deployment policies.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page and nextPageToken null, since every page is read.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so safety is covered. The description adds genuinely useful behavior beyond that: it auto-paginates to the last page and returns `entries` from every page with `nextPageToken` always null, which tells the agent it never needs to loop on cursors. It omits auth/permission requirements and any warning about result volume on large orgs.

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?

Two short sentences, front-loaded with the purpose. The second sentence is denser than needed ('returns the keys of Sigma's page') but every clause carries real information about aggregation semantics, so little is wasted.

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?

An output schema exists and the description needn't explain return values, yet it adds the key aggregation fact. For a zero-parameter, read-only listing tool this is nearly complete; the only missing context is scope (org-wide vs tenant-scoped) and any caveat about fetching every page of a very large dataset.

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 tool takes zero parameters, so the baseline is 4. The schema is fully self-describing (empty object, additionalProperties false) and the description correctly implies no filtering or pagination arguments are accepted.

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

Purpose4/5

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

States a specific verb and resource: 'List all deployment policies.' An agent knows exactly what is returned. However, it does not distinguish itself from nearby siblings such as admin_get_deployment (single policy), admin_list_deployment_documents (associated documents), or admin_list_deployment_tenants, so the boundary between these list-shaped tools is left implicit.

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 name and description strongly imply the use case (enumerate all deployment policies), but there is no explicit when-to-use or when-not-to-use guidance and no named alternative such as admin_get_deployment for a single policy. Usage is inferable rather than stated.

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

admin_list_deployment_tenantsAdmin List Deployment TenantsA
Read-only

List the tenants a deployment policy deploys to.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page and nextPageToken null, since every page is read.

NameRequiredDescriptionDefault
policy_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior4/5

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

Beyond the readOnlyHint/openWorldHint annotations, the description discloses a real behavioral trait: the tool auto-paginates to the last page and returns concatenated 'entries' with nextPageToken null. It does not cover error behavior or rate limits, but the pagination contract is the key thing an agent needs.

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?

Two tight sentences with the core purpose front-loaded. The second sentence leans on internal terminology ('the keys of Sigma's page') but the detail about exhausted pagination is worth its space.

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 one-parameter read tool with an output schema and safety annotations, the definition covers purpose and the unusual pagination behavior well. Only access requirements and sibling selection criteria are 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?

The single policy_id parameter has 0% schema description coverage, and the description only implies its meaning by referencing 'a deployment policy'. That does help disambiguate it from a deployment ID, but no format or source-of-value guidance is given.

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

Purpose4/5

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

The description gives a specific verb and resource ('List the tenants a deployment policy deploys to'), which scopes the result far better than a generic tenant list. It does not explicitly name the near-siblings admin_list_tenants, admin_list_deployable_tenants, or admin_list_deployment_documents, so the agent must infer the distinction between 'deployable' and 'currently deployed' tenants.

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?

Usage is only implied: an agent can infer it is called with a deployment policy to see which tenants receive it. There is no explicit when-to-use statement and no mention of alternatives such as admin_list_deployable_tenants for the candidate set, nor any prerequisites like admin permissions.

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

admin_list_grantsAdmin List GrantsA
Read-only

List grants for a specific file/workbook/data model by inodeId. Required: inodeId.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
inode_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior5/5

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

The description discloses a genuinely non-obvious behavior: the tool auto-paginates to the last page and aggregates entries from every page, with nextPage forced to null (hasMore false). That is exactly the kind of trait annotations (readOnly/openWorld/destructive=false) cannot convey, and it materially changes how an agent interprets the results.

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 first sentence front-loads the core purpose and required param in one line. The pagination sentence is dense and somewhat awkwardly worded, and since an output schema exists, part of the return-key explanation is redundant, but the auto-pagination disclosure earns its space.

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 single-parameter read tool with annotations and an output schema, the definition covers the essential behavioral surprise (auto-pagination). The main gap is routing guidance relative to the resource-specific grant listers.

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 0%, so the description must carry the load. It does clarify that inode_id accepts file, workbook, or data model identifiers and marks it required, which is meaningfully beyond the bare string type — though it gives no format or example values.

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

Purpose4/5

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

States a specific verb (list) and resource (grants) scoped by inodeId, and clarifies that the inode can be a file, workbook, or data model — which is more than the name conveys. It does not, however, distinguish itself from siblings like workbooks_list_workbook_grants or datasets_list_connection_grants, leaving ambiguity about which grant-listing tool to pick.

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?

Usage is only implied: 'for a specific file/workbook/data model by inodeId' plus the required-parameter note. There is no explicit statement of when to prefer this over the resource-specific grant listers that appear in the sibling set, and no exclusions or prerequisites.

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

admin_list_membersAdmin List MembersA
Read-only

List all members in the organization. Pass summary_only=True for concise token-efficient response.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read. limit is the page size.

NameRequiredDescriptionDefault
limitNo
summary_onlyNo

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare readOnly/openWorld/destructive, so safety is covered. The description adds genuinely useful non-obvious behavior: it auto-paginates to the last page, so the caller never needs to loop, and nextPage is null / hasMore false as a result. The enumeration of returned keys is somewhat redundant with the output schema.

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

Conciseness3/5

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

Front-loads the purpose well, but the second half is a dense, awkwardly formatted block listing return keys that the output schema already provides, and the stray markdown/backtick formatting hurts readability.

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 two-optional-parameter read tool with an output schema, the description covers the critical unknown (full pagination to exhaustion) and both parameters' intent. Missing only limit bounds/defaults and what summary_only trims.

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 0%, so the description must compensate: it explains that 'limit' is the page size (not a total cap) and that 'summary_only' yields a token-efficient response. However it never says what summary_only omits, nor the default of 200 or the accepted limit range — meaningful gaps remain.

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

Purpose4/5

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

States a specific verb and resource ('List all members in the organization') with a clear scope. It does not differentiate itself from the very similar sibling admin_list_all_members, nor from admin_list_team_members, so an agent cannot tell which list-members tool to pick from the description alone.

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?

Gives one actionable usage hint ('Pass summary_only=True for concise token-efficient response') but never says when to use this tool versus admin_list_all_members or admin_get_member, and states no prerequisites or exclusions.

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

admin_list_member_schedulesAdmin List Member SchedulesA
Read-only

List the scheduled exports a member owns.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
member_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint=true, destructiveHint=false), so the description earns credit for the non-obvious behavior it adds: the tool auto-follows Sigma's pagination to the last page and aggregates entries across pages, always yielding nextPage null / hasMore false. That is exactly the kind of trait an agent could not infer from structured fields.

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 purpose sentence is front-loaded and short; the pagination paragraph is longer and full of implementation-shaped phrasing ('returns the keys of Sigma's page: ``entries``...'), but every clause conveys a real behavioral fact. Minor waste in the parenthetical restatements.

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?

An output schema exists, so return shape need not be re-explained; the description instead covers the one thing the schema cannot — that all pages are exhausted and pagination metadata is neutralized. For a one-parameter admin read, that is sufficient, with only member_id format left unresolved.

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 0% for the single member_id parameter, so the description carries the burden. It only implies via 'a member owns' that member_id selects the owning member; it says nothing about ID format (email vs numeric id) or behavior when the member is unknown.

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

Purpose4/5

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

The first sentence states a specific verb and resource ('List the scheduled exports') and scopes it to schedules 'a member owns', which distinguishes it from the workbook/report-scoped schedule siblings such as workbooks_list_workbook_schedules. It stops short of explicitly naming the alternative, but the ownership scope is a real differentiator.

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?

Usage is only implied: the admin prefix and 'member owns' suggest it is the per-member administrative lookup, but there is no statement of when to prefer it over workbooks_list_workbook_schedules or workbooks_list_report_schedules, and no exclusions or prerequisites.

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

admin_list_member_teamsAdmin List Member TeamsB
Read-only

List teams a member belongs to.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
member_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior4/5

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

Beyond the readOnly/non-destructive annotations, the description discloses a real behavioral trait: it auto-advances through all pages rather than returning a single page, and it reports nextPage as null / hasMore as false. This is exactly the kind of pagination behavior an agent cannot learn from the input schema.

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

Conciseness3/5

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

The purpose is front-loaded in one clean sentence, but the second sentence is a dense run-on of backticked implementation jargon (````entries````, ``nextPage``, ``hasMore``) that partly duplicates the output schema and is hard to parse.

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?

Because an output schema exists, the return-value discussion is largely redundant, and the one genuinely under-documented area — the identifier parameter — is left unexplained. Adequate for a simple one-parameter read, but not fully complete.

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

Parameters2/5

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

There is a single required parameter (member_id) with 0% schema description coverage, and the description never says what the value is or where it comes from (Sigma member_id vs. email vs. numeric ID). With this coverage gap, the description is obligated to compensate and does not.

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

Purpose4/5

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

Opening sentence gives a specific verb and resource with directionality ('List teams a member belongs to'), which implicitly distinguishes it from the sibling admin_list_team_members (the inverse relationship). It stops short of naming the sibling or stating the distinction explicitly.

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?

No guidance on when to prefer this over admin_list_team_members, admin_list_members, or admin_get_member, and no prerequisites or scope limits are stated. The agent must infer usage purely from the tool name.

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

admin_list_org_workbook_agentsAdmin List Org Workbook AgentsA
Read-only

List all workbook agents across the organization.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page and nextPageToken null, since every page is read. page_token resumes from a nextPageToken; page_size is the page size (spec maximum 100, the default).

NameRequiredDescriptionDefault
page_sizeNo
page_tokenNo

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, non-destructive, open-world), yet the description still adds genuinely non-obvious behavior: it auto-follows pagination to the last page and therefore always returns nextPageToken null while aggregating entries from every page. That is real context the agent could not get from annotations, though permission/eligibility behavior is unstated.

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 primary purpose is front-loaded in the first sentence, followed by pagination and parameter details in order of importance. The second sentence ('returns the keys of Sigma's page: entries from every page and nextPageToken null') is slightly convoluted but earns its place by explaining the aggregation behavior.

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 two optional params, an output schema, and read-only annotations, the description covers what an agent needs to call it correctly, including the surprising auto-pagination. Only authorization requirements and any rate-limit considerations are absent.

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 0%, so the description carries the burden, and it does: page_token is explained as resuming from a nextPageToken, and page_size as the page size with a spec maximum of 100. The phrase 'the default' is slightly ambiguous as to whether 100 is the default value, which keeps it from a 5.

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

Purpose4/5

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

States a specific verb and resource ('List all workbook agents') plus a scope qualifier ('across the organization'), which implicitly separates it from the per-workbook sibling workbooks_list_workbook_agents. The differentiation is inferred rather than stated, so it stops short of a 5.

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

Usage Guidelines3/5

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

Usage is implied by the scope phrase 'across the organization' — an agent can reason that this is the org-wide listing versus a workbook-scoped one. However, the description never names the alternative tool or states prerequisites (e.g., admin role required) or when-not conditions.

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

admin_list_recent_webhooksAdmin List Recent WebhooksC
Read-only

List recently recorded incoming Sigma webhook events.

read_only_hint: True

NameRequiredDescriptionDefault
limitNo
event_typeNo

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.6/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true and destructiveHint=false, so safety is covered without the description. The description's only extra content is a literal restatement of 'read_only_hint: True', which adds nothing beyond the structured annotation, and it omits ordering, retention window/pagination behavior, and whether this is tenant-scoped.

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

Conciseness3/5

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

The core sentence is tight and front-loaded, but the trailing 'read_only_hint: True' line is pure duplication of the annotation block and should be dropped. Size is small, yet one of the two lines is waste.

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

Completeness2/5

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

An output schema exists, so return values need no explanation. However, for a tool whose entire premise is recency, the description never defines the lookback window, ordering, or result cap behavior, and leaves both input parameters undocumented.

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

Parameters2/5

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

Schema description coverage is 0% for two parameters: 'limit' (default 20) and 'event_type' (free-form string, no enum). The description mentions neither, so an agent gets no vocabulary for valid event types and no notion of how limit interacts with recency. With low coverage the description is expected to compensate and does not.

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

Purpose4/5

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

States a specific verb ('List') and a specific resource ('recently recorded incoming Sigma webhook events'), which is enough to tell it apart from the many workbooks/datasets/admin siblings. No sibling webhook tool exists to contrast against, so plain clarity is achievable and delivered.

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 offers no when-to-use guidance, no prerequisites, and no statement of what 'recently' means in practice. An agent must infer everything from the tool name; nothing routes it here versus any other admin listing tool.

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

admin_list_team_membersAdmin List Team MembersB
Read-only

List members of a team.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
team_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior4/5

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

Annotations already establish read-only, non-destructive, open-world behavior. The description adds valuable pagination behavior: it reads through all Sigma pages, aggregates entries, reports total when available, and sets nextPage to null. It does not discuss permissions or rate limits, but it meaningfully exceeds 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 purpose is front-loaded in the first sentence, and the pagination behavior follows efficiently. The second sentence is somewhat dense and mentions return keys despite an output schema, but the pagination semantics are useful rather than wasted.

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

Completeness4/5

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

This is a simple list tool with annotations and an output schema, so the description does not need to explain return values fully. It covers the key non-obvious behavior, namely auto-pagination, though it remains thin on the team_id parameter.

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

Parameters2/5

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

There is one required parameter, team_id, with 0% schema description coverage. The description only implies that the parameter identifies a team; it does not clarify whether the value is an ID, name, or where to obtain it.

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

Purpose4/5

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

The description states a specific verb and resource: list members of a team. This distinguishes it from admin_list_member_teams in practice, since that tool answers the reverse relationship. It does not explicitly name siblings, so it falls short of a 5.

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

Usage Guidelines2/5

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

The description gives no guidance on when to use this tool versus admin_list_members, admin_list_all_members, admin_list_member_teams, or admin_get_team. The use case is implied by the name and first sentence, but no alternatives or exclusions are provided.

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

admin_list_teamsAdmin List TeamsB
Read-only

List all teams. Pass summary_only=True for concise token-efficient response.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read. limit is the page size.

NameRequiredDescriptionDefault
limitNo
summary_onlyNo

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds real behavioral information beyond annotations: it auto-paginates through every page, flattens results, and always yields nextPage=null/hasMore=false — exactly the quirk an agent needs to know when consuming 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.

Conciseness3/5

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

Purpose is front-loaded, which is good, but the pagination sentence is long, jargon-heavy ('the keys of Sigma's page', parenthetical hasMore clauses), and uses internal implementation terminology that is hard for an agent to parse quickly. It could be halved without losing meaning.

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 an output schema present, the description needn't explain return fields, and it sensibly focuses on the one thing the schema can't convey: the auto-pagination flattening. The main remaining hole is the lack of differentiation from admin_list_all_teams.

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 0%, so the description must compensate, and it does: summary_only is explained as a token-efficient mode, and limit is described as the page size (slightly awkwardly placed at the end). Both parameters get meaning that the bare schema does not provide.

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

Purpose3/5

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

States a clear verb and resource (list teams), but the sibling set contains admin_list_all_teams with essentially the same apparent scope, and the description offers no differentiation between them. An agent cannot tell from the text alone which one to pick.

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?

No when-to-use or when-not-to-use guidance, and no mention of the near-identical sibling admin_list_all_teams. The summary_only hint is parameter advice, not routing guidance.

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

admin_list_tenant_deployment_capabilitiesAdmin List Tenant Deployment CapabilitiesC
Read-only

List which tenant organizations a tenant can deploy to.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page and nextPageToken null, since every page is read.

NameRequiredDescriptionDefault
tenant_org_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior4/5

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

Annotations already cover the read-only/non-destructive safety profile, but the description adds genuinely non-obvious behavior: it auto-paginates to the last page and merges entries across all pages with nextPageToken null. That changes how an agent interprets results (no need to page). It doesn't mention auth/scope requirements an admin tool might have.

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

Conciseness3/5

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

Front-loaded and short, but the second sentence is jargon-heavy ('returns the keys of Sigma's page: entries ... nextPageToken null') and spends its budget on pagination plumbing rather than on the parameter or sibling differentiation.

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?

An output schema exists so return values needn't be explained, and pagination behavior is covered. However, the undocumented required parameter and the lack of disambiguation from three sibling list tools leave real gaps for a tool with a required input.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate for the single parameter tenant_org_id. It never explains that the parameter identifies the tenant whose deployment capabilities are listed, nor whether it's an org key, slug, or ID.

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

Purpose3/5

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

States a verb (list) and resource (tenant organizations a tenant can deploy to), but the description drifts from the tool's stated subject ('deployment capabilities') toward a list of tenants. With near-identical siblings like admin_list_deployable_tenants and admin_list_deployment_tenants present, the description does nothing to distinguish this tool's 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 Guidelines2/5

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

No when-to-use guidance and no mention of the very similar siblings (admin_list_deployable_tenants, admin_list_deployment_tenants, admin_list_tenants). An agent must guess which of these list tools to call.

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

admin_list_tenantsAdmin List TenantsA
Read-only

List all tenant organizations (for multi-tenant deployments).

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page and nextPageToken null, since every page is read.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior4/5

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

Annotations declare readOnly=true, openWorld=true, destructive=false, so safety is covered. The description adds valuable behavioral detail: it auto-paginates to the last page and returns entries from every page with nextPageToken null, which is context 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?

Two sentences with zero waste; the core action and the auto-pagination behavior are front-loaded and clearly separated.

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 zero params, an output schema, and annotations that cover safety, the description is nearly complete. A minor gap is that it doesn't state required admin privileges or permissions.

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?

Zero parameters, so the baseline is 4; there is nothing in the schema for the description to add meaning to.

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

Purpose4/5

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

States a specific verb and resource: 'List all tenant organizations' with parenthetical context 'for multi-tenant deployments'. The note about following pagination to the last page distinguishes it from a paginated sibling, though it doesn't name that sibling explicitly.

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?

Usage is implied by the description of auto-pagination (use this to retrieve all tenants in one call), but there is no explicit when-to-use vs when-not-to-use guidance or named alternative like admin_list_tenants_paginated.

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

admin_list_tenants_paginatedAdmin List Tenants PaginatedA
Read-only

List all tenants, following Sigma's cursor pagination to the last page.

GET /v2/tenants pages with pageSize/pageToken and answers nextPageToken (not limit/page/nextPage). Returns {"total": N, "tenants": [...]} with every tenant organization.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered. The description adds substantive behavior beyond that: cursor pagination that walks every page, the exact paging vocabulary (pageSize/pageToken → nextPageToken), and the caveat that this is not limit/page/nextPage. The implicit multi-request cost of 'to the last page' is hinted at but not quantified.

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?

Two dense sentences, front-loaded with the action and scope, then the mechanism. Every clause carries information; the backticked paging names are terse and scannable. Slightly technical but not padded.

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?

An output schema exists, so return values need not be spelled out, yet the description summarizes the envelope anyway. For a zero-parameter read tool with full annotation coverage, the remaining gap is only the absence of a sibling-routing rule.

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?

Zero input parameters, so the baseline is 4. The description's mention of pageSize/pageToken refers to the underlying HTTP endpoint rather than the tool schema, which is clarifying context rather than confusion.

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

Purpose4/5

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

States a specific verb and resource ('List all tenants') plus a scope qualifier ('following Sigma's cursor pagination to the last page'), which separates it from the plain admin_list_tenants sibling. The differentiation is implicit via the 'all ... to the last page' phrasing rather than an explicit call-out, so it stops short of a 5.

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

Usage Guidelines3/5

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

Usage is only implied: 'all tenants ... to the last page' suggests this is the exhaustive variant, but the description never states when to prefer it over admin_list_tenants or admin_list_deployable_tenants. No exclusions, prerequisites, or cost warnings are given.

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

admin_list_translationsAdmin List TranslationsA
Read-only

List organization translation files.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false. Beyond that, the description discloses important pagination behavior: it follows Sigma's pagination to the last page, aggregates entries from every page, and sets nextPage null because every page is read. That is useful, though the repeated phrase "Sigma's page" and "Sigma sends it" is underspecified for an agent unfamiliar with the underlying API.

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 definition is only two sentences and front-loads the core purpose before explaining pagination. The second sentence is dense and jargon-heavy ("Sigma's page", "Sigma's value", "where Sigma sends it"), so it is not maximally crisp, but it avoids 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?

The tool has no parameters and an output schema, so the description does not need to explain the full return structure. It still explains the relevant pagination-aggregation behavior and the meaning of nextPage/hasMore, which is the main behavior an agent needs to know. What remains missing is a clearer definition of what a "translation file" contains, but the key operational behavior is covered.

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 zero parameters, and per the rubric a zero-param tool with a fully described schema gets a baseline of 4. The description adds no parameter meaning because there are no parameters to explain.

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

Purpose4/5

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

The description opens with a specific verb and resource: "List organization translation files." It is distinguishable from mutation siblings such as admin_create_translation and admin_delete_translation. It does not explicitly contrast with single-object siblings like admin_get_translation, but the list-vs-get distinction is clear from the name and description.

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?

Usage is implied by "List organization translation files," and the pagination sentence implies this is the tool that exhaustively gathers all translation entries. However, it does not explicitly say when to use this instead of admin_get_translation or other translation-admin tools, and it gives no conditions or exclusions.

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

admin_list_user_attributesAdmin List User AttributesA
Read-only

List all user attributes (used for row-level security and dynamic parameters).

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint=true, destructiveHint=false), and the description adds genuinely behavioral information beyond them: the tool auto-paginates through every page, so the caller never sees a partial result set, and it explains why nextPage is null/hasMore is false. That is useful disclosure an agent could not infer from the annotation set.

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

Conciseness3/5

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

The purpose sentence is tight and front-loaded, but the pagination sentence is a long compound clause full of hedges ("when Sigma sends it", "where Sigma sends it") and duplicated marker names (``nextPage`` null / ``hasMore`` false) that make it hard to parse on first read.

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 an output schema present, the description doesn't need to enumerate return fields, yet it usefully confirms the auto-pagination contract that the schema alone would not convey. Nothing essential for calling the tool is missing; only the relationship to sibling attribute tools is left implicit.

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 tool takes zero parameters, so per the baseline this scores 4. The description correctly implies there are no filters or scoping inputs by promising all attributes across all pages, which is consistent with the empty schema.

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

Purpose4/5

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

States a specific verb and resource ("List all user attributes") and adds why they exist (row-level security, dynamic parameters). The scope word "all" distinguishes it from the singular getter admin_get_user_attribute in the sibling list, but the description never names that sibling explicitly.

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 parenthetical about row-level security and dynamic parameters implies the domain in which an agent would want this tool, but there is no explicit 'use this when' clause and no named alternative such as admin_get_user_attribute or admin_get_user_attribute_users for per-attribute or per-entity lookups.

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

admin_onboard_memberAdmin Onboard MemberC

Onboard a new member: create account then add to teams.

NameRequiredDescriptionDefault
emailYes
team_idsNo
last_nameYes
first_nameYes
member_typeNoviewer

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior3/5

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

Annotations cover the mutation safety profile (readOnlyHint=false, destructiveHint=false, openWorldHint=true), so the bar is lower. The description adds meaningful context that this is a two-step composite operation (create then add to teams), which is not conveyed by annotations. It omits partial-failure behavior and required permissions, so it stays at 3.

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

Conciseness4/5

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

A single front-loaded sentence with no filler. It is appropriately sized, though the extreme brevity contributes to the parameter and behavioral gaps noted elsewhere rather than being a structural flaw.

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

Completeness2/5

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

An output schema exists so return values need not be explained, but with five parameters at 0% schema coverage and no annotation-level detail on permissions or multi-step side effects, the description leaves the agent under-informed for a write operation that modifies both an account and team memberships.

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

Parameters2/5

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

Schema description coverage is 0%, so the description carries the full burden, but it only implicitly touches on email (account creation) and team_ids (adding to teams). It says nothing about first_name, last_name, member_type, or the null default for team_ids, leaving most parameters semantically bare.

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

Purpose4/5

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

The description states a specific verb and resource ('Onboard a new member') and clarifies the composite nature ('create account then add to teams'), which distinguishes it from the plain admin_create_member sibling. It does not explicitly name alternatives, keeping it at 4 rather than 5.

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?

No when-to-use guidance is given relative to alternatives like admin_create_member plus admin_update_team_members, nor any prerequisites or exclusions. The context of 'new member' implies usage but an agent receives no routing instruction.

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

admin_remove_allowed_ipsAdmin Remove Allowed IpsA
Destructive

Delete IP allowlist entries by ID from the organization (v3alpha).

Destructive operation. Requires confirm=True. entry_ids: List of IP allowlist entry ID strings to delete.

NameRequiredDescriptionDefault
confirmNo
entry_idsYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the safety profile is covered. The description adds real context beyond that: the flag as a 'Destructive operation' and, more usefully, the confirm=True guard requirement, which is behavioral knowledge an agent cannot get from the annotations alone.

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 short lines with the purpose front-loaded, then the destructive warning, then the parameter note. Slight redundancy between 'Destructive operation' and the destructiveHint annotation, but no wasted prose.

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?

An output schema exists so return values need not be explained, and the description covers purpose, the confirmation prerequisite, and parameter meaning. It is complete enough for correct invocation, lacking only edge-case behavior (e.g., what happens to non-existent entry IDs).

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 0%, so the description carries the burden, and it does: it explains entry_ids as a list of allowlist entry ID strings and documents the confirm=True requirement. It stops short of explaining confirm's default (false in the schema) or behavior when omitted, but covers both 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?

Specific verb ('Delete') + resource ('IP allowlist entries') + scope ('by ID from the organization'), plus a version tag. It clearly distinguishes itself from the sibling pair admin_list_allowed_ips and admin_add_allowed_ips without needing their schemas.

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?

It states a required invocation condition ('Requires confirm=True'), which is genuine usage guidance for a destructive admin op. However, it never says when to prefer this tool over admin_add_allowed_ips or how it relates to admin_list_allowed_ips, so the when/when-not framing is only implied.

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

admin_remove_deployment_documentAdmin Remove Deployment DocumentB
Destructive

Remove a document from a deployment policy. Requires confirm=True.

NameRequiredDescriptionDefault
confirmNo
inode_idYes
policy_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already mark this as destructive, non-read-only, and open-world, so the safety profile is largely covered. The description adds the confirm=True requirement, which is valuable behavioral context beyond annotations. It does not explain what exactly is removed (e.g., a link versus the document itself), whether the action is reversible, or what permissions are required.

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 short sentences, front-loaded with the core action and followed by the critical confirm requirement. There is no filler, and every sentence contributes necessary information.

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 destructive nature is covered by annotations, and an output schema exists so return values need not be explained. However, for a destructive admin mutation with 0% schema description coverage, the description should at least clarify the required policy_id and inode_id parameters or the effect of removal. It is minimally viable but leaves notable gaps.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate for all three parameters. It only clarifies the semantics of 'confirm' by stating it must be True. The two required parameters, policy_id and inode_id, are left entirely undocumented in both schema and description.

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

Purpose4/5

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

The description states a specific verb and resource: 'Remove a document from a deployment policy.' This clearly distinguishes it from sibling tools like admin_add_deployment_documents and admin_list_deployment_documents. It does not explicitly name or differentiate against the tenant-removal sibling admin_remove_deployment_tenant, but the target resource is clear.

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 includes a key precondition ('Requires confirm=True'), which is useful usage guidance. However, it does not explain when to choose this tool over related alternatives such as admin_remove_deployment_tenant or admin_update_deployment, nor does it state any exclusions or prerequisites beyond the confirm flag.

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

admin_remove_deployment_tenantAdmin Remove Deployment TenantB
Destructive

Remove a tenant from a deployment policy. Requires confirm=True.

NameRequiredDescriptionDefault
confirmNo
policy_idYes
tenant_org_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true and openWorldHint=true, so the safety profile is known. The description adds one piece of genuinely non-derivable context — that confirm must be True — but does not describe side effects (e.g., whether tenant capabilities or grants tied to the policy are affected).

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 short sentences with no waste; the action is front-loaded and the guardrail follows immediately.

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?

An output schema exists, so return values needn't be explained, and annotations cover the destructive profile. Still, for a destructive mutation the description omits the blast radius of removing a tenant from a policy and how to obtain valid IDs.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must carry parameter meaning. It documents only the confirm flag's required value; policy_id and tenant_org_id are left to name inference with no format, sourcing, or relationship detail (e.g., obtainable from admin_list_deployments / admin_list_tenants).

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

Purpose4/5

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

States a specific verb and resource: 'Remove a tenant from a deployment policy.' An agent can distinguish this from admin_add_deployment_tenant and admin_remove_deployment_document from the wording alone, though no sibling is named explicitly.

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?

'Requires confirm=True' is a stated precondition, which is useful usage guidance, but there is no indication of when to prefer this over related operations (e.g., removing the whole deployment or the tenant itself) or any consequence-based caution.

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

admin_reset_org_email_brandingAdmin Reset Org Email BrandingA
Destructive

Reset the organization email branding settings back to defaults.

Destructive operation. Requires confirm=True.

NameRequiredDescriptionDefault
confirmNo

Output Schema

NameRequiredDescription
resultYes

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the safety profile is covered. The description adds the non-obvious confirm=True requirement, which is important because the schema marks confirm as optional with default false. It does not detail auth scope or whether prior branding is recoverable, keeping it short of a 5.

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

Conciseness5/5

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

Two sentences, purpose front-loaded, then the destructive/confirm caveat. No filler, 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?

An output schema exists, so return values need not be described, and annotations already cover the destructive/read-write profile. The description covers purpose and the confirm prerequisite. Minor gaps: no mention of required admin privileges or irreversibility of the reset.

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 0% and the single parameter has no description, so the description must compensate. 'Requires confirm=True' supplies the critical missing semantics: the boolean must be explicitly set to true, despite the schema defaulting it to false and marking zero required 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?

States a precise verb ('Reset') and resource ('organization email branding settings') with an explicit scope ('back to defaults'). This distinguishes it from adjacent admin tools like admin_update_org_setting and admin_get_org_setting without requiring the agent to open any schema.

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

Usage Guidelines4/5

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

Gives a clear operating context (resetting branding to defaults) and a concrete prerequisite ('Requires confirm=True'). It stops short of naming alternatives or when-not-to-use conditions, so it is not a full routing guide, but the context is unambiguous.

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

admin_revoke_member_tokensAdmin Revoke Member TokensA
Destructive

Revoke a member's OAuth refresh tokens (OIDC single sign-on and warehouse connections). Requires confirm=True.

Sigma can no longer issue new access tokens for the member; the current session and already-issued access tokens last until their normal expiry.

NameRequiredDescriptionDefault
confirmNo
member_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior5/5

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

Goes well beyond the destructiveHint/openWorldHint annotations by disclosing the exact blast radius: Sigma can no longer mint new access tokens, but the current session and already-issued access tokens survive until normal expiry. That is precisely the non-obvious information an agent needs before invoking a destructive auth operation, and it is consistent with 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?

Two tight sentences, front-loaded with the action and the required flag, followed by the consequence. No filler, nothing an agent must scroll past.

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?

An output schema exists, so return-value explanation is unnecessary, and the description covers precondition plus effect. Minor gaps remain: it doesn't say whether the call is idempotent or what happens when a member has no outstanding tokens.

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 0%, so the description carries the burden; it explicitly states the confirm=True requirement, which the bare boolean schema does not. member_id is only implied by 'a member's ... tokens', but its meaning is self-evident and it is the sole required field.

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

Purpose4/5

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

States a precise verb and resource — revoking a member's OAuth refresh tokens, with the specific token classes (OIDC SSO and warehouse connections) named. It doesn't explicitly distinguish itself from nearby siblings like admin_deactivate_member or admin_bulk_deactivate_members, so it falls just short of a 5.

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

Usage Guidelines3/5

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

The 'Requires confirm=True' line gives a precondition, but there is no guidance on when to choose this over admin_deactivate_member or admin_bulk_deactivate_members, which are the obvious alternatives in this admin surface. Usage is implied by the consequence text rather than stated as a selection rule.

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

admin_set_user_attribute_for_teamsAdmin Set User Attribute For TeamsB
Idempotent

Set a user attribute value for specific teams.

assignments: List of objects, each with 'teamId' (str) and 'value' (str). Example: [{"teamId": "abc123", "value": "US"}]

NameRequiredDescriptionDefault
assignmentsYes
attribute_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description confirms the write nature via 'Set' and adds format context through the example, but says nothing about idempotent overwrite behavior, permissions required, or partial-failure handling across multiple teams.

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?

Two short blocks, the core action front-loaded, and the example is compact and directly usable. Slightly spartan, but nothing is wasted.

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?

An output schema exists so return values need not be explained, and annotations cover the mutation safety profile. Still missing the meaning of attribute_id and any routing guidance against near-identical siblings, which for an admin mutation tool is a real gap.

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 0%, so the description must compensate. It does document the inner shape of 'assignments' (teamId/value with a concrete example), which is genuinely useful, but 'attribute_id' is left completely undefined — no hint of its format or where it comes from.

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

Purpose4/5

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

States a specific verb and resource with scope: 'Set a user attribute value for specific teams.' The 'for teams' scope implicitly separates it from admin_set_user_attribute_for_tenants. However, it does not distinguish itself from the very similar admin_update_user_attribute_for_teams sibling, leaving genuine ambiguity between set and update.

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?

No when-to-use, no when-not-to-use, and no named alternative. With siblings like admin_set_user_attribute_for_tenants and admin_update_user_attribute_for_teams sharing the same verb/resource, the agent gets no guidance on which to pick. Usage is only implied by the tool name.

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

admin_set_user_attribute_for_tenantsAdmin Set User Attribute For TenantsB
Idempotent

Set a user attribute value for specific tenants.

assignments: List of objects, each with 'tenantOrganizationId' (str) and 'value' (str). Example: [{"tenantOrganizationId": "org123", "value": "US"}]

NameRequiredDescriptionDefault
assignmentsYes
attribute_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare the safety profile (readOnlyHint=false, idempotentHint=true, destructiveHint=false, openWorldHint=true), so the bar is lower. The description adds nothing behavioral beyond that — it doesn't say whether existing tenant assignments are overwritten or merged, which is the key semantic question for a 'set' operation.

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 short sentences, front-loaded with the purpose and followed by the parameter shape plus a compact example. No filler and nothing redundant.

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?

An output schema exists so return values need not be explained, and annotations carry the safety profile. Still missing: the 'attribute_id' semantics, the overwrite-vs-merge behavior for existing assignments, and the distinction from the update sibling.

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 0%, so the description must compensate. It documents the 'assignments' array thoroughly with field names and a concrete example, but says nothing about 'attribute_id', leaving one of two required parameters undocumented.

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

Purpose4/5

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

The description states a specific verb and resource ('Set a user attribute value for specific tenants'), which is clearly interpretable on its own. However, it does not distinguish itself from the sibling 'admin_update_user_attribute_for_tenants', leaving the set-vs-update distinction ambiguous for an agent.

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?

There is no when-to-use guidance, no prerequisites, and no mention of the closely related 'admin_update_user_attribute_for_tenants' or 'admin_get_user_attribute_tenants' siblings. The agent must infer when this is the correct tool versus updating an existing tenant assignment.

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

admin_set_user_attribute_for_usersAdmin Set User Attribute For UsersC
Idempotent

Set a user attribute value for specific users.

assignments: List of objects, each with 'userId' (str) and 'value' (str). Example: [{"userId": "abc123", "value": "US"}]

NameRequiredDescriptionDefault
assignmentsYes
attribute_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds nothing behavioral beyond that: it never says whether existing assignments are overwritten, what happens to users omitted from the list, or what permissions are required for this admin operation.

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?

Front-loaded verb+resource followed by the only useful non-schema detail. The example is compact and earns its place; there is no filler.

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?

Output schema exists so return values need no explanation, but for a privileged mutation the description omits attribute_id semantics, overwrite behavior, and sibling disambiguation — meaningful gaps for a 2-parameter admin write 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 0%, and the description compensates well for `assignments` by giving the object shape and a concrete example, which the schema itself leaves as an opaque additionalProperties object. However, `attribute_id` — a required parameter — is never explained (format, or where to obtain it via admin_list_user_attributes), leaving half the surface undocumented.

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

Purpose4/5

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

Specific verb+resource ('Set a user attribute value') with the 'for specific users' scope, which implicitly distinguishes it from the for_teams and for_tenants variants. It does not, however, explain how it differs from the near-identical sibling admin_update_user_attribute_for_users.

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?

No guidance on when to use this versus admin_update_user_attribute_for_users, admin_set_user_attribute_for_teams, or admin_delete_user_attribute_for_user. The agent must infer scope selection purely from the tool name.

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

admin_update_api_connectorAdmin Update Api ConnectorC

Update an API connector.

body may set name, description, params, config and authId.

NameRequiredDescriptionDefault
bodyYes
connector_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already state readOnlyHint=false, destructiveHint=false, openWorldHint=true, so the safety profile is partly covered. The description adds no behavioral context beyond that: it does not say whether this is a partial update (PATCH) or a full replacement (PUT), whether omitted fields are cleared, or what permissions are required — significant gaps for a mutation tool with a free-form body.

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?

Two short sentences, front-loaded with the action and followed by the field list. No wasted text, though the body-field sentence is a bare enumeration rather than structured guidance.

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

Completeness2/5

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

An output schema exists so return values need not be described, but for a mutation with a nested free-form body and zero schema documentation, the description should cover partial-vs-full update semantics and the shape of params/config. It does not, leaving the agent under-informed for a write operation.

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 0% and the body is an untyped free-form object, so the description carries real weight by naming the settable fields (name, description, params, config, authId). However it gives no types, formats, or nested structure for params/config, and does not explain connector_id.

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

Purpose4/5

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

States a specific verb+resource ("Update an API connector") that is unambiguous against siblings like admin_get_api_connector, admin_create_api_connector, and admin_delete_api_connector. It does not explicitly route the agent to those siblings or state scope, but the purpose itself is clear.

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?

No guidance on when to use this versus admin_create_api_connector or admin_get_api_connector, and no mention of prerequisites such as needing an existing connector_id or an API credential for authId. The agent must infer all of this.

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

admin_update_api_credentialAdmin Update Api CredentialB

Update an API credential.

body may set name, description, allowlist and credential.

NameRequiredDescriptionDefault
bodyYes
credential_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior3/5

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

The annotations already declare that the tool is a non-read-only, non-destructive, open-world mutation. The description adds that the body may set name, description, allowlist, and credential, but it does not explain partial-update semantics, whether omitted fields are preserved, or whether changing the credential invalidates existing secrets.

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 short and front-loads the core action. The second sentence is slightly fragmentary but still efficiently communicates the allowed body fields without unnecessary verbosity.

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

Completeness2/5

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

This is a mutation tool with a free-form nested body and no schema descriptions, so the description needs to carry more semantic weight. It lists body fields but leaves key update semantics, field formats, and credential_id behavior unexplained.

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 0%, and the body is an unconstrained nested object, so the schema provides little semantic help. The description partially compensates by naming four fields allowed in the body, but it does not explain credential_id, the allowlist format, or the expected shape of the credential field.

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

Purpose4/5

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

The description uses a clear verb and resource: 'Update an API credential.' This distinguishes it from create/get/delete credential siblings by name, but it does not explicitly differentiate its behavior from related admin update tools such as admin_update_api_connector.

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?

There is no explicit guidance on when to use this tool versus alternatives, nor any stated prerequisites or exclusions. The only usage information is the implied fact that it updates an existing API credential.

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

admin_update_deploymentAdmin Update DeploymentB

Update a deployment policy.

body may set name, nameInTenant, sourceSwapPolicies, copyInputTableData and useDependenciesWorkspace.

NameRequiredDescriptionDefault
bodyYes
policy_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds the useful hint 'body may set …', implying a partial update rather than a full replace, but it never confirms that unmentioned fields are preserved, nor does it mention required permissions or side effects on tenants already attached to the policy.

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?

Two sentences, front-loaded with the action, with the field enumeration second. Efficient, though the comma-run of camelCase field names without grouping or types reads as a dump rather than structured guidance.

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?

An output schema exists, so return values need not be explained. Still, for a mutation tool with a nested free-form body and a sibling create/archive pair, the definition omits update semantics (merge vs replace), admin prerequisites, and what 'deployment policy' governs — leaving gaps an agent must guess at.

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 0% and body is a free-form object with additionalProperties=true, so the description carries real weight by naming the settable body fields (name, nameInTenant, sourceSwapPolicies, copyInputTableData, useDependenciesWorkspace). However it gives no types or structure for sourceSwapPolicies (a nested list), and policy_id is left entirely undocumented.

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

Purpose4/5

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

States a specific verb and resource: 'Update a deployment policy.' An agent can distinguish it from admin_create_deployment, admin_get_deployment and admin_archive_deployment on verb alone. It stops short of explicitly contrasting with those siblings, but the purpose is unambiguous.

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?

There is no statement of when to reach for this versus admin_create_deployment or admin_archive_deployment, no prerequisites (admin scope, policy must exist and be unarchived), and no exclusions. Usage is only inferable from the verb 'Update'.

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

admin_update_memberAdmin Update MemberC

Update member properties (firstName, lastName, memberType, isActive, etc.).

NameRequiredDescriptionDefault
bodyYes
member_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, openWorldHint=true, which sets the safety bar low, but the description adds no behavioral context beyond the field list. It does not say whether this is a partial update (are omitted fields preserved?), whether it requires elevated admin permissions, or what happens to a member's other attributes. For a mutation tool with a freeform body, that is a real gap.

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

Conciseness4/5

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

A single compact sentence with the verb and editable fields front-loaded and no filler. It is arguably over-brief rather than padded, which is a completeness issue rather than a structure one.

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

Completeness2/5

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

An output schema exists, so return values need not be explained. But for a mutation endpoint with an undocumented freeform body, the description omits update semantics (partial vs. full replace), which fields are actually valid, and the privilege required — leaving an agent unable to call it confidently.

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 0% and 'body' is an untyped object with additionalProperties, so the description is the only source of field names; naming firstName, lastName, memberType and isActive is genuinely additive. However, the trailing 'etc.' leaves the full set of accepted properties undefined, and member_id is not explained, so it only partially compensates for the coverage gap.

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

Purpose4/5

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

States a specific verb and resource ('Update member properties') and enumerates concrete mutable fields (firstName, lastName, memberType, isActive), so an agent knows this mutates an existing member. It does not explicitly distinguish itself from adjacent siblings like admin_deactivate_member or admin_change_member_email, so it falls short of full sibling differentiation.

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?

There is no when-to-use guidance, no mention of prerequisites (admin scope), and no pointer to alternatives such as admin_deactivate_member for toggling active state or admin_update_team_members for team changes. The reader must infer usage entirely from the name.

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

admin_update_org_settingAdmin Update Org SettingA

Update organization setting value.

Mutating operation. Requires confirm=True. setting_name: One of aiChatHistory, auditLogging, bulkCopy, comments, csvUpload, emailBranding, licenseUpgradeRequests, publicEmbeds, sampleConnections, timezone. setting_value: Dict containing setting fields to update.

NameRequiredDescriptionDefault
confirmNo
setting_nameYes
setting_valueYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior4/5

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

Annotations only declare readOnlyHint=false, openWorldHint=true, destructiveHint=false. The description adds substantive context beyond that: it explicitly flags this as a mutating operation and states the non-obvious confirm=True requirement the agent must satisfy. It stops short of describing side effects on omitted fields or required permissions.

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?

Front-loaded with the core action and the mutating/confirm warnings, followed by compact per-parameter notes. No filler sentences, though the enum list is presented as a run-on rather than a structured list.

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?

An output schema exists, so return values need no explanation. The description covers the mutation semantics, the confirm gate, and the allowed setting names. It is nearly complete for calling the tool, missing only merge-vs-replace semantics for omitted fields and any admin-role/permission notes.

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 0% and there are no enums in the schema, so the schema alone gives the agent no idea what setting_name accepts. The description compensates by enumerating all ten valid setting_name values and explaining that setting_value is a dict of fields to update, which is high-value information the schema lacks.

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

Purpose4/5

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

States a specific verb and resource ('Update organization setting value'), which cleanly separates it from the read-only sibling admin_get_org_setting. It does not name that sibling explicitly or differentiate from the other admin write tools (configure_org_ai, reset_org_email_branding), keeping it just short of a 5.

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

Usage Guidelines3/5

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

Usage is implied by 'Mutating operation' and the mandatory confirm=True prerequisite, which tells the agent when this call is valid. However, there is no explicit guidance on when to prefer reading via admin_get_org_setting first, nor any exclusions, so it stays at implied usage.

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

admin_update_teamAdmin Update TeamB

Update a team.

body may set name, description and visibility.

NameRequiredDescriptionDefault
bodyYes
team_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3/5.0
Behavior3/5

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

Annotations already declare this is not read-only, not destructive, and operates in an open-world context. The description adds useful detail about which body fields may be set. However, it does not explain partial-update behavior, permission requirements, or side effects of changing visibility.

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 short sentences with no wasted words. The purpose is front-loaded, and the body fields are stated immediately after.

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

Completeness2/5

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

The tool has an output schema and useful annotations, but it is a mutation tool with a nested body parameter and zero schema description coverage. The description does not explain team_id, partial-update semantics, or body structure, so an agent lacks enough context to call it confidently beyond a basic update.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must carry the burden. It names three possible body fields but says nothing about team_id, the body parameter's structure, or how additionalProperties should be handled. This partially compensates but leaves significant gaps for a nested-object parameter.

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

Purpose4/5

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

The description states a specific verb and resource: 'Update a team.' It also identifies the body fields that can be changed (name, description, visibility), clarifying what kind of update this is. It does not explicitly distinguish the tool from siblings such as admin_update_team_members, so it falls short of a 5.

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

Usage Guidelines2/5

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

There is no guidance on when to use this tool versus alternatives, no prerequisites, and no exclusions. The agent can infer it is for updating team properties, but the definition leaves selection entirely implicit.

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

admin_update_team_membersAdmin Update Team MembersC

Add or remove members from a team. Provide lists of member IDs.

NameRequiredDescriptionDefault
addNo
removeNo
team_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, openWorldHint=true and destructiveHint=false. The description adds the useful semantic that both adding and removing happen in one call via lists, but it does not clarify reversibility of removals, idempotency, or required admin permissions. A 3 reflects modest added value on top of the annotation profile.

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?

Two short sentences with the mutation stated first and the input shape second; nothing is redundant. It is terse rather than padded, though the brevity trades away needed detail rather than earning it.

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

Completeness2/5

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

For a mutation tool with three undocumented parameters and several near-identical siblings, the description is too thin: it omits the identity of the target team, the two-list input contract, permission requirements, and any routing versus the bulk assign/remove siblings. The output schema covers return values, so that omission is acceptable.

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

Parameters2/5

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

Schema description coverage is 0% and there are three parameters, so the description carries the burden. 'Provide lists of member IDs' gestures at the add/remove arrays but never names them, never clarifies that two distinct lists are expected, and never explains that team_id identifies the target team.

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

Purpose4/5

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

States a concrete verb pair and resource: 'Add or remove members from a team.' An agent knows this mutates team membership. However, it does not distinguish itself from siblings that do the same thing (admin_bulk_assign_team_members, admin_bulk_remove_team_members), so the boundary is left to inference.

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?

No when-to-use guidance and no mention of alternatives. The sibling list contains both admin_bulk_assign_team_members and admin_bulk_remove_team_members, which overlap with this tool's add/remove capability, yet the description never says which to choose or when this combined call is preferred.

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

admin_update_tenantAdmin Update TenantB

Update a tenant organization.

body may set tenantOrganizationName and tenantOrganizationSlug.

NameRequiredDescriptionDefault
bodyYes
tenant_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, and openWorldHint=true, so the mutating-but-non-destructive safety profile is conveyed structurally. The description adds the useful detail that body carries the updatable fields, but it does not state whether unspecified fields are preserved or cleared (partial vs. full replace), nor what permissions are required.

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?

Two short sentences, front-loaded with the action and followed by the field detail; no filler. It is arguably under-specified rather than over-long, which the other dimensions already capture.

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?

An output schema exists and annotations cover the safety profile, so return-value and risk explanation are not required. Still, for a mutation tool with a free-form body and 0% schema coverage, the description leaves out partial-update semantics and the identifier parameter, which an agent needs to call it confidently.

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 0% and the body is a free-form nested object, so the description carries real weight here — it names the two meaningful body keys (tenantOrganizationName, tenantOrganizationSlug). However, tenant_id is never explained, and it is ambiguous whether those two keys are the exhaustive allowed set or just examples, given additionalProperties=true.

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

Purpose4/5

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

The description uses a specific verb and resource ("Update a tenant organization"), which cleanly separates it from admin_create_tenant, admin_get_tenant, and admin_delete_tenant. It does not name those siblings explicitly, but the resource and mutation type make the distinction obvious.

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?

There is no guidance on when to use this tool versus alternatives such as admin_update_team or the broader org/tenant admin tools, and no stated prerequisites (admin scope, tenant existence). The agent must infer usage purely from the tool name.

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

admin_update_translationAdmin Update TranslationC

Replace the organization translation file for a language code.

body requires translations.

NameRequiredDescriptionDefault
lngYes
bodyYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

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

Annotations declare readOnlyHint=false, destructiveHint=false, openWorldHint=true, so the description needn't restate safety. It does add one piece of real behavioral information by saying 'Replace' (whole-file overwrite rather than a partial merge), but it never says whether omitted translation keys are removed, whether this requires org-admin rights, or how the operation scales. The 'Replace' semantics also sit in mild tension with destructiveHint=false.

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?

Two short sentences with no filler and the core action front-loaded. The second sentence is a terse fragment ('body requires translations.') that reads awkwardly but is not padded.

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

Completeness2/5

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

An output schema exists, so return-value explanation is not required. However, for an admin mutation taking an opaque, unconstrained nested object with 0% schema description coverage, the description leaves the agent without the payload structure, key-removal semantics, or permission requirements it needs to call this safely.

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 0%, so the description must carry the load. It loosely maps both parameters — 'language code' for lng and 'body requires translations' for body — but gives no shape or example for the nested translations object, which is the hardest part of the call.

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

Purpose4/5

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

States a specific verb and resource: 'Replace the organization translation file for a language code.' The word 'replace' plus 'organization translation file' distinguishes it reasonably from create/get/delete siblings and from the variant-scoped tools, though the distinction versus admin_update_translation_variant is left implicit.

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?

No guidance on when to use this versus admin_create_translation, admin_update_translation_variant, or admin_get_translation, and no statement of prerequisites such as admin permission. The agent must infer usage from the name alone.

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

admin_update_translation_variantAdmin Update Translation VariantB

Replace the organization translation file for a language code and variant.

body requires translations.

NameRequiredDescriptionDefault
lngYes
bodyYes
variantYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=false, and the description adds genuinely useful behavioral context by making clear this is a full overwrite rather than a merge ("Replace ... file"). However there is unaddressed tension: a wholesale replace silently discards the existing translations while destructiveHint=false, and the description says nothing about required permissions, reversibility, or what happens to keys omitted from the body.

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?

Two short sentences with the core operation front-loaded and no filler. The follow-up sentence fragment is efficient, though its clipped grammar ("body requires translations.") makes it slightly harder to parse than it needs to be.

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?

An output schema exists, so return values need no explanation, and the description establishes org scope and replacement semantics. What is still missing is the shape of the required nested body object and any precondition about the variant existing — the two things most likely to cause a malformed call.

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

Parameters2/5

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

Schema description coverage is 0%, so the description carries the full burden. It does gloss each of the three required parameters ("language code" for lng, "variant", "body requires translations"), but adds almost no semantics: no format or example for lng, no valid-value hints for variant, and nothing about the expected shape of the free-form body object beyond the word "translations".

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

Purpose4/5

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

The description pairs a specific verb ("Replace") with a specific resource ("organization translation file") and the two scoping keys (language code, variant), which is enough for an agent to tell it apart from admin_get_translation_variant or admin_delete_translation_variant. It stops short of explicitly naming what separates it from admin_update_translation (base vs. variant), so not a 5.

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

Usage Guidelines2/5

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

It implies the operation overwrites via "Replace" but gives no when-to-use guidance, no alternative named (e.g., use admin_update_translation for the base translation, admin_create_translation when the variant does not yet exist), and no statement of whether the variant must already exist. The agent must infer all routing decisions.

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

admin_update_user_attributeAdmin Update User AttributeB

Update a user attribute's definition.

body may set userAttributeName, description and defaultValue.

NameRequiredDescriptionDefault
bodyYes
attribute_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3/5.0
Behavior3/5

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

Annotations already establish that this is a non-read-only, open-world, non-destructive mutation. The description adds very little beyond that: it names three body fields that may be set, but says nothing about whether this is a partial or full replacement, what happens to existing assignments, or any auth or side-effect details.

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 short sentences with zero filler, and the core operation is front-loaded. The second sentence efficiently supplements the body parameter.

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

Completeness2/5

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

For an admin mutation with a free-form nested body and many closely related siblings, the description is too sparse. It leaves the agent without essential context about scope, required identifier semantics, update replace-vs-merge behavior, or the effect on existing users and teams.

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

Parameters2/5

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

Schema description coverage is 0%, and the body is an untyped free-form object. The description partially compensates by naming userAttributeName, description, and defaultValue, but it omits the required attribute_id entirely and does not explain types, constraints, or whether other body fields are accepted.

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

Purpose4/5

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

States a specific verb and resource: updating a user attribute's definition. It does not, however, distinguish this tool from closely named siblings like admin_update_user_attribute_for_users, admin_update_user_attribute_for_teams, or admin_create_user_attribute.

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 gives no guidance on when to use this tool versus the numerous scoped update tools or the create/delete variants. It merely restates the operation without any context or exclusions.

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

admin_update_user_attribute_for_teamsAdmin Update User Attribute For TeamsA
Destructive

Revoke a user attribute assignment for specific teams. Requires confirm=True.

team_ids: List of team IDs whose attribute assignments should be removed. Example: ["team-uuid-1", "team-uuid-2"]

NameRequiredDescriptionDefault
confirmNo
team_idsYes
attribute_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior4/5

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

Annotations declare destructiveHint=true and readOnlyHint=false, and the description usefully adds the 'Requires confirm=True' gate, which is not conveyed by the schema (confirm only has a default of false with no description). This extra behavioral context elevates it above the annotation baseline, though reversibility and side effects are still unstated.

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?

Short and front-loaded, with the essential action and confirm requirement in the first sentence and the team_ids detail following. No filler, though the parameter gloss duplicates part of the title's implied scope.

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

Completeness3/5

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

For a destructive mutation tool with an output schema (so returns need not be explained), the description covers the action, the confirm gate, and one parameter, but omits attribute_id semantics and any warning about the destructive, irreversible nature of revoking assignments. Adequate but with clear 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 0%, so the description must compensate. It explains team_ids well (adding an example array) and notes confirm=True is required, but attribute_id is left entirely unexplained despite being a required parameter, so the gap is only partially filled.

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

Purpose4/5

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

States a specific verb ('Revoke') and resource ('user attribute assignment for specific teams'), so the core action is clear. However, the tool name says 'update' while the description says 'revoke', and nearby siblings (admin_set_user_attribute_for_teams, admin_delete_user_attribute_for_team) are not distinguished, leaving some ambiguity about which mutation this actually performs.

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 revoke framing implies when to use it (removing team-level attribute assignments), but no explicit when/when-not or alternatives are given. With destroy-style siblings like admin_delete_user_attribute_for_team present, the agent gets no guidance on choosing between them.

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

admin_update_user_attribute_for_tenantsAdmin Update User Attribute For TenantsB
Destructive

Revoke a user attribute assignment for specific tenants. Requires confirm=True.

tenant_org_ids: List of tenant organization IDs whose attribute assignments should be removed. Example: ["org-uuid-1", "org-uuid-2"]

NameRequiredDescriptionDefault
confirmNo
attribute_idYes
tenant_org_idsYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior4/5

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

Annotations already flag destructiveHint=true and openWorldHint=true, so the safety profile is partly covered. The description adds the important behavioral gate that confirm=True is mandatory, which the schema does not enforce (default false, not required). It still omits reversibility, permission scope, and whether the change is immediate.

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?

Two short sentences, front-loaded with the action and the confirm requirement, followed by a compact per-parameter note. The inline example is slightly verbose but earns its place for an undocumented array parameter.

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?

An output schema exists so return values need no explanation, and the destructive annotation covers risk. Still missing is resolution of the update-vs-revoke discrepancy against the tool name and any note on prerequisites or sibling routing, which matters given the dense admin_* sibling set.

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 0%, so the description carries the burden. It explains tenant_org_ids (IDs whose assignments are removed) with an example and states the confirm requirement, but attribute_id is left entirely unexplained in both schema and description.

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

Purpose3/5

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

The description gives a concrete verb and resource ("Revoke a user attribute assignment for specific tenants"), but it conflicts with the tool name/title, which say "update". Siblings such as admin_set_user_attribute_for_tenants and admin_delete_user_attribute_for_tenant are never mentioned, so an agent must guess whether this overwrites or removes assignments.

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?

It provides a genuine precondition ("Requires confirm=True"), which is useful invocation guidance. However there is no when-to-use versus alternatives guidance — nothing distinguishes it from the set/update/delete variants for tenants and teams.

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

admin_update_user_attribute_for_usersAdmin Update User Attribute For UsersA
Destructive

Revoke a user attribute assignment for specific users. Requires confirm=True.

user_ids: List of user IDs whose attribute assignments should be removed. Example: ["user-uuid-1", "user-uuid-2"]

To assign (not revoke), use admin_set_user_attribute_for_users instead.

NameRequiredDescriptionDefault
confirmNo
user_idsYes
attribute_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare destructive=true and readOnly=false; the description adds the non-obvious operational fact that confirm=True is required, which prevents a silent failure. It stops short of saying whether the revocation is idempotent or what happens to users who lack the assignment.

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?

Front-loads the action and the confirm requirement, then the parameter note, then the alternative tool. Every line earns its place, and the inline example is short enough not to be bloat.

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 an output schema present, return values need no explanation, and the destructive semantics plus confirm gate are covered. The missing attribute_id semantics is the only notable hole for a three-parameter mutation 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 0%, so the description carries the burden: it explains user_ids with a concrete list example and the confirm requirement, which is genuinely useful for the array param. However attribute_id — a required parameter — is never described, leaving one of three params undocumented in both schema and prose.

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

Purpose4/5

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

States a concrete verb+resource ('Revoke a user attribute assignment') and a scope ('for specific users'), which sharpens an otherwise ambiguous name ('update...for_users'). It does not differentiate from the closely-named sibling admin_delete_user_attribute_for_user, which an agent could easily confuse with this one.

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 routes the assign case to admin_set_user_attribute_for_users ('To assign (not revoke), use ... instead') and notes the confirm=True precondition. It offers no guidance against the near-identical delete_user_attribute_for_user / delete_user_attribute_for_team siblings, so selection is not fully disambiguated.

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

datasets_add_connection_grantDatasets Add Connection GrantC
Idempotent

Add a grant to a connection.

grant_type: 'member' or 'team'. permission: 'annotate' (Can Use & Annotate) or 'usage' (Can Use).

NameRequiredDescriptionDefault
grant_typeYes
grantee_idYes
permissionYes
connection_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=true, openWorldHint=true), and the description adds nothing beyond that — no note on permission requirements, side effects, or what happens on repeat/additive grants. Given the annotation coverage, the description carries little additional behavioral weight.

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 definition is short and front-loaded, with the core action first and the enum value explanations second. No filler sentences, though the enum lines are terse fragments rather than fully structured parameter notes.

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?

An output schema exists, so return values need not be described, and annotations cover the mutation safety profile. Still, for a 4-required-parameter mutation with 0% schema coverage, the unexplained connection_id/grantee_id and the absence of any usage or permission guidance leave meaningful 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 0%, so the description must compensate, and it does clarify two of four parameters by giving valid grant_type ('member'/'team') and permission ('annotate'/'usage') values with meanings. However, connection_id and grantee_id — including what form a grantee_id takes — remain completely undocumented.

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

Purpose4/5

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

States a specific verb+resource ('Add a grant to a connection') that an agent can distinguish from the nearby datasets_list_connection_grants and datasets_delete_connection_path_grant. It does not explicitly name a sibling, but the operation is unambiguous.

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?

There is no guidance on when to use this tool versus alternatives (e.g., the workspace/workbook grant tools) or on prerequisites such as required admin permissions. The enum values are explained, but that is parameter semantics, not usage context.

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

datasets_add_connection_path_grantDatasets Add Connection Path GrantA

Add grants to a connection path.

body requires grants: a list of {grantee: {memberId} or {teamId}, permission: 'annotate' | 'usage'}.

NameRequiredDescriptionDefault
bodyYes
connection_path_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already establish that this is a non-read-only, open-world operation with destructiveHint=false. The description adds useful detail about the required grants body and allowed permission values, but does not cover authorization requirements, idempotency, or behavior when grants already exist.

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 compact sentences are front-loaded with the core action and immediately follow with the non-obvious body requirement. There is no filler 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?

With annotations covering the safety profile and an output schema covering return values, the description provides the critical missing nested-body detail needed to invoke the tool. It could be slightly more complete by clarifying connection_path_id or grant conflict behavior, but it is largely sufficient.

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 0%, so the description must carry parameter meaning. It does this well for the complex body parameter by defining the grants list, grantee member/team variants, and permission enum, though it says nothing about connection_path_id.

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

Purpose4/5

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

The description states a specific verb and resource: add grants to a connection path. It is clear enough to distinguish from the connection-level grant sibling by naming 'connection path', though it does not explicitly route between the two.

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?

It explains the required body shape but gives no when-to-use guidance, prerequisites, or comparison to alternatives such as datasets_add_connection_grant. The intended use is implied only by the tool name and first sentence.

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

datasets_bulk_sync_tenant_connectionsDatasets Bulk Sync Tenant ConnectionsA

Sync connections across all tenant organizations.

Lists all tenants, then for each tenant: obtains a tenant-scoped token, lists their connections, and syncs each one. Requires multi-tenant auth (for_tenant method). Uses bounded concurrency.

NOTE: Requires PyJWT and the for_tenant() method (Phase C). Returns an error if token exchange is not available.

NameRequiredDescriptionDefault
dry_runNo

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already declare the safety profile (readOnlyHint=false, destructiveHint=false, openWorldHint=true). The description adds value beyond them: the required auth mechanism, the bounded-concurrency behavior, and the explicit failure mode when token exchange is unavailable. It still doesn't clarify what state 'sync' mutates, but the added behavioral context is substantial.

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?

Purpose is front-loaded, followed by mechanics and a clearly marked NOTE. Every sentence carries information, though the multi-tenant auth requirement is effectively stated twice ('for_tenant method' appears in both the body and the NOTE), which is mild 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?

An output schema exists, so return values need no explanation, and the description covers auth requirements, error behavior, and concurrency. The one meaningful gap is the undocumented dry_run parameter and any sense of what the sync mutates or its scale/rate implications.

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

Parameters2/5

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

The single parameter dry_run has 0% schema description coverage, and the description never mentions it. This matters because dry_run defaults to true, which materially affects whether the operation writes anything, yet the agent gets no explanation of it from either the schema or the prose.

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

Purpose4/5

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

The description gives a specific verb+resource+scope ('Sync connections across all tenant organizations') and unpacks the mechanics (list tenants, per-tenant token, list and sync each connection). It implicitly distinguishes itself from the single-connection sibling via the 'across all tenant organizations' scope, but never names the alternative explicitly.

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?

It states a real prerequisite ('Requires multi-tenant auth (for_tenant method)') and an error condition, which is useful context. However, it gives no explicit guidance on when to choose this bulk operation over datasets_sync_connection, leaving the agent to infer selection from scope alone.

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

datasets_create_connectionDatasets Create ConnectionA

Create a data warehouse connection.

body requires name and details (the warehouse type and its settings) and may set description, poolSizes, timeoutSecs and useFriendlyNames. The details may hold write-only secrets (password, privateKey, privateKeyPassphrase, clientSecret, token, pythonSecrets): pass them only from the user's own input. They are masked wherever Sigma's result or error echoes them.

NameRequiredDescriptionDefault
bodyYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare a non-read-only, non-destructive, open-world write, but the description adds genuine context beyond them: which body fields are required vs optional, that the details object may contain write-only secrets, that secrets must come only from the user's own input, and that they are masked in any echoed result or error. It does not cover failure modes (invalid credentials, duplicate name) or post-creation behavior such as syncing, but the secret-handling disclosure is substantial.

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, all load-bearing: purpose first, then the body composition, then the secret-handling constraint. The phrasing 'body requires name and details...' is slightly telegraphic but not wasteful.

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 single opaque-body mutation tool with an output schema (so return values need not be explained) and annotations covering the safety profile, the description supplies what the schema cannot: field names, optionality, and secret handling. It leaves out authorization prerequisites and failure behavior, which is the main remaining 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 description coverage is 0% and the single body parameter is an opaque additionalProperties object, so the description carries the full burden. It names the required fields (name, details with warehouse type and settings), the optional fields (description, poolSizes, timeoutSecs, useFriendlyNames), and the secret keys inside details, which is a large amount of otherwise-unavailable semantics. It does not enumerate the valid warehouse type values or the per-type settings shape.

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

Purpose4/5

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

The first sentence is a clean verb+resource statement ('Create a data warehouse connection') that clearly marks this as the creation counterpart to datasets_delete_connection, datasets_get_connection and datasets_list_connections. It stops short of explicitly contrasting with those siblings (e.g. when to use datasets_test_connection first), so it is clear but not fully differentiated.

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?

There is no explicit when-to-use guidance, no prerequisites (required permissions/role, whether the connection must be tested or synced afterward), and no mention of alternatives such as datasets_test_connection or datasets_list_connections. Only the implied semantics of 'create' tell the agent when to call it.

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

datasets_create_data_modelDatasets Create Data ModelB

Create a data model from a JSON code representation. Must include name, folderId, schemaVersion, and pages with elements.

NameRequiredDescriptionDefault
specYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnly=false, destructive=false, and openWorld=true, so the lower bar applies. The description adds useful payload-shape context (the spec must contain name, folderId, schemaVersion, and pages with elements), but says nothing about validation failures, permission requirements, or whether the call is idempotent.

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 tight sentences, zero filler, with the action stated first and the payload contract immediately after. Nothing could be removed without losing information.

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?

An output schema exists, so return values need no explanation, and the required top-level spec fields are covered. However, for a nested, free-form JSON payload the description does not explain the shape of pages/elements or what a valid schemaVersion looks like, leaving meaningful gaps for a tool whose only input is an untyped object.

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 0% and the single parameter is an opaque 'object' with additionalProperties=true, so the description does real work by enumerating the required top-level keys (name, folderId, schemaVersion, pages/elements). It stops short of describing element structure or accepted value formats, but it substantially compensates for the empty schema.

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

Purpose4/5

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

States a specific verb and resource ('Create a data model from a JSON code representation'), which is unambiguous on its own. It does not, however, distinguish itself from siblings like datasets_update_data_model, datasets_get_data_model_spec, or workbooks_create_workbook, so an agent gets no routing signal.

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?

There is no when-to-use guidance, no prerequisites, and no mention of alternatives such as datasets_update_data_model for modifying an existing model. The agent is left to infer that this is the creation path from the name alone.

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

datasets_delete_connectionDatasets Delete ConnectionA
Destructive

Delete a connection. Requires confirm=True. Workbooks and data models built on it lose their source.

NameRequiredDescriptionDefault
confirmNo
connection_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the safety bar is lowered. The description adds genuine value beyond that by spelling out the downstream consequence: workbooks and data models built on the connection lose their source. It doesn't cover irreversibility or permissions, which keeps it from a 5.

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

Conciseness5/5

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

Three short sentences, front-loaded with the action, then the prerequisite, then the consequence. Every sentence earns its place with no filler.

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 destructive two-parameter tool with annotations and an output schema, the description covers the essential confirm requirement and the destructive consequence. It stops short of stating permanence or permission requirements, but is otherwise complete enough to call 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 description coverage is 0%, so the description must compensate. It does so for the critical parameter by requiring confirm=True, which the schema only shows as a boolean defaulting to false. connection_id is left unexplained, but its name is reasonably self-evident.

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

Purpose4/5

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

The description states a clear verb+resource ('Delete a connection') and adds scope via the consequence sentence, which helps distinguish it from sibling delete operations like datasets_delete_connection_grant. The opening sentence alone is close to restating the name, but the follow-up adds real differentiating scope.

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?

It states a concrete usage prerequisite ('Requires confirm=True'), which is useful since the schema default is false. However, it doesn't say when to prefer this over alternatives (e.g., datasets_sync_connection, grants) or note exclusions, leaving usage largely implied.

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

datasets_delete_connection_grantDatasets Delete Connection GrantA
Destructive

Delete a grant from a connection. Requires confirm=True. Retrieve grant IDs with datasets_list_connection_grants.

NameRequiredDescriptionDefault
confirmNo
grant_idYes
connection_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the description doesn't need to argue that this is a write. It adds genuinely non-redundant context: the confirm=True gate, which matters because confirm defaults to false and a caller that omits it will fail. It does not state irreversibility or what confirm actually guards against, keeping it below a 5.

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

Conciseness5/5

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

Two short sentences, no filler. The action leads, and the prerequisite plus the dependency pointer follow immediately.

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 three-parameter destructive mutation with an output schema already present, the essentials are covered: what it deletes, the confirm gate, and where the ID comes from. A note on whether the deletion is permanent or whether failures return errors versus silent no-ops would make it 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 0%, so the description carries the burden. It explains the confirm parameter's required value and implies where grant_id comes from, but says nothing about connection_id semantics or the format of grant_id, leaving two of three parameters undocumented.

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

Purpose4/5

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

The description gives a specific verb and resource ('Delete a grant from a connection'), which separates it from the many list/get siblings and from datasets_delete_connection_path_grant by naming the grant scope explicitly. It does not call out that sibling by name, so differentiation is implicit rather than guaranteed.

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?

'Requires confirm=True' states a hard prerequisite, and 'Retrieve grant IDs with datasets_list_connection_grants' names the sibling that produces the required identifier. That is clear when-to-use and how-to-prepare guidance; only an explicit exclusion (e.g. use delete_connection_path_grant for path grants) is missing.

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

datasets_delete_connection_path_grantDatasets Delete Connection Path GrantB
Destructive

Delete a grant from a connection path. DESTRUCTIVE. Requires confirm=True.

NameRequiredDescriptionDefault
confirmNo
grant_idYes
connection_path_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true, readOnlyHint=false, and openWorldHint=true, so 'DESTRUCTIVE' is a restatement. The genuinely new information is that confirm=True is required, an operational gate the schema does not describe (0% coverage, default false). However, it says nothing about irreversibility, permissions, or what is affected.

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 short sentences with zero filler, and the destructive warning is front-loaded alongside the hard requirement. Nothing wasted.

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?

An output schema exists, so return values need not be explained. For a destructive mutation the description covers the confirm gate but omits irreversibility, required permissions, and any indication of what a 'connection path grant' affects, leaving meaningful 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 0%, so the description must carry the load. It documents the confirm parameter's requirement, but grant_id and connection_path_id — the two required identifiers — receive no explanation at all, leaving half the parameter set undocumented.

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

Purpose4/5

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

States a specific verb + resource ('Delete a grant from a connection path'), which cleanly distinguishes it from the sibling datasets_add_connection_grant. It does not name siblings explicitly, but the action and target are unambiguous.

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?

There is no when-to-use or when-not-to-use guidance, no prerequisites beyond the confirm flag, and no mention of alternatives such as listing grants first. The agent must infer the calling context entirely.

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

datasets_get_connectionDatasets Get ConnectionC
Read-only

Get details for a specific connection.

NameRequiredDescriptionDefault
connection_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.6/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered structurally. The description adds nothing beyond that: no note on whether the connection must exist, what happens on a missing/inaccessible ID, or any auth/scope requirement.

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?

One short, front-loaded sentence with no filler or redundancy. It is efficiently sized, though the brevity borders on under-specification rather than true economy.

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?

An output schema exists, so return-value explanation is not required, and annotations cover the safety profile for this simple single-parameter read. What remains missing is any parameter meaning and any usage context, leaving the definition only minimally viable for a one-parameter lookup tool.

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

Parameters2/5

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

There is a single parameter, connection_id, with 0% schema description coverage, so the schema does not document it at all. The description does not compensate with any format, source, or constraint information (e.g., where to obtain the ID or whether it is a UUID).

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

Purpose3/5

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

The description gives a clear verb ('Get') and resource ('details for a specific connection'), so the basic operation is identifiable. However, 'details' is vague about what is actually returned, and nothing distinguishes it from close siblings such as datasets_list_connections, datasets_sync_connection, or datasets_test_connection.

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?

There is no when-to-use guidance and no mention of alternatives. An agent cannot tell from the description whether this is the right call versus listing connections or testing a connection, nor are any prerequisites (valid connection_id, permissions) stated.

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

datasets_get_data_modelDatasets Get Data ModelC
Read-only

Get data model metadata.

NameRequiredDescriptionDefault
data_model_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered by structured data. The description adds nothing beyond that baseline — no mention of what is returned, whether the data model must exist, or any permissions required.

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

Conciseness4/5

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

A single short, front-loaded sentence with no waste. It is concise, but the brevity reflects under-specification rather than well-edited density.

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

Completeness2/5

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

An output schema exists so return values need not be described, but the definition still omits the parameter's meaning and any differentiation from the many sibling datasets_* tools. For a lookup tool in a dense family, this is not enough for reliable selection.

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

Parameters2/5

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

Schema description coverage is 0% for the single required parameter data_model_id, and the description does not compensate at all — it never states what identifier format is expected (UUID, name, or path) or where to obtain it. For a one-required-param tool this leaves the only input undocumented in both places.

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

Purpose3/5

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

States a verb+resource ("Get data model metadata"), but "metadata" is vague and does not distinguish this tool from the sibling datasets_get_data_model_spec, which an agent could easily confuse it with. Without opening schemas, the agent cannot tell what class of metadata (spec, elements, columns) is returned.

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 gives no when-to-use guidance, no prerequisites, and never names an alternative such as datasets_get_data_model_spec or datasets_list_data_models. The agent must infer from the name alone when this is the right call.

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

datasets_get_data_model_materializationDatasets Get Data Model MaterializationC
Read-only

Get the status of a data model materialization job.

NameRequiredDescriptionDefault
data_model_idYes
materialization_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior3/5

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

The annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds only that the operation retrieves status; it does not mention polling behavior, permissions, or response characteristics, but with annotations present the bar is lower.

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 front-loaded sentence with no filler. It directly states the operation without unnecessary repetition or tangential detail.

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 is simple and has an output schema, so return-value details need not be in the description. However, the combination of zero parameter description coverage and no usage guidance leaves meaningful gaps for an agent trying to invoke it correctly.

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

Parameters1/5

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

Schema description coverage is 0%, and the description provides no information about the two required parameters, data_model_id and materialization_id. It does not compensate for the schema's lack of descriptions, leaving the agent to infer parameter meaning solely from names.

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

Purpose4/5

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

The description uses a specific verb ('Get') and resource ('status of a data model materialization job'), making the operation clear. It does not explicitly differentiate itself from related siblings such as datasets_materialize_data_model, but the purpose is still understandable.

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?

There is no explicit guidance about when to use this tool, when not to use it, or which sibling tools are alternatives. The only implied usage is checking a materialization job's status, likely after starting one, but that is left to inference.

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

datasets_get_data_model_specDatasets Get Data Model SpecB
Read-only

Get the full code representation (JSON spec) of a data model — tables, columns, metrics, relationships.

NameRequiredDescriptionDefault
data_model_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds that the result is a full JSON code representation containing tables, columns, metrics and relationships, which is somewhat useful, but it omits auth requirements, sizing concerns, or any note about the open-world access implied by 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?

A single front-loaded sentence with no filler: verb, resource, format, and payload contents in order of importance. Every clause 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?

Because an output schema exists, the description need not explain return values, and the annotations cover safety. What remains missing is disambiguation from the sibling read tools and any information about the required id, which matters for a tool among many similarly named dataset getters.

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

Parameters2/5

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

There is exactly one parameter, data_model_id, and schema description coverage is 0%, so the schema only supplies the name and string type. The description does not define what a data model id is, where to obtain it, or its format, leaving the single parameter's semantics under-specified.

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

Purpose4/5

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

The description gives a specific verb ('Get') and resource ('full code representation (JSON spec) of a data model') and enumerates the contents (tables, columns, metrics, relationships). This partially distinguishes it from sibling datasets_get_data_model and datasets_list_data_model_elements, though it never explicitly contrasts the 'spec' retrieval with those alternatives.

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?

There is no statement of when to use this tool versus the numerous sibling getters (datasets_get_data_model, datasets_list_data_model_elements, datasets_list_data_model_columns). Usage is only implied by the returned payload, with no conditions, prerequisites, or exclusions.

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

datasets_list_all_data_modelsDatasets List All Data ModelsA
Read-only

List ALL data models in the organization, automatically following pagination.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior4/5

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

Annotations already cover safety (readOnlyHint=true, destructiveHint=false, openWorldHint=true). The description adds useful behavioral detail beyond annotations: it automatically follows pagination and operates at organization scope, which an agent would not learn from the structured fields alone.

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, front-loaded sentence with zero waste. It puts the resource and scope first, then the pagination behavior, which is ideal for quick scanning.

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 low complexity (no parameters, output schema present, annotations covering safety), the description is complete enough. It states scope and pagination behavior, and the output schema handles return values.

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 tool takes zero parameters, so there are no parameter semantics to document. Baseline 4 is appropriate; the description does not need to compensate for missing schema detail.

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

Purpose4/5

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

States a specific verb+resource ('List ALL data models') and organization scope, plus automatic pagination. It implicitly distinguishes itself from the sibling `datasets_list_data_models` via 'ALL', but does not explicitly name or contrast with that alternative.

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 word 'ALL' and 'automatically following pagination' imply usage when a complete org-wide list is needed, but there is no explicit when-to-use, when-not-to-use, or named alternative (e.g., `datasets_list_data_models`). Guidance is only implied.

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

datasets_list_columns_for_tableDatasets List Columns For TableA
Read-only

List columns for a warehouse table by its tableId.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page and nextPageToken null, since every page is read.

NameRequiredDescriptionDefault
table_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already establish readOnly/openWorld/non-destructive, so the bar is lower; the description still adds real behavior beyond them: it discloses that pagination is followed automatically to the last page and that nextPageToken is always null because every page is read. It does not cover rate limits, auth requirements, or error behavior for an invalid tableId.

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?

Two short sentences, front-loaded with the core action, with pagination disclosure second. The reStructuredText ``entries`` markup is noise an agent doesn't need, but overall there is no filler.

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 single-parameter read tool with an output schema available, the description covers the key non-obvious behavior (auto-pagination flattening results). Return shape need not be restated because an output schema exists; only the meaning of tableId's source is left unaddressed.

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?

Only one parameter (table_id) with 0% schema description coverage, so the description carries the burden of clarifying it. It does name 'tableId' but adds no format, source, or example for the value, so it only marginally compensates for the coverage gap.

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

Purpose4/5

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

Specific verb+resource: 'List columns for a warehouse table by its tableId.' This separates it from the many other list_* siblings by naming the resource (warehouse table columns). It never names the closest alternative (e.g. datasets_list_data_model_columns or elements_get_element_columns), so full sibling differentiation is left to inference.

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 it (you have a tableId and want its columns) but gives no explicit when/when-not guidance and no prerequisites such as required scopes or how a tableId is obtained. No alternative tool is mentioned despite several column-listing siblings existing.

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

datasets_list_connection_grantsDatasets List Connection GrantsA
Read-only

List permission grants on a connection.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
connection_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already cover read-only/non-destructive/open-world, but the description adds genuinely non-obvious behavior: it auto-paginates to the last page and therefore returns everything in one call. It also states that nextPage is null and hasMore is false, which prevents the agent from attempting manual pagination. It says nothing about volume or rate-limit implications of draining all pages.

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 purpose is front-loaded in one short sentence, followed by a compact but dense pagination note. No filler, though the second sentence packs several return-shape keys that could be trimmed given an output schema exists.

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-only list tool with an output schema, the definition covers purpose and the key non-obvious behavior (full auto-pagination). The remaining gap is the undocumented connection_id semantics, which matters for correct invocation.

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

Parameters2/5

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

The single parameter connection_id has 0% schema description coverage, so the description must carry the burden, yet it only says 'on a connection'. It does not state the expected format (ID vs name/slug) or that IDs come from datasets_list_connections.

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

Purpose4/5

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

States a specific verb and resource ('List permission grants on a connection'), so the agent knows exactly what it retrieves. It does not differentiate from the close sibling datasets_list_connection_path_grants or note that add/delete grant tools exist, leaving scope boundaries to inference.

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?

Usage is only implied by the purpose statement; there is no explicit when-to-use, when-not-to-use, or pointer to datasets_list_connection_path_grants for path-level grants. An agent can infer the call, but the connection-vs-path-grant distinction is left unresolved.

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

datasets_list_connection_path_grantsDatasets List Connection Path GrantsA
Read-only

List grants on a connection path (database, schema or table).

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
connection_path_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already declare readOnly/openWorld/non-destructive, so the safety profile is covered. The description adds genuinely new behavior: it auto-follows Sigma's pagination to the last page and returns concatenated ``entries`` with a null ``nextPage``. That tells the agent the call may be expensive on large paths and that no manual paging loop is needed — real value beyond structured fields.

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?

Two sentences, front-loaded with the purpose before the pagination detail. The second sentence is dense with nested parentheses and reStructuredText backticks, which costs some readability, but nothing is wasted.

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?

An output schema exists, so explaining the return keys is somewhat redundant, though it does clarify that results are aggregated across pages. For a single-parameter read tool the definition is largely sufficient; the notable gap is that it never states whether elevated permissions are needed to list grants on a connection path.

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?

Only one parameter and schema description coverage is 0%, so the description should compensate. The parenthetical "(database, schema or table)" does explain what a connection path can represent, which gives the agent some idea of the id's semantics, but it never says how to obtain a connection_path_id (e.g., via datasets_list_connection_paths) or what form it takes.

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

Purpose4/5

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

States a specific verb and resource ("List grants on a connection path") and clarifies the resource with a parenthetical covering database, schema or table. It distinguishes itself from the plural-sibling ambiguity of datasets_list_connection_grants only implicitly — it never explicitly says how it differs from connection-level grants — but the resource is still unambiguous.

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?

No guidance on when to choose this over datasets_list_connection_grants, datasets_list_connection_paths, or datasets_add_connection_path_grant, all of which sit right next to it. The agent must infer from the name alone whether it wants path-scoped or connection-scoped grants.

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

datasets_list_connection_pathsDatasets List Connection PathsA
Read-only

List connection paths (databases, schemas and tables) across all connections.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
resultYes

TDQS

A4.4/5.0
Behavior5/5

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

Goes well beyond readOnly/openWorld annotations by disclosing that the tool auto-paginates to the last page and explaining the aggregation semantics of the response keys: entries merged from every page, total only when Sigma sends it, nextPage null and hasMore false. That pagination-absorption behavior is exactly the kind of trait an agent cannot get from annotations or the output schema.

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?

Two sentences, front-loaded with the purpose and wasting no words. The second sentence is dense and slightly convoluted with nested parentheticals, costing it a point against a perfect score.

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?

A zero-parameter list tool with annotations and an output schema needs to convey scope, pagination handling, and what the caller receives; the description covers all three, including the aggregation of entries across pages. Nothing an agent needs in order to call it correctly is absent.

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 tool takes zero parameters, so there is nothing to disambiguate; the baseline for 0 params is 4. No parameter description is needed or missing.

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 (list) plus the resource (connection paths) and immediately defines what a path is (databases, schemas and tables) and the scope ('across all connections'). That scope line separates it from datasets_lookup_connection_path and datasets_list_connections without needing 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 Guidelines3/5

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

The scope phrase 'across all connections' implies when this is the right tool, but it never states when to prefer datasets_lookup_connection_path or datasets_list_connections instead, and gives no prerequisites or exclusions. Usage is inferable rather than explicit.

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

datasets_list_connectionsDatasets List ConnectionsA
Read-only

List all connections in the Sigma organization. Pass summary_only=True for concise token-efficient response.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
summary_onlyNo

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, non-destructive, openWorld), so the description earns credit for disclosing the auto-pagination behavior: it walks to the last page and returns entries from every page, with nextPage null / hasMore false. That is a genuine behavioral trait an agent needs to know, though it omits any note on result size caps or auth/permission scoping.

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 purpose is front-loaded in the first sentence and the summary_only tip follows immediately. The pagination paragraph is a bit verbose with its backticked field names, but every sentence conveys real information; nothing is padding.

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 an output schema present, the return-shape discussion is partly redundant but harmless. For a one-parameter read-only list tool, the description covers purpose, the key option, and pagination semantics; the only real gap is whether results are scoped to the caller's permissions or include all org connections.

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 0% for the single optional boolean, so the description carries the burden and does explain that summary_only=True yields a concise, token-efficient response. It stops short of saying what the summary form omits versus the full form, leaving the tradeoff ambiguous.

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

Purpose4/5

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

States a specific verb and resource — 'List all connections in the Sigma organization' — which clearly separates it from datasets_get_connection (single) and datasets_list_connection_grants. It does not explicitly name a sibling as an alternative, but the 'all' scope makes the distinction inferable.

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 gives no explicit when-to-use/when-not-to-use guidance, no prerequisites, and no named alternative (e.g., datasets_get_connection for a single record). The only actionable guidance is the summary_only tip, which is parameter-level rather than situational.

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

datasets_list_data_model_columnsDatasets List Data Model ColumnsB
Read-only

List all columns across all elements in a data model.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
data_model_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior4/5

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

Annotations already establish that this is a safe read-only operation, and the description adds meaningful behavior beyond that: it follows pagination to the last page and explains how entries, total, nextPage, and hasMore are handled. It stops short of covering authorization or error behavior, but the pagination detail is genuinely useful.

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 operation and then explains pagination behavior without excessive repetition. The second sentence is long and somewhat technical, but it contains useful information rather than filler.

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 is simple and has an output schema, so return values and the read-only safety profile are adequately covered elsewhere. However, the only input parameter is undocumented, which is a notable completeness gap for an agent trying to call the tool correctly.

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

Parameters2/5

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

There is one required parameter, data_model_id, and the schema provides 0% description coverage, so the description must carry the burden. It never explains what data_model_id is, what format it uses, or where to obtain it; the phrase 'in a data model' only implies the parameter exists.

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

Purpose4/5

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

The description states a specific verb and resource: it lists all columns across all elements in a data model. That scope is clear enough to distinguish it from table-level column listing, though it does not explicitly name a sibling alternative.

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 intended use is implied by the phrase 'across all elements in a data model,' but there is no explicit when-to-use guidance, no exclusions, and no routing to alternatives such as listing columns for a table or getting columns for a single element.

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

datasets_list_data_model_elementsDatasets List Data Model ElementsB
Read-only

List elements in a data model.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
data_model_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true/openWorldHint=true, so the safety profile is covered. The description does add real behavioral detail beyond that — it auto-follows pagination to the last page and reports nextPage as null/hasMore as false — but it says nothing about page size, rate limits, or what happens on partial failure mid-pagination.

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 purpose is front-loaded in the first sentence and the pagination detail follows without padding. The second sentence is dense with internal jargon ('Sigma's page', 'Sigma's value') but no sentence is redundant.

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?

An output schema exists and the description still clarifies the aggregated return shape, which is welcome. However, for a list tool nested among many similar dataset tools, the missing selection guidance and absent parameter explanation leave gaps an agent would need to close by guesswork.

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

Parameters2/5

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

Schema description coverage is 0% for the single required parameter, so the description must compensate and does not: data_model_id is never mentioned, nor is its format or where to obtain it. The parameter name is largely self-explanatory, which keeps this above a 1, but nothing is added.

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

Purpose4/5

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

States a specific verb and resource ('List elements in a data model'), which an agent can read at a glance. It does not distinguish itself from near-siblings like datasets_list_data_model_columns or datasets_list_data_model_sources, so the boundary between 'elements' and 'columns'/'sources' stays implicit.

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 contains no when-to-use guidance, no prerequisites, and never names an alternative. With several data-model listing tools present, the agent gets no help choosing between them.

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

datasets_list_data_model_lineageDatasets List Data Model LineageB
Read-only

List lineage for a data model.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
data_model_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior4/5

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

Annotations already declare readOnly/destructive=false, and the description adds genuinely non-obvious behavior: it auto-paginates all pages and normalizes the envelope so nextPage is always null and hasMore false. Knowing that prevents an agent from attempting manual paging. It does not mention lineage depth, edge direction, or size limits on large models.

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 purpose sentence is front-loaded and the pagination note follows it. The second sentence is dense and parenthetical but each clause carries real information; slight tightening (e.g., dropping the redundant Sigma-value aside) would improve it.

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?

An output schema exists, yet the description still helps by explaining the normalized pagination fields. However, it never says what "lineage" contains (upstream vs. downstream, whether columns or only tables are included), which is the main thing an agent needs to interpret results.

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

Parameters2/5

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

Schema description coverage is 0% for the single required parameter data_model_id, so the description carries the burden but adds nothing: it never says where the id comes from (e.g., datasets_list_data_models) or what format it takes. Only the resource type is implied.

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

Purpose4/5

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

States a specific verb and resource ("List lineage for a data model"), which is enough to distinguish it from sibling mutation tools and the workbook/report lineage variants. It never names those siblings explicitly, so the agent must infer the boundary itself.

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 statement that it follows pagination to the last page implies usage when a complete lineage set is wanted, but there is no explicit when-to-use/when-not guidance or reference to alternatives such as elements_list_element_lineage or workbooks_list_workbook_lineage. Context is inferable rather than stated.

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

datasets_list_data_model_materialization_schedulesDatasets List Data Model Materialization SchedulesA
Read-only

List the materialization schedules of a data model.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page and nextPageToken null, since every page is read.

NameRequiredDescriptionDefault
data_model_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, and the description still adds real behavioral context: it auto-paginates to the last page and returns the `entries` keys from every page with `nextPageToken` set to null. That pre-empts the most common agent mistake (re-issuing paginated calls) and is exactly the kind of value-add expected 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?

Two sentences, front-loaded with the action and followed by the pagination behavior. The second sentence is slightly awkwardly phrased with inline backticks and a dangling clause, but every statement carries information.

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

Completeness4/5

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

An output schema exists, so return values need not be re-explained, and the description correctly focuses on aggregation semantics instead. For a single-parameter read tool with annotation coverage this is nearly complete; the only missing piece an agent would want is how this differs from the element-level schedules sibling.

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?

Only one parameter (data_model_id) with 0% schema description coverage, so the description must carry the semantics. It at least ties the call to a single data model, but it says nothing about the ID's format, where to obtain it (e.g., datasets_list_data_models), or whether it accepts names. Partial compensation, not full.

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

Purpose4/5

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

States a specific verb and resource: list the materialization schedules belonging to a data model. Clear enough for an agent to know what it retrieves, but it never distinguishes itself from the near-identical sibling elements_list_materialization_schedules or from datasets_get_data_model_materialization, so scope boundaries remain implicit.

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?

Usage is only implied by the object it operates on (a data model's schedules); there is no explicit when-to-use, no prerequisite (e.g., the data model must already be materialized or scheduled), and no pointer to the element-level alternative. An agent can infer the basic case but not the exclusions.

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

datasets_list_data_modelsDatasets List Data ModelsA
Read-only

List all data models in the organization. Pass summary_only=True for concise token-efficient response.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read. limit is the page size.

NameRequiredDescriptionDefault
limitNo
summary_onlyNo

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare this a safe read (readOnlyHint=true, destructiveHint=false), but the description adds real behavioral information the annotations cannot: it auto-paginates to the last page, so nextPage is always null and hasMore always false. That disclosure is valuable because an agent might otherwise write pagination loops. It stops short of warning about cost/latency for very large orgs, which would raise it further.

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 core action and the most useful knob (summary_only) are front-loaded in the first sentence. The following sentences explain pagination semantics compactly, and no sentence is filler, though the parenthetical about hasMore/nextPage is denser than it needs to be.

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?

An output schema exists, so the return-shape explanation is mostly bonus, but the explanation of pagination behavior does add meaning beyond the schema. With annotations covering the safety profile, the only meaningful gap is the failure to distinguish this tool from datasets_list_all_data_models, a notable omission in a very crowded sibling set.

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 0%, so the description carries the full burden, and it does address both parameters: 'limit' is identified as the page size and 'summary_only' is explained as producing a concise, token-efficient response. It does not describe what the concise form omits or how limit interacts with the auto-pagination, so the compensation is partial rather than complete.

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

Purpose4/5

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

States a specific verb and resource with scope ('List all data models in the organization'), which is unambiguous on its own. However, the sibling list contains both datasets_list_data_models and datasets_list_all_data_models, and the description never explains how they differ, leaving an agent to guess which list tool to pick.

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?

Gives one actionable usage hint ('Pass summary_only=True for concise token-efficient response'), which implies when to use the compact mode. It offers no guidance on when to choose this tool over datasets_list_all_data_models or the narrower datasets_list_data_model_* siblings, so selection across siblings is left to inference.

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

datasets_list_data_model_sourcesDatasets List Data Model SourcesA
Read-only

List the sources (tables, datasets, other data models) a data model reads from.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page and nextPageToken null, since every page is read.

NameRequiredDescriptionDefault
data_model_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so safety is covered. The description adds genuinely non-obvious behavior: it auto-follows Sigma pagination to the last page and returns entries from every page with nextPageToken always null. That is real value beyond the structured fields, though it omits any warning about large/slow result sets for big models.

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 purpose, then a compact statement of the pagination contract. Nothing is redundant with the schema or annotations, and every clause carries information.

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

Completeness4/5

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

An output schema exists, so the description need not explain return values, yet it usefully explains that page keys are flattened. Combined with read-only annotations and a single required param, the definition is nearly sufficient; only the provenance/format of data_model_id 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?

There is one parameter (data_model_id) with 0% schema description coverage, so the description would need to carry it. It implies the ID identifies the data model whose sources are listed, but gives no format, source of the ID, or error behavior for an invalid ID.

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

Purpose4/5

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

States a specific verb (List) and resource (sources a data model reads from), and the parenthetical enumerates exactly what counts as a source (tables, datasets, other data models), which separates it from siblings like datasets_list_data_model_elements, _columns and _lineage. It never names a sibling explicitly, so differentiation is inferred rather than stated.

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?

Usage is only implied: an agent can infer this is the tool for 'what feeds this data model'. There is no explicit when-to-use, no prerequisite (e.g. that data_model_id must come from datasets_list_data_models), and no statement about when to prefer data model lineage instead.

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

datasets_list_data_model_tagsDatasets List Data Model TagsA
Read-only

List the version tags on a data model.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
data_model_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so safety is covered. The description adds meaningful behavioral detail beyond annotations: it follows Sigma pagination to the last page and specifies how entries, total, nextPage, and hasMore behave. It does not discuss auth or rate limits, but the pagination behavior is the key operational trait.

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 purpose is front-loaded in the first sentence. The second sentence is dense but earns its place by explaining pagination and return behavior; there is no filler. The only minor cost is that the pagination sentence is somewhat technical and parenthetical-heavy.

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 annotations and an output schema, the description is largely complete: it covers purpose and pagination behavior, which is important for a list operation. The main remaining gap is that data_model_id has no semantic detail in either schema or description. Because an output schema exists, the return-value explanation is somewhat redundant but still helpful.

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

Parameters2/5

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

Schema description coverage is 0% for the single data_model_id parameter, so the description must carry parameter meaning. It only says the tool operates 'on a data model,' which restates the obvious without adding format, source, or constraints for data_model_id. It does not compensate for the schema gap.

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 and resource: it lists version tags on a data model. That is clear enough to distinguish it from generic tag, workbook-tag, report-tag, and data-model-element tools in the sibling list. An agent can identify the target resource 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 Guidelines2/5

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

The description gives no explicit when-to-use guidance, prerequisites, or alternatives. It does not say when to choose this instead of datasets_tag_data_model or other tag-related tools. Usage is only implied by the purpose statement.

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

datasets_lookup_connection_pathDatasets Lookup Connection PathA
Read-only

Look up the object at a fully qualified path in a connection, e.g. ["DATABASE", "SCHEMA", "TABLE"] for Snowflake.

Read-only: the POST only resolves the path.

NameRequiredDescriptionDefault
pathYes
connection_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, but the description adds genuinely useful context: it explains that the POST is only a path-resolution mechanism, defusing the apparent conflict between an HTTP POST and a read operation. It still does not say what happens when the path does not resolve.

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 short sentences, zero waste. The core action and the example come first, and the read-only clarification follows as a secondary note.

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?

An output schema exists, so return values need no explanation, and the annotations cover safety. What remains missing for a resolver tool with 0% schema coverage is failure behavior and how it relates to the sibling list-paths tool, leaving the agent to infer both.

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 0%, so the description has to carry parameter meaning. The array-shaped `path` parameter is well served by the concrete three-element example, but `connection_id` is unexplained and there is no guidance on case sensitivity, path depth, or whether partial paths are permitted.

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

Purpose4/5

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

States a specific verb and resource: 'look up the object at a fully qualified path in a connection,' with a concrete Snowflake example clarifying the path shape. It is distinguishable from datasets_list_connection_paths by semantics (resolving one object vs. listing paths), but the description never names the sibling, so the differentiation is left implicit.

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 'e.g. ["DATABASE", "SCHEMA", "TABLE"]' example implies the caller must already have a complete path, which suggests usage context. However there is no explicit when-to-use, no exclusion, and no pointer to datasets_list_connection_paths for discovering paths first.

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

datasets_materialize_data_modelDatasets Materialize Data ModelA

Run the scheduled materialization for one data model element now.

sheet_id is the element's ID. Returns the materialization job; poll it with datasets_get_data_model_materialization.

NameRequiredDescriptionDefault
sheet_idYes
data_model_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior4/5

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

Annotations establish that this is a non-read-only, non-destructive, open-world operation, and the description adds key behavior beyond that: it creates a materialization job and returns it for polling. It does not describe idempotency, permissions, or side effects of re-running a scheduled materialization.

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 short, front-loaded with the primary action, and follows with the key parameter clarification and polling guidance. Every sentence carries useful 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?

An output schema exists, so the description need not document return values in detail; mentioning that it returns a job and how to poll it is sufficient. The main gap is that data_model_id and the relationship to similar materialization siblings are not explained.

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 0%, so the description is needed to explain both required parameters. It explains that sheet_id is the element's ID, but data_model_id is left unexplained beyond its name, so it only partially compensates for the missing schema descriptions.

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

Purpose4/5

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

The first sentence states a specific verb and resource: run the scheduled materialization for one data model element now. It clarifies what sheet_id represents, but it does not distinguish this tool from the similarly named sibling elements_materialize_element, so an agent must infer the difference.

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 by saying 'run ... now' and routes the agent to datasets_get_data_model_materialization for polling. However, it gives no explicit when-to-use guidance, prerequisites, or exclusion versus elements_materialize_element or other materialization tools.

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

datasets_swap_data_model_sourcesDatasets Swap Data Model SourcesC

Swap data sources for a data model.

NameRequiredDescriptionDefault
bodyYes
data_model_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.6/5.0
Behavior2/5

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

Annotations already declare this is a non-read-only, non-destructive, open-world operation, so the safety profile is partly covered. However, the description adds nothing beyond the name: it does not say what 'swap' does to existing sources (replace vs. add), whether the operation is reversible, what permissions it needs, or what the nested body must contain.

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

Conciseness4/5

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

A single front-loaded sentence with no padding or redundancy. It is appropriately sized, though the brevity reflects under-specification rather than disciplined concision.

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

Completeness2/5

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

For a mutation tool whose body parameter is a completely opaque object, the definition leaves the agent unable to construct a correct call. The output schema exists, so return values need not be explained, but the missing body semantics and usage context make this inadequate for a 2-param write operation.

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

Parameters1/5

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

Schema description coverage is 0% with two required parameters, one of which is a free-form nested object (additionalProperties: true) with no documented shape. The description gives no parameter information at all, so it fails to compensate for the coverage gap on the critical body payload.

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

Purpose4/5

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

Clear verb+resource: 'Swap data sources for a data model.' An agent can distinguish it from the workbook/report swap siblings by the object ('data model'), but the description never names or explicitly contrasts those siblings, so differentiation requires inference from the tool name.

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?

No when-to-use, no prerequisites, no alternatives. Nothing tells the agent when a source swap is appropriate versus datasets_swap_report_sources or elements_swap_workbook_sources, or what state the data model must be in first.

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

datasets_swap_report_sourcesDatasets Swap Report SourcesB

Swap data sources on a report. Use connectionMapping for connection-level swaps, sourceMapping for table-level swaps.

NameRequiredDescriptionDefault
report_idYes
source_mappingNo
connection_mappingNo

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare the mutation profile (readOnlyHint=false) and safety (destructiveHint=false, openWorldHint=true), lowering the bar. The description confirms a swap/mutation but adds nothing about reversibility, permissions, or what a swap affects on existing report state, which is relevant given the destructive potential of replacing data sources.

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 short sentences, purpose front-loaded, then parameter guidance. Zero filler; every clause carries information.

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?

An output schema exists, so return values need not be described. But for a mutation with 0% schema coverage, the description omits the shape of the mapping entries an agent must construct and any note on reversibility or policy requirements, leaving a real gap before invocation.

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 0%, so the description must compensate. It does explain the role of the two optional mapping parameters (connection-level vs table-level), which is more than the schema offers. However, it says nothing about the structure of the mapping objects or the required report_id, and it uses camelCase names that differ slightly from the schema's snake_case.

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

Purpose4/5

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

States a specific verb+resource ('Swap data sources on a report'), and the resource 'report' implicitly separates it from sibling swaps like datasets_swap_data_model_sources and elements_swap_workbook_sources. It does not name those siblings explicitly, so it stops short of full differentiation.

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?

There is no when-to-use guidance, no prerequisites, and no alternatives named despite the presence of closely related swap tools in the sibling list. The 'Use connectionMapping...sourceMapping...' sentence is configuration direction, not tool-selection guidance.

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

datasets_sync_all_tables_in_schemaDatasets Sync All Tables In SchemaB

Sync all tables in a warehouse schema so they become visible in Sigma.

NameRequiredDescriptionDefault
schemaYes
databaseYes
connection_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3/5.0
Behavior3/5

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

Annotations already declare this is a non-destructive write (readOnlyHint=false, destructiveHint=false) against an open-world external system, so the safety profile is covered. The description adds real value by stating the observable effect (tables become visible in Sigma), but says nothing about sync duration, whether it is synchronous, or how it interacts with already-synced tables.

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

Conciseness4/5

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

A single sentence with the verb and scope front-loaded and no filler. It is efficient, though its brevity comes at the cost of the missing context noted elsewhere.

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 output schema exists, so return values need not be explained, and annotations cover the safety profile. However, for a three-required-parameter mutation with zero schema documentation, the description should at least identify the connection/database inputs and any prerequisite state; those gaps keep it at minimum viable.

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

Parameters2/5

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

Schema description coverage is 0% for three required parameters. The phrase 'warehouse schema' hints at the schema parameter, but connection_id and database are left entirely undefined in both schema and description, so the description fails to compensate for the coverage gap.

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

Purpose4/5

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

States a specific verb (sync) and a precise resource scope (all tables in a warehouse schema), and the outcome ('become visible in Sigma') clarifies intent. It is distinguishable from datasets_sync_connection and datasets_bulk_sync_tenant_connections by scope, though it never names them.

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?

No guidance on when to use this versus the sibling sync tools (datasets_sync_connection, datasets_bulk_sync_tenant_connections) or versus datasets_list_columns_for_table. No prerequisites are stated, such as whether the connection must be tested or the schema pre-existing.

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

datasets_sync_connectionDatasets Sync ConnectionB

Force Sigma to re-index a warehouse path. Pass empty list for full sync.

NameRequiredDescriptionDefault
pathNo
connection_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare this is a non-read-only, non-destructive action, so the safety profile is covered. The description adds the meaningful effect detail that it forces a re-index and that an empty list triggers a full sync, but says nothing about whether the sync is asynchronous, how long it runs, or what permissions are required.

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 short sentences, no filler, with the core action stated first and the special-case parameter behavior second. Nothing needs to be cut.

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 output schema exists, so return values need not be described, and annotations cover the safety profile. What is missing is routing information against the similar sync tools and any hint about the connection_id parameter, which leaves the definition adequate but not 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 0%, so the description carries the burden. It does explain that path accepts a list (empty list = full sync) and that path targets a warehouse path, but connection_id is left completely undefined in both schema and description.

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

Purpose4/5

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

States a specific verb and effect ('Force Sigma to re-index') plus the resource scope ('a warehouse path'), which is far more informative than the tool name 'sync_connection'. It does not, however, distinguish itself from sibling sync tools such as datasets_sync_all_tables_in_schema or datasets_bulk_sync_tenant_connections.

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?

'Pass empty list for full sync' is invocation guidance for a parameter, not tool-selection guidance. With several sibling sync operations in the toolset, the description offers nothing about when to pick this tool over datasets_sync_all_tables_in_schema or datasets_bulk_sync_tenant_connections.

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

datasets_tag_data_modelDatasets Tag Data ModelB
Idempotent

Apply a version tag to a data model by tag NAME. The Sigma API takes the tag name here, not its ID.

NameRequiredDescriptionDefault
tag_nameYes
data_model_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=true, openWorldHint=true), so the description does not need to restate that. It adds one useful API-specific behavior—that the tag name, not ID, is expected—but says nothing about whether the tag must pre-exist or what happens on repeat application, leaving it at an adequate 3.

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 short sentences, the operation stated first and the API quirk second. Every sentence earns its place with no filler.

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 an output schema present, return values need no explanation, and both required parameters are named. The main residual gap is the absence of any note on tag pre-existence or re-tagging behavior, but the description is nearly complete for a simple two-parameter tagging call.

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 0% for two parameters, so the schema carries no semantic detail. The description partially compensates by clarifying that tag_name is a NAME rather than an ID—the key ambiguity—but offers nothing on data_model_id. Coverage of one of two undocumented parameters justifies a middle score.

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

Purpose4/5

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

The description gives a specific verb and resource: 'Apply a version tag to a data model by tag NAME.' This is unambiguous and no sibling operates on data-model tags, so the operation is distinguishable. It stops short of explicitly contrasting with any sibling tool, keeping it at a strong 4 rather than a 5.

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

Usage Guidelines2/5

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

There is no statement of when to use this tool versus alternatives (e.g., workspace_create_tag or the workbooks tagging siblings), nor any prerequisites such as whether the tag must already exist. Usage must be inferred from the name and description alone.

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

datasets_test_connectionDatasets Test ConnectionC

Test connectivity for a connection.

NameRequiredDescriptionDefault
connection_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

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

Annotations already declare openWorldHint=true and readOnlyHint=false, so the external, non-pure-read nature of the call is structured-visible. The description adds nothing beyond that: it does not say what a failed test looks like, whether the probe has side effects on the connection, or what auth/rate-limit considerations apply.

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

Conciseness3/5

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

One short sentence with no filler and the purpose is front-loaded. It is efficient but under-specified rather than genuinely concise, so it only reaches the minimum viable level.

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

Completeness2/5

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

An output schema exists, so return values need not be explained, but the description still omits prerequisites, parameter sourcing, and how this tool relates to the sync/get connection siblings. For a tool with a hidden 0%-documented parameter, more context is needed.

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

Parameters2/5

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

Schema description coverage is 0% and the single parameter (connection_id) has no description in either the schema or the tool description. The description does not say how to obtain a valid connection_id (e.g., from datasets_list_connections) or what format it takes, so it fails to compensate for the coverage gap.

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

Purpose3/5

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

The sentence names a verb ("Test") and a resource ("connectivity for a connection"), which is more than a restatement of the name. However, it does not distinguish this from siblings like datasets_sync_connection or datasets_get_connection, nor clarify what "test" means (reachability, credentials, permissions).

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?

There is no when-to-use guidance, no stated prerequisites, and no mention of alternatives. An agent calling this against a connection has to infer whether it should be run before datasets_sync_connection or instead of datasets_get_connection.

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

datasets_update_data_modelDatasets Update Data ModelA

Update an existing data model from a JSON code representation (full replacement via PUT).

NameRequiredDescriptionDefault
specYes
data_model_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, openWorldHint=true and destructiveHint=false, so the safety envelope is partly covered. The description adds genuinely useful behavior beyond that: the operation is a FULL replacement via PUT, meaning any portion of the model not included in the payload is overwritten. This is exactly the kind of context that is not visible in the annotations, though the full-replacement semantics sit in mild tension with destructiveHint=false and no auth or irreversibility detail is given.

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 sentence with no filler, front-loading the action, the target resource, and the replacement semantics. Every clause 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?

An output schema exists, so return values need not be documented. For a two-parameter mutation tool with annotations covering safety, the description supplies the key missing fact (full replacement), but leaves out prerequisites such as retrieving the existing spec first and any permission requirements.

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 0% for both parameters, so the description carries the burden. It partially compensates by identifying what `spec` holds (a JSON code representation, i.e., the code-form model) and that it is transmitted whole via PUT; it says nothing about `data_model_id` or the expected structure/keys of the nested spec object.

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

Purpose4/5

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

States a specific verb and resource ("Update an existing data model") plus the input medium ("from a JSON code representation"), which separates it from datasets_create_data_model and the read-only datasets_get_data_model_spec. It does not, however, explicitly name a sibling or distinguish itself from adjacent mutators like datasets_swap_data_model_sources.

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?

There is no guidance on when to use this versus alternatives such as datasets_swap_data_model_sources for source changes or datasets_create_data_model for new models, and no mention of the prerequisite that a full replacement normally requires first fetching the current spec via datasets_get_data_model_spec. Usage can only be inferred from "Update an existing data model".

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

elements_create_source_swap_policyElements Create Source Swap PolicyC

Create a source swap policy for automated deployments.

NameRequiredDescriptionDefault
bodyYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds only the vague 'automated deployments' context and says nothing about what the policy does once created, what side effects it has, or whether it is idempotent.

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?

One short, front-loaded sentence with no filler. It is efficient, though the brevity borders on under-specification rather than true conciseness.

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

Completeness2/5

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

An output schema exists so return values need not be explained, but the input is a nested, untyped body object and the description does nothing to compensate. For a creation tool with a fully opaque payload, this leaves the agent unable to invoke it correctly.

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

Parameters2/5

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

There is a single required 'body' parameter with 0% schema description coverage and an opaque, free-form object type. The description provides no information about what the body must contain, so the agent has no guidance on constructing the call.

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

Purpose4/5

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

The description states a specific verb+resource ('Create a source swap policy'), so an agent knows the operation type. However, it never distinguishes this from sibling create/swap tools like elements_swap_workbook_sources or elements_list_source_swap_policies, nor does it define what a source swap policy is.

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?

There is no when-to-use guidance, no prerequisites, and no reference to the related siblings (list/get source swap policies, swap sources). The phrase 'for automated deployments' hints at a scenario but does not tell the agent when this tool is the right choice.

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

elements_delete_source_swap_policyElements Delete Source Swap PolicyA
Destructive

Delete a source swap policy (Beta). Requires confirm=True.

NameRequiredDescriptionDefault
confirmNo
policy_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true, readOnlyHint=false and openWorldHint=true, so the safety profile is covered elsewhere. The description adds the confirm gate and the Beta status, but says nothing about permanence, reversibility, cascading effects on elements using the policy, or required permissions.

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 short sentences with zero filler, and the destructive action plus its prerequisite are front-loaded. Nothing needs trimming and nothing is buried.

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?

An output schema exists, so return values need no explanation, and the confirm requirement is stated. For a destructive, open-world delete, however, the description omits irreversibility, permission requirements, and impact on elements referencing the policy, which an agent needs before invoking it.

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 0%, so the burden falls on the text. The description clarifies that confirm must be true (the schema lists only policy_id as required, leaving the confirm gate ambiguous), but gives no meaning for policy_id beyond its name and no format or lookup guidance.

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

Purpose4/5

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

States a specific verb and resource ('Delete a source swap policy') and the '(Beta)' marker identifies the feature surface. It is clearly distinguishable from siblings like elements_update_source_swap_policy and elements_create_source_swap_policy, though it never names those alternatives explicitly.

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 gives one hard prerequisite ('Requires confirm=True'), which is genuine usage guidance. It does not say when to delete versus update a policy, what happens to dependent elements, or which alternative to use if the intent is removal of a swap mapping rather than the policy.

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

elements_formula_pitfallsElements Formula PitfallsA
Read-only

Return a curated reference of common Sigma formula pitfalls — column reference syntax, type requirements, NULL handling, aggregate vs row-level context, date function argument order, and metrics vs calculated columns. Use this before writing any Sigma formula expression.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, so the safety profile is covered by structured data. The description adds only that the content is a curated reference (implying static, non-mutating data); it says nothing about freshness, coverage limits, or pagination. Adequate but not rich.

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, zero waste. The scope enumeration is front-loaded and the call-to-action cue comes last, so the agent gets purpose and timing in one pass.

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?

An output schema exists, so return-value documentation is not the description's burden, and the listed pitfalls fully describe the reference's domain. For a no-parameter, read-only reference tool, nothing an agent needs in order to call it correctly is missing.

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 tool takes zero parameters, so the baseline is 4. Nothing in the description needs to, or does, explain inputs, and it correctly focuses on what the tool 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?

States a specific verb and resource ('Return a curated reference of common Sigma formula pitfalls') and enumerates the exact topic coverage — column reference syntax, type requirements, NULL handling, aggregate vs row-level context, date argument order, metrics vs calculated columns. No sibling tool returns formula guidance, so it is distinguishable at a glance.

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?

Gives an explicit activation condition: 'Use this before writing any Sigma formula expression.' That is clear context for when to call it. It does not mention when-not to use it or name adjacent alternatives like elements_search_docs / elements_get_doc_page, so it stops 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.

elements_get_doc_pageElements Get Doc PageA
Read-only

Fetch a specific Sigma documentation page as clean Markdown. Pass the page slug (e.g. 'create-a-workbook') or a section path (e.g. 'docs/create-a-workbook'). Returns the full page content.

read_only_hint: True

NameRequiredDescriptionDefault
page_slugYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, destructiveHint=false, so the safety profile is covered. The description adds the output format ('clean Markdown', 'full page content'), which is modest extra context, but says nothing about failure behavior for unknown slugs or page size limits.

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 short sentences, front-loaded with the action, with examples inlined rather than bulked out. The final 'Returns the full page content' sentence is mild redundancy given an output schema exists.

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?

A one-parameter fetch tool with an output schema needs only to define the input form and the action, both of which are present. The remaining gap is routing guidance against elements_search_docs, which is minor for a tool this simple.

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 0%, so the description must carry the parameter. It does: two concrete accepted forms are given ('create-a-workbook' or 'docs/create-a-workbook'), which resolves the ambiguity of what a 'slug' means here. Slightly short of 5 since format constraints (case, allowed characters) aren't specified.

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

Purpose4/5

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

States a specific verb and resource ('Fetch a specific Sigma documentation page as clean Markdown'), which is clearly distinct from mutation siblings. It doesn't explicitly name the closest sibling, elements_search_docs, so the retrieval-vs-search distinction is left implicit.

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 requirement to supply a slug or section path implies the page must already be known, which hints at when to use this over a search tool, but no alternative is named and no when-not guidance is given. Usage is inferable rather than stated.

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

elements_get_element_columnsElements Get Element ColumnsB
Read-only

List columns for a specific element in a workbook.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
element_idYes
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior4/5

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

Annotations already establish read-only, non-destructive, open-world behavior, so the safety profile is covered. The description adds genuinely useful context beyond that: it auto-paginates through every page and aggregates results into entries, total, and nextPage null. It omits permission requirements, but the pagination disclosure is meaningful extra context.

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

Conciseness3/5

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

The purpose is front-loaded in one clean sentence. The second sentence is dense and jargon-heavy about Sigma's pagination internals, and part of it redundantly explains return values even though an output schema exists.

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

Completeness3/5

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

For a two-parameter read-only tool with annotations and an output schema, the description is mostly adequate, and the pagination explanation helps. However, with 0% schema description coverage, the missing parameter semantics prevent it from being fully complete.

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

Parameters2/5

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

Schema description coverage is 0% for two required parameters, so the description must carry the burden. It only conceptually implies workbook and element scoping ('a specific element in a workbook') and gives no parameter names, ID formats, or distinction between workbook_id and element_id, leaving a real gap.

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

Purpose4/5

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

The description names a specific verb and resource ('List columns for a specific element in a workbook'), which clearly distinguishes it from workbook-wide column listings like elements_list_workbook_columns. It stops short of naming a sibling alternative explicitly, but the scope is 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?

Usage is implied by the phrase 'for a specific element' — use this when you have an element_id — but the description never says when to prefer it over elements_list_workbook_columns or other column-listing siblings, nor does it state prerequisites.

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

elements_get_element_queryElements Get Element QueryB
Read-only

Get the generated SQL query for a specific element in a workbook.

NameRequiredDescriptionDefault
element_idYes
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior3/5

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

Annotations declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds that it retrieves a generated SQL query, implying a read-only operation, but does not elaborate on authentication, rate limits, or other behavioral traits. With annotations present, a baseline of 3 is appropriate, though more context (e.g., that the query is generated and may be expensive to compute) would help.

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, concise sentence that front-loads the action and resource. Every word earns its place, and there is no unnecessary content.

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 that an output schema exists, the description need not explain return values. However, with two required parameters and zero schema description coverage, the description is incomplete—it does not compensate for the missing parameter documentation, nor does it provide usage context. The presence of annotations helps, but overall the definition is only minimally viable.

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

Parameters2/5

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

Schema description coverage is 0%, meaning neither parameter is documented in the schema. The description mentions 'workbook' and 'element' implicitly, but does not clarify the format, constraints, or relationships of workbook_id and element_id. This is insufficient compensation for the lack of schema descriptions, leaving agents to guess the expected identifier formats.

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

Purpose4/5

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

The description states a specific verb (Get) and resource (generated SQL query for a specific element). It clearly distinguishes itself from sibling elements_list_workbook_queries, which likely lists all queries rather than retrieving one for a specific element. However, it does not explicitly name or contrast with any sibling tool, leaving some potential for confusion.

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 versus alternatives. With many sibling tools related to queries (e.g., elements_list_workbook_queries, elements_list_workbook_elements), an agent would need to infer the appropriate context. No exclusions or prerequisites are stated.

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

elements_get_materialization_jobElements Get Materialization JobC
Read-only

Check status of a materialization job.

NameRequiredDescriptionDefault
job_idYes
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so safety is covered. The description adds nothing beyond that baseline: no polling expectations, no terminal states, no indication of what happens if the job id is unknown. It is consistent with the annotations but contributes essentially no extra 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.

Conciseness4/5

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

A single short sentence with the action and resource front-loaded; nothing is wasted. It is concise but arguably under-specified rather than optimally concise.

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

Completeness2/5

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

With an output schema present, return values need not be explained, but for a status-polling tool the description should still hint at job lifecycle or polling behavior, and it omits all parameter context for a 2-required-param tool. Inadequate for the task.

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

Parameters2/5

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

Schema description coverage is 0%, so both job_id and workbook_id are undocumented in the schema, and the description does not mention either. The parameter names are fairly self-explanatory, which slightly mitigates, but the description fails to compensate for the coverage gap.

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

Purpose4/5

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

States a specific verb ('Check status') and resource ('materialization job'), so an agent knows exactly what it does. It does not, however, differentiate itself from siblings like elements_materialize_element, elements_materialize_and_wait, or elements_list_materialization_schedules.

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?

There is no guidance on when to use this versus materialize_and_wait or list_materialization_schedules, nor any prerequisites. The agent must infer usage from the name alone.

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

elements_get_source_swap_policyElements Get Source Swap PolicyC
Read-only

Get a source swap policy.

NameRequiredDescriptionDefault
policy_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, covering the safety profile, but the description adds nothing beyond that — no note on failure modes when the policy_id is unknown, no scoping or permission context. It restates the operation without enriching behavioral understanding.

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

Conciseness3/5

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

The single sentence is front-loaded and contains no filler, but it is under-specified rather than genuinely concise — brevity here comes at the cost of useful detail. Not wasteful, but not earning its place either.

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

Completeness2/5

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

An output schema exists so return values need not be described, but for a get-by-id tool the description is missing the context an agent needs: what a policy is, how to source a policy_id, and how it relates to the list/create siblings. It is too thin given the surrounding tool surface.

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

Parameters2/5

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

Schema coverage is 0% and there is exactly one parameter (policy_id) whose meaning, format, or origin is never explained in the description. For a single required id parameter with no schema documentation, the description should compensate but does not.

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

Purpose3/5

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

The description states a verb+resource ('Get a source swap policy'), so the basic action is clear, but it does nothing to distinguish this retrieval-by-id tool from its close siblings elements_list_source_swap_policies and elements_create_source_swap_policy. An agent could confuse it with the list operation 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 Guidelines2/5

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

There is no guidance on when to use this versus list_source_swap_policies or how a policy_id is obtained. No prerequisites, no context, no alternatives named — the agent must infer usage entirely from the tool name.

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

elements_list_all_input_tablesElements List All Input TablesA
Read-only

Scan all workbooks to find input-table elements.

Returns a list of input tables with their workbook, page, and element context. Errors on individual workbooks/pages are collected rather than silently swallowed.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, and destructiveHint=false, so the safety profile is covered. The description adds genuinely useful behavior beyond that: errors on individual workbooks/pages are collected rather than swallowed, and it returns workbook/page/element context. Pagination and rate-limit behavior for an open-world all-workbooks scan are not disclosed.

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 short sentences, front-loaded with the action and scope, then the return shape, then the error-handling note. Every sentence earns its place; no filler.

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?

An output schema exists, so return values need not be explained, and the description still gives enough context (scope, context fields, error semantics) to call it confidently. Minor gap: no guidance on result size or pagination for a scan across all workbooks.

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 tool takes zero parameters, so per the rubric the baseline is 4. There is nothing for the description to disambiguate, and it correctly summarizes the output shape instead.

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

Purpose4/5

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

The description states a specific verb and resource: 'Scan all workbooks to find input-table elements.' The 'all workbooks' scope implicitly distinguishes it from per-workbook siblings like elements_list_workbook_elements, though it never names those alternatives explicitly.

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?

Usage is implied by the cross-workbook scope ('all workbooks'), which suggests this is the broad discovery tool rather than a per-workbook drill-down. However, there is no explicit statement of when to prefer this over elements_list_workbook_elements or the other elements_* listers, nor any prerequisites or exclusions.

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

elements_list_element_lineageElements List Element LineageB
Read-only

List the lineage (upstream sources and dependencies) of one workbook element.

NameRequiredDescriptionDefault
element_idYes
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered without the description. The description adds useful semantics (lineage = upstream sources and dependencies), clarifying what the result means, but says nothing about lineage depth, traversal direction beyond 'upstream', or freshness, which would be valuable given openWorldHint.

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 front-loaded sentence with the resource and its parenthetical definition; nothing extraneous.

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?

An output schema exists, so return values needn't be explained. However, for a two-parameter lookup with zero schema documentation, the description leaves the agent without ID expectations or a clear routing rule against the many lineage-related siblings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, with both workbook_id and element_id undocumented in the schema. The description only implies 'one workbook element' and offers no ID format, source-of-ID, or scoping guidance to compensate for the coverage gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('List the lineage') scoped to one workbook element, and parenthetically defines lineage as upstream sources and dependencies, which an agent can use to distinguish it from workbook-level lineage tools. It doesn't explicitly name the sibling it is not (e.g., workbooks_list_workbook_lineage), so it stops short of full differentiation.

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?

No statement of when to use this element-level lineage tool versus workbook-level or data-model-level lineage siblings, and no prerequisites or exclusions. The scope 'one workbook element' only weakly implies usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

elements_list_materialization_schedulesElements List Materialization SchedulesB
Read-only

List every materialization schedule for a workbook.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare readOnly=true and destructive=false, so safety is covered. The description adds meaningful behavioral context by explaining that it follows Sigma pagination to the last page and aggregates entries across pages, with nextPage null and hasMore false at completion.

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 purpose is front-loaded in the first sentence and the pagination behavior follows immediately. The second sentence is somewhat technical and dense, but it does not contain obvious wasted text.

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 one-parameter list tool with an output schema and safety annotations, the description gives enough context to understand the operation and its exhaustive pagination behavior. The remaining gaps are mainly usage differentiation and workbook_id semantics.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter, workbook_id, has 0% schema description coverage. The description only says the schedules are 'for a workbook', which is already implied by the parameter name, so it does not compensate for the missing schema documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'List every materialization schedule for a workbook.' This clearly scopes the tool to workbook materialization schedules, but it does not explicitly distinguish it from nearby siblings such as datasets_list_data_model_materialization_schedules or workbooks_list_workbook_schedules.

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 says what the tool lists but gives no guidance on when to choose it over the similar schedule-listing tools. There are no explicit exclusions or alternative-tool routing cues.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

elements_list_source_swap_policiesElements List Source Swap PoliciesA
Read-only

List all source swap policies (rules for automatic source swapping on deployment).

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish read-only, open-world, non-destructive behavior. The description adds substantive operational detail: it auto-paginates to the last page and explains how returned keys behave across pages, including null nextPage / false hasMore. This is useful 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?

The description is front-loaded with purpose, then pagination/return behavior. The second paragraph is dense but each detail (entries, total, nextPage null) earns its place by making the auto-pagination predictable.

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 zero parameters, an output schema, and safe read-only annotations, the description is nearly complete: it explains what is listed and how pagination is aggregated. It could be slightly stronger with explicit routing versus the single-policy getter, but nothing critical for correct invocation is missing.

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 tool has zero parameters and 100% schema coverage, so the baseline is 4. There are no parameter semantics to clarify or compensate for.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('List') and resource ('source swap policies'), with a parenthetical clarifying that these are deployment-time automatic source swapping rules. It distinguishes itself from singular get/update/delete siblings by saying 'List all', though it does not name those alternatives explicitly.

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, when-not, or alternative guidance is provided. The phrase 'List all source swap policies' implies enumeration, but an agent gets no direct routing advice versus elements_get_source_swap_policy or the create/update/delete siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

elements_list_workbook_columnsElements List Workbook ColumnsA
Read-only

List all columns across all elements in a workbook, including formulas and types.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and destructiveHint. The description adds valuable behavior beyond them: it automatically pages to the last page and specifies the returned keys entries, total, nextPage null, and hasMore false where applicable.

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 purpose is front-loaded in the first sentence, and the second sentence explains pagination and return shape. The pagination sentence is dense but each clause serves a purpose, with no filler.

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?

An output schema exists, so return values do not need full explanation, and annotations cover safety. However, the description omits parameter semantics and explicit sibling routing, leaving gaps for an agent choosing and invoking the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There is only one required parameter, workbook_id, but the schema provides no description and the tool description never explains its format, source, or semantics. With 0% schema description coverage, the description should compensate and does not.

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 and resource: list all columns across all elements in a workbook, including formulas and types. The scope 'across all elements' distinguishes it from the single-element sibling elements_get_element_columns and from workbooks_list_report_columns.

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 scope implies when the tool is appropriate, but the description never names alternatives such as elements_get_element_columns for a single element or workbooks_list_report_columns for reports. It provides context but no explicit exclusions or routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

elements_list_workbook_controlsElements List Workbook ControlsA
Read-only

List control elements (filters, parameters) in a workbook.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnlyHint=true, destructiveHint=false), so credit goes to what the description adds: it discloses that pagination is followed to the last page and that the response aggregates entries from every page with nextPage null / hasMore false, so the caller must not re-paginate. That is genuine non-obvious behavioral context; only auth or failure behavior is left unstated.

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 purpose is front-loaded in one sentence, with the pagination/return-shape detail after it. The second paragraph is dense with Sigma-internal phrasing and nested parentheticals, but each clause conveys a distinct part of the return contract rather than restating the name.

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?

An output schema exists, so return values need not be fully enumerated, and the description still adds the key aggregation/pagination fact an agent needs to interpret that output. Safety is covered by annotations. The remaining gap is the undocumented workbook_id parameter, which is the only real omission.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for the single parameter, so the description must carry the burden — but it never mentions workbook_id, its expected format, or where to obtain it, only saying results are 'in a workbook'. At best it lets the reader infer that the parameter scopes the listing, which adds almost nothing over the schema's property name.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource — 'List control elements (filters, parameters) in a workbook' — and disambiguates the jargon 'controls' with a parenthetical. It does not differentiate itself from close siblings such as elements_list_workbook_elements, elements_list_workbook_page_elements, or workbooks_list_report_controls, so an agent still has to infer which list to use.

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?

Usage is only implied by the resource named: use it when you need a workbook's controls. There is no explicit 'use this when...' statement and no exclusion naming the sibling list tools (workbook elements, page elements, report controls) that could be confused with it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

elements_list_workbook_elementsElements List Workbook ElementsA
Read-only

List all elements (tables, charts, controls, etc.) in a workbook.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare read-only/non-destructive, so that safety profile is covered. The description adds genuine behavioral context beyond annotations: it auto-follows Sigma's pagination to the last page, aggregates entries across all pages, and always returns nextPage null / hasMore false. This is real disclosure an agent needs to reason about result completeness.

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?

Two sentences, purpose front-loaded, followed by pagination detail. The second sentence is dense and partly restates return keys that an output schema already carries, but the pagination-following behavior justifies most of it.

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 an output schema present, return-value explanation is somewhat redundant, but the description still covers purpose and the key behavioral fact (auto-pagination to the last page). The main gap is not situating it against the workbook-page and columns/controls siblings.

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 one required parameter with 0% schema description coverage, so the burden falls on the description. The single parameter workbook_id is self-evident and the scope sentence implies it, but no explicit statement of what to pass or format is given. Adequate given only one obvious parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ("List all elements... in a workbook") and enumerates element types (tables, charts, controls, etc.), making the operation unambiguous. It does not explicitly differentiate from the close sibling elements_list_workbook_page_elements, but the workbook-wide scope is clear from 'in a workbook'.

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 guidance, and the page-level and column/control siblings are not named as alternatives. The word 'all' and the workbook-level scope imply this is the broad listing rather than a page-scoped one, but the agent must infer the choice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

elements_list_workbook_page_elementsElements List Workbook Page ElementsA
Read-only

List elements on a specific page of a workbook.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
page_idYes
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnlyHint/destructiveHint annotations, the description discloses the key behavioral trait: it transparently paginates through every Sigma page and returns entries aggregated across pages, with nextPage null and hasMore false. That tells an agent it never needs to page manually — valuable and non-obvious.

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?

Two sentences, purpose front-loaded, followed by the pagination contract. The parenthetical about which keys come from Sigma is dense but carries real information; it is somewhat redundant against the output schema.

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 two-parameter read tool with an output schema and safety annotations, the description covers what it does and how pagination behaves. The remaining gap is operational: no pointer to how page_id is discovered and no note on entry ordering.

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 0% for the two required parameters, so the description must compensate. It establishes the workbook/page relationship, but neither workbook_id nor page_id is explained (format, source, or how to discover a page_id). The parameter names are largely self-evident, which keeps this at minimum-viable rather than deficient.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource with a clear scope qualifier: list elements on a specific page of a workbook. That distinguishes it implicitly from elements_list_workbook_elements (whole workbook), but it never names or contrasts any sibling explicitly.

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 scoping phrase 'on a specific page of a workbook' implies when this tool is the right choice, but there is no explicit when-to-use guidance, no mention of the workbook-wide alternative, and no note on how to obtain a page_id (e.g. via workbooks_list_workbook_pages).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

elements_list_workbook_queriesElements List Workbook QueriesA
Read-only

List generated SQL queries for all elements in a workbook.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With readOnlyHint/destructiveHint already covering safety, the description adds real behavioral value: it auto-walks every page and returns consolidated entries, so the agent knows not to paginate and will see nextPage null / hasMore false. It stops short of mentioning permissions or limits on large workbooks.

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 core action is front-loaded in sentence one, and sentence two is dense but each detail about pagination and page keys is useful. The doubled-backtick formatting is slightly noisy but not verbose overall.

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?

An output schema exists, so return-shape explanation is optional, and the pagination notes make behavior unambiguous for a one-parameter read tool. Only the provenance/format of workbook_id is left unstated.

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?

Only one parameter, with 0% schema description coverage, so the description could have clarified where workbook_id comes from or its format but does not. The name is largely self-explanatory, so the gap is minor rather than damaging.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: lists generated SQL queries for all elements in a workbook. The scope 'all elements in a workbook' implicitly separates it from the single-element sibling elements_get_element_query, though no sibling is named explicitly.

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?

Usage is only implied by the scope of the noun phrase; there is no explicit statement of when to prefer this over elements_get_element_query (single element) or elements_list_workbook_sources, nor any prerequisite note about workbook access.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

elements_list_workbook_sourcesElements List Workbook SourcesC
Read-only

List data sources used by a workbook.

NameRequiredDescriptionDefault
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds nothing beyond that: it does not indicate whether this hits external/remote sources, whether results are paginated, or whether a missing workbook returns an error.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler or repetition. It is efficient, though the brevity is arguably under-specification rather than disciplined conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, but the definition still leaves key gaps: the undocumented workbook_id, no disambiguation from the crowded set of sibling 'list_workbook_*' tools, and no indication of what constitutes a 'source'. For an otherwise simple list tool this is thinner than needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the single parameter 'workbook_id' is documented nowhere. The description only obliquely implies a workbook reference ('used by a workbook') and gives no format, ID source, or validation detail to compensate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('List data sources used by a workbook'), so the agent knows exactly what operation this is. It does not differentiate from the many look-alike siblings (elements_list_workbook_elements, elements_list_workbook_columns, elements_list_workbook_queries, workbooks_list_report_sources), leaving the boundary between 'sources' and 'elements/columns' to inference.

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?

There is no when-to-use guidance, no prerequisites, and no mention of alternative tools for adjacent needs (e.g. columns, queries, lineage). The agent must infer usage purely from the name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

elements_materialize_and_waitElements Materialize And WaitC

Trigger materialization and poll until complete or timeout.

NameRequiredDescriptionDefault
element_idYes
workbook_idYes
timeout_secondsNo

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false and destructiveHint=false, so the mutation/safety profile is partly covered. The description adds genuinely useful behavior beyond that: it blocks and polls until completion. But it leaves key traits undisclosed – what happens when the timeout fires (error, partial result, job id?), whether it retries, and whether it is cancellable.

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?

One sentence, no filler, action front-loaded in the first two words. It is arguably too terse for the tool's complexity, but nothing in it is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values need not be explained, but for a blocking, long-running operation with zero parameter documentation and two near-duplicate siblings, the definition omits too much: timeout semantics and the choice among the three materialization tools are the gaps an agent will actually hit.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for all three parameters, so nothing documents workbook_id, element_id, or timeout_seconds (default 300). The single word 'timeout' in the description is the only hint, and it never states units, default, or what a timeout does – this is the exact case where the description must compensate and it does not.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('trigger materialization') plus a resource ('element') and adds the distinguishing behavior 'poll until complete or timeout'. It does not, however, contrast itself with the sibling elements_materialize_element or elements_get_materialization_job, so an agent must infer which variant to pick.

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?

No when-to-use guidance and no mention of alternatives. Given two obvious siblings (async trigger and job-status poll), the description never says 'use this when you want a blocking wait' or 'prefer materialize_element for fire-and-forget'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

elements_materialize_elementElements Materialize ElementC

Trigger materialization for a workbook. Pass elementId in body if needed.

NameRequiredDescriptionDefault
element_idYes
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that: it does not say the operation is asynchronous, that it likely returns a job id, or that the sibling elements_get_materialization_job is needed to follow up.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences with no padding, which is the right size. But brevity here comes at the cost of correctness: the second sentence is both vague ("if needed") and inconsistent with the schema's required field.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values need no explanation, but for an async materialization trigger with zero parameter documentation and a nearer sibling tool, the definition omits the async/job behavior and any indication of when the caller should wait or poll.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must carry the burden — and it does not help. It refers to "elementId" (schema uses element_id, a casing mismatch) and says "if needed" while the schema marks element_id as required, which is actively misleading. workbook_id is never mentioned.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ("Trigger materialization") but scopes it vaguely to "a workbook" when the schema requires both workbook_id and element_id, so the actual target is unclear. It also fails to distinguish itself from the very close sibling elements_materialize_and_wait.

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?

No when-to-use guidance at all. The most important routing decision — this tool versus elements_materialize_and_wait, which likely blocks until completion — is never mentioned, nor is any precondition for materialization.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

elements_search_docsElements Search DocsA
Read-only

Search Sigma Computing documentation using AI-powered semantic search. Returns relevant doc passages with source URLs. Use this to answer questions about Sigma features, configuration, formulas, administration, embedding, and best practices.

read_only_hint: True

NameRequiredDescriptionDefault
queryYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, openWorldHint=true, destructiveHint=false, so the safety and scope profile is covered. The description adds that the search is semantic rather than keyword-based and returns source URLs, which is genuinely useful context, but the output schema already documents the return shape.

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, front-loaded with the action and return, then the usage trigger. Nothing is wasted, though the topic enumeration is slightly list-heavy for the value it adds.

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 tool has an output schema and full annotation coverage, so the description only needs to supply purpose and usage context, which it does. It is nearly complete, missing only the relationship to the sibling doc-retrieval tool and any note about index freshness or result 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?

There is a single `query` parameter with the schema description coverage at 0%, so the description must carry the load. It implies a natural-language question via 'AI-powered semantic search' and the topic list, but gives no guidance on query phrasing, length, or whether exact identifiers work. For one obvious parameter this is adequate but not additive.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Search Sigma Computing documentation') and adds the mechanism ('AI-powered semantic search') plus the return shape ('relevant doc passages with source URLs'). It is clear what the tool does, but it never distinguishes itself from the related sibling elements_get_doc_page, which also serves documentation 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?

'Use this to answer questions about Sigma features, configuration, formulas, administration, embedding, and best practices' gives a concrete set of triggering topics, which is strong context. However, it offers no exclusions and never names an alternative (e.g., elements_get_doc_page for a specific known page), so the routing decision is left partly to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

elements_swap_template_sourcesElements Swap Template SourcesA

Swap data sources on a template. Use connectionMapping for connection-level swaps, sourceMapping for table-level swaps.

NameRequiredDescriptionDefault
template_idYes
source_mappingNo
connection_mappingNo

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare this is a non-read-only, non-destructive, open-world mutation, so the safety profile is covered structurally. The description adds the connection-vs-table swap distinction, but says nothing about reversibility, whether source swap policies gate the operation (a sibling tool exists for those), or what side effects occur on unmapped sources.

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 short sentences, purpose front-loaded and the parameter guidance appended with zero padding or redundancy.

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?

An output schema exists, so return values need not be described. Still, for an open-world mutation with three undocumented parameters, the description omits prerequisites (e.g., source swap policy eligibility) and the mapping entry structure, leaving gaps for correct invocation.

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 0%, so the description must carry parameter meaning — and it does explain the roles of the two mapping arrays (connection-level vs table-level). It says nothing about template_id or the shape/required fields of the mapping entries, so the compensation is partial.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Swap data sources on a template'), which cleanly distinguishes it from the workbook- and report-scoped swap siblings (elements_swap_workbook_sources, datasets_swap_report_sources). It does not explicitly name those alternatives, but the 'template' scope is clear enough to route correctly.

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?

Provides selection guidance between two parameters ('Use connectionMapping for connection-level swaps, sourceMapping for table-level swaps'), which implicitly tells the agent which one to reach for. However, it gives no when-to-use context versus other swap tools, no prerequisites, and no exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

elements_swap_workbook_sourcesElements Swap Workbook SourcesB

Swap data sources for a workbook. Use connectionMapping for connection-level swaps, sourceMapping for table-level swaps.

NameRequiredDescriptionDefault
workbook_idYes
source_mappingNo
connection_mappingNo

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds nothing behavioral beyond this: no note on reversibility, permissions required, or what happens to existing source bindings when swapped.

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 tight sentences, front-loaded with the core action and then the parameter disambiguation. No wasted words for a three-parameter tool.

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?

An output schema exists, so return values need not be described. However, for a mutation tool with 0% schema coverage and no parameter descriptions, the definition leaves the mapping-object structure and any post-swap side effects undocumented.

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 0%, so the description carries the burden. It clarifies that connection_mapping targets connection-level swaps and source_mapping targets table-level swaps (though using camelCase names that differ from the schema's snake_case), but says nothing about the structure or format of the mapping entries.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clear verb+resource: 'Swap data sources for a workbook' tells the agent exactly what is mutated. It implicitly distinguishes itself from sibling swap tools (datasets_swap_data_model_sources, datasets_swap_report_sources, elements_swap_template_sources) by scoping to a workbook, though it never names those alternatives.

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 explains which parameter to use for connection-level vs table-level swaps, but gives no guidance on when to choose this tool over the sibling swap tools or any prerequisites. This is parameter guidance rather than tool-selection guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

elements_update_source_swap_policyElements Update Source Swap PolicyC

Update a source swap policy (Beta).

body may set type, name, fromConnectionId and swaps.

NameRequiredDescriptionDefault
bodyYes
policy_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=false and openWorldHint=true, so the safety profile is covered. Beyond that, the description adds almost nothing: it does not say whether the update is a full replace or a partial merge, how 'swaps' interacts with existing policy state, or what a '(Beta)' designation implies for stability. The field list hints at mutation scope but leaves the real behavioral questions open.

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?

Two short sentences with the action front-loaded and no filler. The second sentence is a terse fragment, which is efficient though slightly cryptic.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described. However, for a mutating tool with a free-form required body object and zero schema descriptions, the description leaves the agent guessing about field shapes, replacement semantics, and permissions — the core things needed to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% and the body is a free-form nested object, so the description must carry the parameter burden. It names four possible body keys (type, name, fromConnectionId, swaps) but gives no types, allowed values, or meaning for any of them, and never explains policy_id. Partial but far from sufficient for a nested required body.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: 'Update a source swap policy'. The verb distinguishes it from the sibling get/create/delete/list source swap policy tools without ambiguity. It stops short of explaining what a 'source swap policy' is or what the update affects.

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?

No guidance on when to use this versus elements_create_source_swap_policy or elements_list_source_swap_policies, nor any prerequisites such as required permissions or whether the policy must already exist. The only implicit cue is the word 'Update'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_accept_shared_templateWorkbooks Accept Shared TemplateC

Accept a pending template share from another organization.

NameRequiredDescriptionDefault
share_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=false, and openWorldHint=true, so the mutation profile and cross-organization reach are covered structurally. The description adds the useful detail that the share originates in another organization, but says nothing about irreversible side effects, permission requirements, or what the accepted resource becomes.

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?

One sentence, front-loaded with the verb, no filler or redundancy. It is efficient, though the brevity edges toward under-specification rather than tight completeness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values need no explanation, but for a cross-organization mutation with an undocumented identifier parameter the definition leaves real gaps: no discovery path for share_id, no stated effect of acceptance, and no error or authorization context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter share_id has 0% schema description coverage and the description offers no definition, format, or source for it. With only one parameter the agent needs the description to say where a share_id comes from (e.g., the list-shared-templates sibling), and it does not.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: accepting a pending template share, scoped to shares from another organization. That phrasing is enough to separate it from siblings like workbooks_list_shared_templates or workbooks_deploy_template_to_folder, though it never names those siblings explicitly.

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?

No when-to-use guidance, no prerequisites, and no pointer to how a pending share arises or where to list one before accepting. The word "pending" hints at a precondition but the agent gets no instruction about verifying or discovering it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_add_workbook_bookmarkWorkbooks Add Workbook BookmarkC

Add a bookmark to a workbook.

NameRequiredDescriptionDefault
bodyYes
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare it is a non-read-only, non-destructive, open-world write. The description adds nothing beyond that: no note on permissions required, whether duplicate bookmarks are rejected, or whether the write is idempotent. For a mutation tool it leaves the behavioral profile carried entirely by annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler, but that brevity comes at the cost of under-specification rather than genuine conciseness — there is simply nothing to trim and nothing to structure.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values need not be described, but the tool takes an untyped nested body object with zero documentation, and the description supplies no compensating detail about payload shape or side effects. Not adequate for a write tool whose main parameter is opaque.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the description mentions no parameters at all. Critically, 'body' is an opaque object with additionalProperties=true, so the agent has no idea what fields a bookmark payload requires — the description neither names nor constrains them.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Add a bookmark to a workbook'), which is unambiguous and distinguishable from the list/get siblings. It does not, however, contrast itself against the nearby workbooks_list_workbook_bookmarks sibling or clarify scope (which workbook-level bookmark set it joins).

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?

No guidance on when to use this versus alternatives (e.g., listing existing bookmarks first, or workbook vs report bookmarks). The agent must infer all context from the name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_add_workbook_scheduleWorkbooks Add Workbook ScheduleC

Create a scheduled export for a workbook. See Sigma docs for schedule body schema.

NameRequiredDescriptionDefault
bodyYes
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=false, openWorldHint=true, so the safety profile is covered. The description adds only that the artifact is a recurring 'scheduled export'; it says nothing about required permissions, whether the schedule starts immediately, cadence behavior, or side effects, and defers entirely to external docs.

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?

Two short front-loaded sentences with no filler. The second sentence is a bare pointer to external documentation rather than actionable content, which limits its value but keeps the definition tight.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutation tool with a nested, undocumented request body, the description omits the schema of 'body' entirely and relies on an out-of-band doc lookup. Having an output schema means return values need not be explained, but the input side is inadequately covered.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description does not compensate. The free-form 'body' object (additionalProperties: true) is the entire substance of the request and the description only points to 'Sigma docs', leaving the agent unable to construct a valid payload from the definition alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: 'Create a scheduled export for a workbook.' This is clear and distinguishable from the list/delete schedule siblings and the report-schedule variant, though it doesn't explicitly name those alternatives.

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?

No when-to-use guidance at all. With siblings like workbooks_create_report_schedule, workbooks_export_workbook and workbooks_list_workbook_schedules present, the agent gets no signal on when this tool is the right choice versus a one-off export or a report-level schedule.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_convert_workbook_to_reportWorkbooks Convert Workbook To ReportA

Convert a workbook to a report (one-way, creates a new report).

workbook_id: ID of the workbook to convert. name: Name for the new report (required by the API). destination_folder_id: Optional folder ID for the report; defaults to My Documents.

NameRequiredDescriptionDefault
nameYes
workbook_idYes
destination_folder_idNo

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the write (readOnlyHint=false) and non-destructive (destructiveHint=false) profile, and the description helpfully clarifies 'one-way' so the agent knows the source workbook is preserved rather than mutated. Beyond that it says nothing about permissions, failures, or side effects, which is acceptable but thin against an already-covered safety profile.

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 one-line purpose with the 'one-way, creates a new report' parenthetical is front-loaded, and the three parameter glosses each earn their place. No filler.

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 3-parameter mutation tool with an output schema (so return values need no explanation) and annotations covering safety, the definition gives enough: source, required name, and destination default. Missing only the explicit alternative-selection guidance.

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 0%, so the description must carry parameter meaning, and it does: it explains workbook_id as the source, marks name as required by the API, and documents destination_folder_id as optional with its default ('My Documents'). Format details (ID syntax) are absent, but the semantics per parameter are clear.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('convert a workbook to a report') and adds the key qualifier that it is one-way and produces a NEW report, which distinguishes it from create_report and duplicate_report. It doesn't name a sibling directly, so an agent must still infer the boundary, but the purpose is 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 the use case (produce a report from an existing workbook) and notes the one-way nature, but never says when to prefer this over workbooks_create_report, workbooks_duplicate_report, or workbooks_save_template_from_workbook. Usage is inferable rather than explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_copy_workbook_to_memberWorkbooks Copy Workbook To MemberB

Copy a workbook into a member's My Documents folder.

name: Optional name for the copied workbook. Defaults to the original workbook name.

NameRequiredDescriptionDefault
nameNo
member_idYes
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already disclose that this is a non-destructive write operation with open-world effects. The description adds useful behavioral context: the copied workbook lands in the target member's My Documents folder and the name defaults to the original workbook name. It does not cover permission or authorization requirements for writing into another member's folder.

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 short sentences, front-loads the core action, and contains no filler. The name-default detail is placed cleanly after the primary purpose.

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?

An output schema exists, so return values need not be described, and annotations cover mutation safety. However, the description omits authorization context for copying into another member's folder and provides no semantics for two of three parameters, leaving clear gaps for a write operation with open-world scope.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must carry parameter semantics. It only clarifies the optional name parameter's default behavior, leaving member_id and workbook_id meaning to inference from their names 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 gives a specific verb ('Copy') and resource ('a workbook'), plus a precise destination ('a member's My Documents folder'). This scoping distinguishes it from siblings like workbooks_duplicate_workbook and workbooks_create_workbook.

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 states what the tool does but gives no when-to-use guidance, no prerequisites, and no alternatives. It never mentions when to choose this over duplicating or creating a workbook.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_create_reportWorkbooks Create ReportD

Create a report.

NameRequiredDescriptionDefault
bodyYes

Output Schema

NameRequiredDescription
resultYes

TDQS

D1.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond them: it does not say what the required body must contain, whether the report is created empty or from a spec, or what side effects occur.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The sentence is short but is under-specification rather than conciseness — one tautological phrase that carries no informational weight. There is no front-loaded detail to trim because none exists.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described. However, this open-world mutation tool has an entirely opaque required nested body object and no indication of what constitutes a valid report spec, making the definition inadequate for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single required parameter `body` is a free-form object with additionalProperties=true and 0% schema description coverage. The description provides no field names, structure, or format guidance, leaving the agent with no way to construct a valid payload.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

"Create a report" merely restates the tool name (workbooks_create_report) and title with no added specificity. It does not distinguish this tool from close siblings such as workbooks_duplicate_report, workbooks_convert_workbook_to_report, or workbooks_create_report_schedule, which an agent could easily confuse it with.

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?

No when-to-use, prerequisite, or alternative guidance is given. The agent gets no signal about which sibling to choose when the user wants a new report versus a duplicated or converted one, nor any note about the payload needed.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_create_report_grantWorkbooks Create Report GrantB

Grant users or teams permission on a report.

body requires grants: a list of {grantee: {memberId} or {teamId}, permission: 'view' | 'edit'}.

NameRequiredDescriptionDefault
bodyYes
report_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is a non-destructive write operation (readOnlyHint false, destructiveHint false, openWorldHint true). The description adds the payload shape (grants list with grantee and permission values) but does not disclose auth requirements, side effects such as replacing existing grants, or other 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the action and then the payload requirement. No wasted words, though the second sentence is slightly terse and could benefit from a brief clarification of whether grants replace or add to existing permissions.

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 annotations (which cover safety profile) and an output schema (so return values needn't be explained), the description is adequate for invocation. However, it omits prerequisites (e.g., required admin/owner permissions), whether it replaces or appends existing grants, and any rate-limit or error behavior.

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 0%, so the description must carry parameter meaning. It does a good job describing the complex nested body parameter: a list of objects with grantee (memberId or teamId) and permission enum ('view' | 'edit'). The report_id parameter is obvious and not explained, but the critical nested structure is well covered.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb (Grant) and resource (permission on a report), making it clear this is a grant-creation tool. It implicitly distinguishes from sibling tools like workbooks_delete_report_grant and workbooks_grant_workbook_access via the 'report' resource, but does not explicitly name alternatives.

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 offers no guidance on when to use this tool versus alternatives, no prerequisites, and no exclusions. It merely states the action and payload requirements.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_create_report_scheduleWorkbooks Create Report ScheduleC

Create a scheduled export for a report.

NameRequiredDescriptionDefault
bodyYes
report_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already disclose that this is a non-read-only, non-destructive, open-world mutation, so safety basics are covered. The description adds nothing beyond that: it doesn't say what happens on duplicate schedules, whether creation is idempotent, what permissions are needed, or what the schedule body must contain.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is a single front-loaded sentence with no padding, which is structurally clean. But at this length it is under-specification rather than true conciseness, since essential calling information is simply absent.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described. Still, for a mutation tool whose only payload is an opaque nested object, the description leaves the agent without the body contract or any behavioral context needed to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the description offers no parameter detail at all. The 'body' parameter is an untyped free-form object with additionalProperties true, so the agent has no idea what fields (cadence, recipients, format) it must supply — the description fails to compensate for a total schema gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource ('Create a scheduled export for a report'), which is clear enough for an agent to know what it does. However, it does not distinguish this tool from its close sibling workbooks_add_workbook_schedule (or workbooks_list_report_schedules), so the report-vs-workbook boundary is left to inference.

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?

There is no when-to-use guidance, no mention of prerequisites (e.g., the report must exist, required scopes), and no pointer to the alternative schedule tools. The agent gets no help deciding between this and workbooks_add_workbook_schedule.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_create_workbookWorkbooks Create WorkbookC

Create an empty workbook in a folder.

NameRequiredDescriptionDefault
nameYes
folder_idYes
descriptionNo

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds only that the workbook is created empty and placed in a folder; it says nothing about permission requirements, name collisions, or side effects on the target folder. With annotations carrying the main burden, this is modest added value.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single efficient sentence with the key constraint ('empty') and location front-loaded. It is not padded, though the extreme brevity is arguably under-specification rather than optimal conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values need not be described, but for a 3-parameter mutation tool with 0% schema coverage and no usage or behavioral detail, the description leaves too much unstated for an agent to call it confidently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and no parameter is explained in the description. 'in a folder' weakly implies folder_id, but the required 'name' and the optional 'description' parameter are entirely undocumented, leaving the description unable to compensate for the schema gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb (Create) + resource (workbook) with a scope qualifier ('empty', 'in a folder'), so an agent knows it produces a blank workbook rather than a copy. It does not, however, distinguish itself from siblings like workbooks_create_workbook_from_template or workbooks_duplicate_workbook.

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 offers no when-to-use context, no prerequisites (e.g., folder must exist, name uniqueness), and no routing guidance among the many sibling creation tools. The agent must infer that this is the tool for a blank workbook versus template-based or duplicated ones.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_create_workbook_embedWorkbooks Create Workbook EmbedA

Create an embed for a workbook.

embed_type: Visibility of the embed. Only 'public' is currently supported. source_type: Scope of the embed — 'workbook' (entire workbook), 'page', or 'element'. source_id: Required when source_type is 'page' or 'element'.

NameRequiredDescriptionDefault
source_idNo
embed_typeNopublic
source_typeNoworkbook
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the mutation profile (readOnlyHint=false, destructiveHint=false, openWorldHint=true), so the bar is lower. The description usefully adds a capability constraint ('Only public is currently supported') and the source_type/source_id dependency, but says nothing about permissions needed, duplicate-embed behavior, or idempotency.

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?

One summary sentence followed by three one-line parameter glosses, front-loaded with the core action. Every sentence adds information; no filler.

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?

An output schema exists, so return values need no explanation, and annotations cover the safety profile. The description adequately covers the non-obvious parameter interactions; it could still mention error behavior or unsupported embed_type values beyond 'public'.

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 0% and no enums are declared formally, so the description carries the full burden — and it does document 3 of 4 parameters with meaningful semantics, including the conditional requirement linking source_id to source_type. workbook_id is left undocumented, but its meaning is obvious from the tool name.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb+resource ('Create an embed for a workbook'), which is unambiguous even among 120+ siblings. It does not name the sibling it differs from (workbooks_list_workbook_embeds), but the create/list split is self-evident from the verb.

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?

Usage is only implied by the name and by the conditional note that source_id is required for 'page'/'element' sources. There is no explicit when-to-use, when-not-to-use, or pointer to an alternative tool for inspecting or removing embeds.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_create_workbook_from_templateWorkbooks Create Workbook From TemplateB

Create a workbook from a template. This brings real visuals — the only programmatic way to get charts/tables.

NameRequiredDescriptionDefault
nameNo
folder_idYes
template_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the safety profile (readOnlyHint=false, destructiveHint=false, openWorldHint=true), so the mechanics are partly covered. The description adds one capability trait (chart/table visuals only via template), but says nothing about required permissions, what folder placement means, or side effects of creating the new workbook.

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?

Two short sentences, front-loaded with the action and then the differentiator. The second sentence is somewhat promotional ('real visuals'), but it carries a genuine capability distinction, so little is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values need not be explained, but a creation tool with three undocumented parameters, no permission/prerequisite note, and no pointer to template-source siblings leaves the agent guessing how to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across three parameters, including two required ones (template_id, folder_id), so the description carries the full documentation burden and does not meet it. Only template_id is faintly implied by 'from a template'; name and folder_id are never explained.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Create a workbook from a template') and the 'from a template' qualifier distinguishes it from workbooks_create_workbook and workbooks_duplicate_workbook. It does not name those siblings explicitly, so an agent must infer the distinction rather than read it.

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 claim that this is 'the only programmatic way to get charts/tables' gives a reason to choose this tool over a blank-workbook creation, which is useful implied guidance. However, there is no explicit when-to-use/when-not, no mention that a template_id must first come from workbooks_list_templates or workbooks_get_template, and no named alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_delete_report_grantWorkbooks Delete Report GrantA
Destructive

Delete a grant from a report. Requires confirm=True.

NameRequiredDescriptionDefault
confirmNo
grant_idYes
report_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true, openWorldHint=true, readOnlyHint=false, so the danger profile is covered structurally. The description adds real value by disclosing the confirm gate that the schema only shows as a boolean defaulting to false, which prevents a failed call. It stops short of stating whether the deletion is reversible or who may perform 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?

Two short sentences with the action first and the hard precondition second; nothing is wasted and nothing important is buried.

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?

An output schema exists so return values need no explanation, and the destructive profile is covered by annotations. Still, for an irreversible grant removal with undocumented IDs, the definition is thin on authorization requirements and side effects.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It only explains the confirm flag; report_id and grant_id are left entirely to their names, with no format, ID source, or lookup guidance (e.g., via workbooks_list_report_grants).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Delete a grant from a report'), which cleanly separates it from siblings like workbooks_create_report_grant or workbooks_delete_workbook_grant. The sibling differentiation is implicit via the scope in the name/description but not called out.

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 mandatory 'Requires confirm=True' condition is stated, which is genuinely needed to call it successfully. However, there is no guidance on when to revoke a grant versus other access-removal routes, and no mention of prerequisites such as ownership or admin rights.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_delete_report_scheduleWorkbooks Delete Report ScheduleA
Destructive

Delete a report's scheduled export. Requires confirm=True.

NameRequiredDescriptionDefault
confirmNo
report_idYes
schedule_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true and readOnlyHint=false. The description adds a meaningful safety gate (confirm=True), which is useful beyond the annotations, but says nothing about irreversibility, whether the schedule disappears immediately, or what happens to the report. It also slightly conflicts with the schema, where confirm defaults to false and is not in the required list — the agent must infer that enforcement happens server-side.

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?

Two short sentences, both load-bearing, with the action front-loaded and the safety gate second. Nothing is wasted, though the terse style borders on under-specification rather than tightness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive single-target mutation, the essentials are present: what is deleted and that a confirm flag is required, plus annotations covering safety and an output schema covering returns. What is missing is identifier provenance and post-deletion effects, which an agent would want before invoking an irreversible operation.

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 0%, so the description must compensate. It clarifies the confirm flag's required value, which is real added meaning, but leaves report_id and schedule_id entirely undocumented — their format, source (e.g., from workbooks_list_report_schedules), and constraints are unstated.

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 and resource ('Delete a report's scheduled export'), which cleanly separates it from siblings like workbooks_delete_workbook_schedule and workbooks_update_report_schedule. An agent can pick it without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives the operational precondition ('Requires confirm=True') but never says when to choose this over workbooks_update_report_schedule or how it relates to workbooks_list_report_schedules. Usage is implied by the verb only.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_delete_shared_templateWorkbooks Delete Shared TemplateA
Destructive

Delete a template share. Requires confirm=True. Retrieve share IDs with workbooks_list_shared_templates.

NameRequiredDescriptionDefault
confirmNo
share_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true and readOnlyHint=false, so the safety profile is known. The description adds value beyond that by flagging that confirm=True is required even though the schema defaults it to false and does not list it as required — a genuine behavioral detail. It doesn't say what access is lost when the share is deleted, keeping it at a 4.

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 short sentences, the action and its confirm requirement front-loaded, with the ID-retrieval hint last. 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?

For a 2-parameter destructive tool with an output schema and full annotation coverage, the description supplies the required confirm semantics and the ID source. It omits any note about consequences of deletion, a minor gap given everything else is structured.

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 0%, so the description carries the burden. It compensates by explaining that confirm must be true (clarifying a default-false, non-required boolean) and by pointing to the tool that yields share_id. That covers both parameters meaningfully, though it doesn't describe share_id format.

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 and resource ('Delete a template share') that is unambiguously distinct from the sibling workbooks_list_shared_templates and workbooks_accept_shared_template. An agent can tell exactly what this does 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 Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly names the prerequisite for finding the target ('Retrieve share IDs with workbooks_list_shared_templates') and states the confirm requirement, which is real routing guidance. It stops short of stating when-not-to-use or irreversibility warnings, so not a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_delete_workbook_bookmarkWorkbooks Delete Workbook BookmarkA
Destructive

Delete a saved view (bookmark) from a workbook. Requires confirm=True.

NameRequiredDescriptionDefault
confirmNo
bookmark_idYes
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true and openWorldHint=true, so the safety profile is partly covered. The description adds the important behavioral requirement that confirm=True must be supplied, though it does not state whether deletion is permanent.

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 short sentences, front-loaded with the action and followed by the key prerequisite. No wasted wording.

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 is a simple destructive mutation, and annotations plus the output schema cover some context. Still, the description omits whether the bookmark deletion is permanent and does not compensate for the undocumented parameters.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description should compensate for all three parameters. It only implies the confirm parameter and gives no explicit meaning for workbook_id or bookmark_id, leaving their semantics to the schema names 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?

States a specific verb and resource: delete a saved view (bookmark) from a workbook. This clearly distinguishes it from sibling bookmark operations such as add or update.

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 the confirm=True prerequisite, which is useful usage context. However, it does not explain when to choose this over alternatives or note that deletion is likely irreversible.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_delete_workbook_embedWorkbooks Delete Workbook EmbedA
Destructive

Delete an embed from a workbook. Requires confirm=True.

Retrieve embed IDs with workbooks_list_workbook_embeds. Embeds that use the embed URL stop working.

NameRequiredDescriptionDefault
confirmNo
embed_idYes
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true and readOnlyHint=false, so the safety profile is known. The description adds genuine context beyond annotations: the mandatory confirm=True gate and the specific consequence that embeds using the embed URL stop working.

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 short sentences with no waste, each contributing a distinct fact: the operation, the confirmation requirement, the source of IDs, and the side effect. The core action is 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?

With an output schema present, return values need no explanation, and the description covers prerequisites and consequences of a destructive mutation. It is nearly complete, lacking only a note on workbook_id semantics or error behavior.

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 0%, so the description must compensate, and it explains the confirm parameter's required value plus how to obtain embed_id. The workbook_id parameter is left implicit, which is a minor gap for a three-parameter tool.

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 and resource ('Delete an embed from a workbook') and implicitly distinguishes itself from the listing sibling by telling the agent where embed IDs come from. An agent can identify the operation and its target 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 Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Names the sibling tool to use for obtaining embed IDs and states the required confirm=True precondition, which is concrete routing guidance. It does not describe when deletion should be avoided or what alternatives exist beyond listing, 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.

workbooks_delete_workbook_grantWorkbooks Delete Workbook GrantA
Destructive

Delete a grant (a user's or team's permission) from a workbook. Requires confirm=True.

Retrieve grant IDs with workbooks_list_workbook_grants.

NameRequiredDescriptionDefault
confirmNo
grant_idYes
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true and readOnlyHint=false, so the safety profile is known. The description adds the non-obvious operational constraint that confirm=True is mandatory (the schema only shows a default of false with no description), which is genuine extra context; it does not address irreversibility or what happens to the grantee's access.

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 short sentences, the destructive action and its scope first, the prerequisite second. No filler.

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 what is removed, the confirmation gate, and how to obtain the ID; an output schema exists so return values need no explanation. The only gap is that the permanent nature of the deletion is left implicit for a destructive 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 0%, so the description carries the burden and does meaningful work: it explains the confirm flag's role and tells the agent where grant_id comes from. workbook_id remains unexplained and the grant_id format is 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?

States a specific verb and resource ('Delete a grant ... from a workbook') and defines what a grant is (a user's or team's permission), which makes it unmistakable against sibling listing tools like workbooks_list_workbook_grants.

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?

Gives a concrete prerequisite workflow — retrieve grant IDs with workbooks_list_workbook_grants — and states the confirm=True requirement. It stops short of explicit when-not-to-use guidance or warning that the deletion is permanent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_delete_workbook_scheduleWorkbooks Delete Workbook ScheduleA
Destructive

Delete a scheduled export. Requires confirm=True.

NameRequiredDescriptionDefault
confirmNo
schedule_idYes
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true, readOnlyHint=false, and openWorldHint=true, so the safety profile is covered. The description adds the non-obvious confirmation gate, which is real behavioral context beyond structured fields. It stops short of explaining permanence or side effects on the workbook.

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 short sentences, no filler, and the destructive action is stated first with the confirmation requirement immediately after. 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?

An output schema exists, so return values need not be described, and annotations cover the destructive/mutation profile. However, with 0% schema parameter coverage on a destructive tool, the description omits permission prerequisites, irreversibility, and what happens to the schedule's prior exports.

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 0%, so the description should carry more of the burden. It clarifies the most hazardous parameter (confirm must be True), but says nothing about schedule_id or workbook_id beyond their self-evident names. Partial compensation, not full.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Delete a scheduled export.' This is clearly distinct from siblings like workbooks_add_workbook_schedule and workbooks_list_workbook_schedules. It does not explicitly name those alternatives, so 4 rather than 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives one explicit precondition ('Requires confirm=True'), which is genuinely useful for correct invocation, but provides no guidance on when to delete vs. disable, no permission requirements, and no mention of alternatives. Usage is mostly implied by the name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_deploy_template_to_folderWorkbooks Deploy Template To FolderC

Full deployment: instantiate a template into a folder, then optionally swap its sources.

NameRequiredDescriptionDefault
nameYes
folder_idYes
template_idYes
connection_mappingNo

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=false, destructiveHint=false and openWorldHint=true, so safety is largely covered. The description usefully discloses that this is a composite two-step operation (instantiate then optionally swap sources), which is beyond what annotations say, but it omits permissions, collision/overwrite behavior, and whether the swap is transactional.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler, leading with the primary action and appending the optional step. Efficient, though extremely terse for the amount of behavior being described.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, but this is an open-world composite mutation with 4 parameters at 0% schema coverage and no usage or failure guidance. The description leaves too much unspecified for an agent to call it confidently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate and largely does not. It maps loosely onto template_id and folder_id, but says nothing about the required 'name' parameter (naming/collision semantics) or the format and meaning of 'connection_mapping'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a concrete verb+resource: 'instantiate a template into a folder' plus the optional source-swap step. This is clearly distinct from read/duplicate siblings, though it never names the closest alternative (workbooks_create_workbook_from_template) to sharpen the distinction.

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?

No guidance on when to pick this over workbooks_create_workbook_from_template or a create-then-elements_swap_template_sources sequence. The word 'optionally' hints at a conditional step but never states the condition or the alternative path.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_download_query_exportWorkbooks Download Query ExportA
Read-only

Download an exported query result file by queryId.

Returns the file content (JSON or text/CSV) or base64 binary (PDF, XLSX, PNG), or reports 'processing' if the query has not finished executing. max_bytes: Maximum allowed payload size in bytes (default 10 MB).

NameRequiredDescriptionDefault
query_idYes
max_bytesNo

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description goes beyond them by disclosing the async lifecycle ('reports processing if the query has not finished executing') and the payload encodings returned, which is genuinely useful operational context.

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 short sentences, front-loaded with the action and key, then behavior, then the parameter note. No filler, though the trailing max_bytes sentence reads slightly detached from the main flow.

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?

An output schema exists, so return values need not be re-explained, and the async 'processing' state is covered. However, it omits what happens when the payload exceeds max_bytes (truncation vs. error) and where query_id comes from, which are real gaps for a download 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 description coverage is 0%, so the description must carry parameter meaning. It explains max_bytes (size cap in bytes, 10 MB default) though the default is already in the schema, but says nothing about the query_id format or where to obtain it. It compensates for only half the parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Download an exported query result file') plus the lookup key (queryId), which clearly separates it from the export-side siblings like workbooks_export_workbook and workbooks_export_and_download. It stops short of naming which sibling produces the queryId, so the distinction is implied rather than explicit.

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?

Usage is only implied: the phrase 'an exported query result file by queryId' suggests a prior export/query execution must have happened, but the description never states prerequisites or when to prefer this over workbooks_export_and_download. No explicit when-to-use or when-not guidance is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_duplicate_reportWorkbooks Duplicate ReportC

Duplicate a report.

report_id: ID of the report to clone. name: Name for the new cloned report (required by the API). destination_folder_id: ID of the destination folder to clone into (required by the API).

NameRequiredDescriptionDefault
nameYes
report_idYes
destination_folder_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare this is a non-read-only, non-destructive, open-world write operation. The description adds only that name and destination_folder_id are "required by the API," and says nothing about what content is carried into the clone (data sources, schedules, permissions) or any auth/scope requirements, so it barely improves on the structured hints.

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 action is front-loaded in a single sentence, followed by a compact parameter list with no filler. Structure is clean and appropriately sized, though it is terse to the point of omitting useful context.

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?

An output schema exists, so return values need no explanation, and all three params are covered. Still missing is the scope of the duplication (what travels with the report, whether the original is affected) and any differentiation from workbooks_duplicate_workbook, leaving a mutation tool adequately but thinly specified.

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 0%, so the description must carry the meaning, and it does give a one-line gloss for each of the three params (report to clone, name for the clone, destination folder). However, the glosses largely restate the parameter names and add no format or constraint detail (e.g., ID format, folder ID expectations).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

"Duplicate a report" gives a specific verb and resource, so an agent can tell it apart from most siblings. It does not, however, contrast itself with the closely related workbooks_duplicate_workbook sibling, leaving the report-vs-workbook distinction to inference from the name.

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 offers no when-to-use guidance, no prerequisites, and no alternatives. It never mentions workbooks_duplicate_workbook or explains when a caller should clone a report rather than a workbook or use workbooks_create_report, so tool selection relies entirely on the name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_duplicate_tagged_reportWorkbooks Duplicate Tagged ReportB

Duplicate the version of a report carrying a version tag into a folder as a new report.

tag_name is the version tag NAME. Returns the new report.

NameRequiredDescriptionDefault
nameYes
tag_nameYes
report_idYes
descriptionNo
destination_folder_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare readOnlyHint=false, destructiveHint=false, and openWorldHint=true, so the agent knows this is a non-destructive mutation. The description adds that a new report is returned, but does not explain permission requirements, whether the destination folder must exist, how name collisions are handled, or other 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?

The description is two short sentences with the core action front-loaded and no wasted text. The tag_name clarification is the only parameter detail included and is stated efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is a mutation with five parameters at 0% schema coverage. The description gives the overall purpose and output behavior, but it leaves required parameters like destination_folder_id and name unexplained, which is a significant gap for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must carry parameter meaning. It clarifies only tag_name as the version tag NAME, leaving report_id, destination_folder_id, name, and description undocumented despite four of them being required.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action: duplicate a tagged report version into a folder as a new report. This clearly distinguishes it from a plain report duplication in concept, though it does not explicitly name the sibling workbooks_duplicate_report as the alternative.

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?

Usage is implied by the phrase 'version of a report carrying a version tag', which suggests this tool is for tag-based version duplication. However, it does not explicitly state when to use this versus workbooks_duplicate_report or workbooks_duplicate_tagged_workbook, nor does it list prerequisites or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_duplicate_tagged_workbookWorkbooks Duplicate Tagged WorkbookA

Duplicate the version of a workbook carrying a version tag into a folder as a new workbook.

tag_name is the version tag NAME (e.g. 'Production'). copy_bookmarks is "all" (every saved view; admins only) or "accessible" (personal saved views and those shared with the caller); leave it unset to copy none. Returns the new workbook.

NameRequiredDescriptionDefault
nameYes
tag_nameYes
descriptionNo
workbook_idYes
copy_bookmarksNo
destination_folder_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With readOnlyHint=false and destructiveHint=false already declared, the description adds real value: it confirms the source workbook is left intact and a NEW workbook is produced, notes the admin-only requirement for copy_bookmarks='all', and states the default when the field is omitted. It doesn't cover failure modes (existing name in destination folder, missing folder, missing tag), which would be the remaining gap.

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?

Front-loaded with the core action, then parameter clarifications, then the return value — no filler sentences. Minor formatting awkwardness from mid-sentence line breaks, but every sentence carries information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Output schema and annotations already cover return shape and safety profile, so the description only needs to fill behavioral and parameter gaps. It handles the trickiest parameter and the admin constraint well; it is slightly thin on required-identifier parameters and on what happens if the tag doesn't exist in the workbook's version history.

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 0%, so the description must compensate, and it fully covers tag_name (NAME not ID, with an example) and copy_bookmarks (enum semantics plus default). However workbook_id, destination_folder_id, name, and description are not addressed at all — notably whether 'description' applies to the new workbook — leaving four of six parameters to inference.

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 (duplicate) plus a precisely scoped resource: 'the version of a workbook carrying a version tag', and names the outcome (a new workbook in a folder). That scoping is what separates it from the sibling workbooks_duplicate_workbook, so an agent can route correctly 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 Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explains how to use copy_bookmarks (including the admin-only constraint and the 'unset = copy none' default), which is genuine usage guidance. But it never says when to choose this over workbooks_duplicate_workbook, workbooks_duplicate_tagged_report, or workbooks_create_workbook_from_template — the closest alternatives go unmentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_duplicate_workbookWorkbooks Duplicate WorkbookA

Duplicate an existing workbook.

workbook_id: ID of the workbook to clone. name: Name for the new cloned workbook (required by the API). destination_folder_id: ID of the destination folder. If omitted, clones into the same folder as the original.

NameRequiredDescriptionDefault
nameYes
workbook_idYes
destination_folder_idNo

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=false and openWorldHint=true, so the write-but-non-destructive profile is covered structurally. The description adds useful behavioral facts: that `name` is required by the API and that omitting destination_folder_id clones into the original's folder. It still says nothing about permissions, whether the original is touched, 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?

One lead sentence plus three tight per-parameter lines, front-loaded with the action before the details. No filler.

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 an output schema present, return values need no explanation, and all three parameters are documented despite 0% schema coverage. The only real gap is selection guidance against sibling copy/create tools.

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 0%, so the description must carry all parameter meaning, and it does: it explains workbook_id, name (with API-required note), and destination_folder_id (with default semantics). This meaningfully compensates for the undocumented schema, though it omits format/ID conventions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb+resource ("Duplicate an existing workbook"), which is clearer than a generic create. However, it does not differentiate itself from the closest sibling, workbooks_copy_workbook_to_member, which also copies a workbook, so an agent must still infer the distinction.

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?

There is no explicit when-to-use guidance or naming of alternatives (create_workbook, copy_workbook_to_member, create_workbook_from_template). The only contextual rule given is the destination-folder default, which is more parameter behavior than usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_export_and_downloadWorkbooks Export And DownloadA

Export a workbook/element and download the result. Polls until ready.

format: 'csv', 'pdf', 'xlsx', 'png'. layout: 'portrait' or 'landscape' (pdf only). parameters: Sigma control overrides e.g. {'DateRange': 'min:2024-01-01,max:2024-01-31'}. max_bytes: maximum allowed response size (default 10 MB). Returns size info without content if exceeded. Returns base64-encoded file content on success.

NameRequiredDescriptionDefault
formatNocsv
layoutNoportrait
max_bytesNo
element_idNo
parametersNo
workbook_idYes
timeout_secondsNo

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare a non-read-only, open-world, non-destructive operation, and the description usefully adds behavior beyond that: it polls until ready (async lifecycle), truncates to size-info when max_bytes is exceeded, and returns base64-encoded content on success. The timeout_seconds parameter is undocumented behaviorally, which keeps it short of a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loads the core action in one sentence, then adds compact per-parameter notes with no filler. Every line carries information an agent needs; nothing is redundant with the schema.

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?

An output schema exists, so return values need not be fully explained, and the description still notes the base64 payload shape. Combined with the format/layout/parameters/max_bytes coverage, an agent has enough to call it correctly; only timeout_seconds and element_id semantics are left entirely to the bare 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 description coverage is 0%, so the description must carry the burden and largely does: it enumerates the format values (csv/pdf/xlsx/png), restricts layout to pdf, gives a concrete parameters override example, and explains max_bytes default and overflow behavior. It omits element_id and timeout_seconds, so it does not fully compensate for the 7-param, 0%-coverage schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource: 'Export a workbook/element and download the result.' An agent can tell this is a produce-and-fetch tool. However, it never differentiates itself from the very close siblings 'workbooks_export_workbook' and 'workbooks_download_query_export', which an agent could easily confuse it with.

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 gives no when-to-use vs. when-not guidance and never names an alternative. 'Polls until ready' implies a long-running/blocking operation, which is mild usage context, but nothing tells the agent why to pick this over workbooks_export_workbook or workbooks_download_query_export.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_export_reportWorkbooks Export ReportC

Export a report. format: 'pdf', 'png', 'csv', 'xlsx'.

NameRequiredDescriptionDefault
formatNopdf
report_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=false, destructiveHint=false, openWorldHint=true, which tells the agent this is a non-destructive but potentially state-changing operation. The description adds nothing behavioral beyond that: it never says whether the export is synchronous, where the artifact lands, whether it is a file download or a URL, or what auth is required. No annotation contradiction, but minimal added context.

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?

Two very short, front-loaded fragments with zero padding. The 'format:' fragment is slightly telegraphic and lacks a verb, but it is readable and wastes no space.

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?

An output schema exists, so return values need not be explained. Still, for an export tool with several near-identical siblings, the description omits the destination/mechanism of the export and any routing guidance, leaving gaps an agent must guess at.

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 0% and the format property has no enum in the schema, so the description's enumeration of 'pdf', 'png', 'csv', 'xlsx' is genuinely useful compensating information. However, report_id (the only required parameter) is not described at all, and no default behavior for format is mentioned in the description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

"Export a report" gives a verb and a resource, but it essentially restates the tool name (workbooks_export_report) and adds nothing about scope. It does not distinguish this from close siblings like workbooks_export_workbook, workbooks_export_and_download, or workbooks_download_query_export, which an agent must choose between.

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?

There is no when-to-use guidance, no exclusions, and no named alternative, despite the tool sitting in a cluster of four export/download siblings. The agent is left to infer when a report export is preferable to workbooks_export_workbook or workbooks_export_and_download.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_export_workbookWorkbooks Export WorkbookA

Export a workbook element. If element_id is empty, exports the first page.

format: 'pdf', 'png', 'csv', 'xlsx', 'json', 'jsonl'. layout: 'portrait' or 'landscape' (only for pdf/png). element_id: The specific element to export. If omitted, uses the first page element.

NameRequiredDescriptionDefault
formatNopdf
layoutNoportrait
element_idNo
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=false, destructiveHint=false, and openWorldHint=true, so safety is partly covered. The description adds useful constraints (layout only applies to pdf/png, element_id defaults to first page) but never says where the export goes or whether it returns a file reference versus a URL, which matters for a non-read-only tool.

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?

Front-loaded with the core action, then terse per-parameter lines. Efficient, though the fragmented 'format:/layout:' fragments read more like schema notes than prose and could be slightly tightened.

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?

An output schema exists, so return values need not be described. Still, the destination of the export and its relationship to sibling export/download tools are unaddressed, leaving an agent with an incomplete picture for a non-read-only operation.

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 0%, so the description must carry the parameter burden and largely does: it enumerates format values, layout values with a format constraint, and explains element_id's fallback semantics. Only workbook_id is left unexplained, though its meaning is self-evident.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Export a workbook element') with a clear default behavior for the empty element_id case. However, it does not distinguish itself from close siblings like workbooks_export_report, workbooks_export_and_download, or workbooks_download_query_export, leaving the agent to infer the difference.

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?

Usage is implied by the export purpose and the element_id fallback rule, but there is no explicit when-to-use or when-not-to-use guidance and no named alternative among the many export/download siblings. The agent gets no routing help.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_get_reportWorkbooks Get ReportC
Read-only

Get report metadata.

NameRequiredDescriptionDefault
report_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered externally. The description adds no behavioral context of its own – nothing about what "metadata" includes, authorization needs, or limits – so it contributes essentially nothing beyond the structured fields.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The single sentence is front-loaded and free of waste, but its brevity reflects under-specification rather than efficient communication. It is terse without being informative.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described. Still, for a tool sitting amid dozens of report/workbook siblings, the definition leaves the agent without enough context on scope, ID expectations, or relationship to workbooks_list_reports to invoke it confidently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the single parameter report_id is undocumented in both the schema and the description. The description does not state the expected ID format or where to obtain a valid report_id, so it fails to compensate for the coverage gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

"Get report metadata" gives a verb (get) and resource (report metadata), so the basic action is clear. However, "metadata" is vague and the description does nothing to distinguish this tool from siblings such as workbooks_list_reports, workbooks_list_report_elements, or workbooks_get_workbook, which an agent must choose between.

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 offers no when-to-use guidance, no prerequisites, and no mention of alternatives among the many report-related siblings. The agent must infer that this is the single-report counterpart to workbooks_list_reports entirely on its own.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_get_report_element_queryWorkbooks Get Report Element QueryB
Read-only

Get the SQL query Sigma generates for a report element.

NameRequiredDescriptionDefault
report_idYes
element_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds one useful behavioral nuance — the SQL is *generated by Sigma*, implying compiled/warehouse SQL rather than user-authored text — but says nothing about what happens for non-query elements or elements that cannot be compiled.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler. It is efficient, though its brevity edges toward under-specification rather than optimal density.

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?

An output schema exists, so return values needn't be explained, and the read-only annotations cover safety. Still, for a getter whose two parameters are entirely undocumented, the agent lacks ID provenance, sibling disambiguation, and error-condition context, leaving the definition only minimally sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and both parameters (report_id, element_id) are undocumented in both schema and description. The description does not say where element_id comes from (e.g. workbooks_list_report_elements) or that the two IDs are hierarchically related, so it adds no meaning beyond the parameter names.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb (get) + resource (SQL query generated for a report element), which is clearer than the many list_* siblings in the workbooks family. However, it does not differentiate itself from the near-identical sibling elements_get_element_query, leaving ambiguity about report-element vs workbook-element scope.

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?

There is no statement of when to use this versus workbooks_list_report_queries or elements_get_element_query, no prerequisites (e.g. the element must actually be a query element), and no note about permissions or missing-SQL cases. The agent must infer usage entirely from the name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_get_report_version_historyWorkbooks Get Report Version HistoryA
Read-only

Get the version history of a report (published versions, who and when).

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page and nextPageToken null, since every page is read.

NameRequiredDescriptionDefault
report_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds meaningful behavior beyond annotations by explaining pagination: it follows Sigma pagination to the last page, returns entries from every page, and leaves nextPageToken null.

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 main purpose and then adds necessary pagination behavior in a second sentence. It is appropriately sized, though the pagination sentence is slightly jargon-heavy with its reference to 'the keys of Sigma's page'.

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 tool has an output schema and rich annotations, so the description need not explain return fields or safety profile. It covers the key non-obvious behavior, automatic pagination, and is nearly complete for a simple read-only lookup, with the main gap being explicit usage guidance relative to sibling version-history tools.

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 a single required parameter, report_id, and the schema has 0% description coverage. The description does not explicitly explain the parameter or its format, but the phrase 'of a report' makes the parameter's purpose inferable, which is minimally adequate for a one-parameter tool.

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 and resource: get the version history of a report, including published versions with who and when. The word 'report' distinguishes it from the sibling workbooks_get_workbook_version_history, so an agent can select it 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 Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied by the tool name and purpose, but the description does not explicitly say when to use this instead of related tools such as workbooks_get_workbook_version_history or workbooks_restore_workbook_version. There are no when-not conditions or alternative routing cues.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_get_templateWorkbooks Get TemplateC
Read-only

Get template details.

NameRequiredDescriptionDefault
template_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that — no note on which template scopes are visible, no indication that this fetches details for a single id versus listing, so it contributes zero 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.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single short sentence with no waste, but it is terse to the point of under-specification rather than genuinely concise. Front-loaded and readable, just not informative.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The presence of an output schema means return values need not be described, and annotations cover safety. But for a lookup tool in a large template/workbook family, the description leaves the agent without any clue about what a "template" means here or how to source the id, so it is not complete enough to call confidently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for the single required template_id, so the description carries the burden of explaining it and fails — it never says what a template id identifies or where to get one. With one undocumented required parameter, this is a clear gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ("Get template details"), so the core operation is unambiguous. However, it does nothing to distinguish itself from siblings such as workbooks_list_templates, workbooks_list_shared_templates, or workbooks_get_workbook — all of which are template/workbook retrieval surfaces.

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?

There is no when-to-use guidance, no mention of the alternative list tools, and no prerequisite stated (e.g. how to obtain a template_id). The agent must infer selection purely from the tool name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_get_workbookWorkbooks Get WorkbookC
Read-only

Get workbook metadata.

NameRequiredDescriptionDefault
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds no behavioral context beyond that — no note on permissions, scoping, or what "metadata" excludes (contents, pages, tags).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single grammatical sentence with no wasted words, front-loaded with the verb and resource. It is efficient, though its brevity shades into under-specification rather than true conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described. But for a tool with an undocumented parameter and no usage or scoping guidance, the description is too thin to let an agent call it confidently against 40+ workbooks siblings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the single required parameter workbook_id is undocumented in both the schema and the description. The parameter name is largely self-explanatory, but the description does nothing to compensate for the coverage gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ("Get") and resource ("workbook metadata"), so the basic purpose is clear. However, "metadata" is left undefined, and with siblings like workbooks_get_workbook_version_history, workbooks_get_workbook_tags, and workbooks_list_workbooks, the description does nothing to distinguish what this call returns versus those.

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?

There is no when-to-use guidance, no statement of prerequisites, and no mention of any alternative tool. An agent must infer from the name alone whether this or workbooks_list_workbooks is the right call.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_get_workbook_tagsWorkbooks Get Workbook TagsB
Read-only

List tags on a workbook.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/openWorld/non-destructive, and the description adds genuinely non-obvious behavior: it auto-follows pagination to the last page and returns merged entries from every page with nextPage null. That tells the agent not to loop manually, which is real value beyond the structured fields.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose is front-loaded in one short sentence, which is good. The second sentence is dense internal jargon about page keys (``entries``, ``total``, ``hasMore``) and partly restates return shape that an output schema already defines, so it earns its place less than the length suggests.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter read tool with an output schema, the description covers purpose and the non-obvious auto-pagination contract, which is the main thing an agent needs. What remains missing is any explanation of the one required identifier, the only real input the agent must supply.

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 one required parameter with 0% schema description coverage, so the schema contributes nothing and the description does not compensate — it never explains what workbook_id is, its format, or where to obtain it. Baseline 3 reflects an adequate but incomplete treatment of the single input.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The opening sentence names a specific verb and resource ("List tags on a workbook"), which is immediately actionable. It is not explicitly differentiated from near siblings such as workbooks_list_report_tags or workspace_list_tags, though the workbook scope is unambiguous from the name and text.

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?

There is no statement of when to use this versus alternatives (e.g. workbooks_tag_workbook to add a tag, workbooks_list_report_tags for report tags), nor any prerequisite or permission context. The pagination note implies behavior but the agent must infer the use case.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_get_workbook_version_historyWorkbooks Get Workbook Version HistoryA
Read-only

Get version history for a workbook.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish readOnlyHint=true, destructiveHint=false, and openWorldHint=true. The description adds meaningful behavior beyond that: it auto-follows Sigma pagination to the last page and explains the synthesized return shape, including entries, total, nextPage=null, and hasMore=false.

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 purpose is front-loaded in the first sentence, and the pagination/return-key details are relevant to correct invocation. The second sentence is dense but earns its place by preventing manual pagination assumptions.

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 a read-only, single-parameter tool with annotations and an output schema, the description is largely complete: it covers auto-pagination and return semantics. The main remaining gap is that workbook_id semantics are left to the schema, which has no description.

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 0%, so the description must carry the burden for workbook_id. It implies the parameter is tied to a workbook but does not explain identifier format, source, or constraints; for a single self-explanatory parameter this is minimally adequate rather than fully compensating.

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 specific verb-resource pair: 'Get version history for a workbook.' It is clearly distinguishable from the sibling report variant, workbooks_get_report_version_history, because it explicitly scopes the operation to a workbook.

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 explains pagination behavior but gives no guidance on when to use this tool versus alternatives, prerequisites, or conditions for choosing it over related version-history tools. Usage is only implied by the purpose.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_grant_workbook_accessWorkbooks Grant Workbook AccessB
Idempotent

Grant access to a workbook. grant_type: 'member' or 'team'. permission: 'view', 'explore', 'edit'.

NameRequiredDescriptionDefault
grant_typeYes
grantee_idYes
permissionYes
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the safety profile (readOnly=false, destructive=false, idempotent=true, openWorld=true), so the description does not need to restate it. It adds nothing further: it does not say whether an existing grant is updated or duplicated, what happens on a permission downgrade, or what errors arise for an unknown grantee. The idempotentHint in annotations is never elaborated in prose.

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?

Two short sentences, front-loaded with the verb and resource, followed by the value domains. Nothing is wasted, though the extreme terseness borders on under-specification rather than disciplined conciseness.

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?

An output schema exists, so return values need not be described. However, for a permission-mutating tool with zero schema coverage and rich sibling context, the description omits grantee_id semantics, interactions with existing grants, and any relation to the grant-listing/revoking siblings, leaving an agent with gaps it must guess at.

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 0% and all four parameters are required, so the description carries the burden. It supplies the value domains for grant_type ('member'/'team') and permission ('view'/'explore'/'edit'), which is real value the schema lacks, but says nothing about grantee_id (whose meaning depends on grant_type) or workbook_id. Half the parameters remain unexplained.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Grant') and resource ('access to a workbook'), so the operation is unambiguous. It does not distinguish itself from near-namesakes such as workbooks_list_workbook_grants, workspace_grant_workspace_access, or admin_create_grant, so an agent must infer the correct scope from the name alone.

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?

There is no when-to-use guidance, no preconditions (e.g. the grantee must already exist), and no mention of the sibling tools that list or revoke grants. The agent gets no routing help beyond tool name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_list_all_reportsWorkbooks List All ReportsA
Read-only

List ALL reports in the organization, automatically following pagination.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare read-only, non-destructive and open-world, so the safety profile is covered. The description adds a genuinely useful behavioral fact beyond them: pagination is followed automatically, signaling that an agent gets the full result set in one call and may face a large/slow response. It stops short of noting cost, rate limits, or result-size behavior.

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 sentence with no waste, front-loading both the resource and the scope (ALL, organization) before the pagination note. Every clause carries distinct 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?

With no parameters and an output schema present, the description does not need to explain return values, and it correctly covers scope and pagination. The only real gap is guidance on when to prefer the filtered report list, which is a minor omission for such a simple call.

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 tool takes zero parameters, so there is nothing for the description to disambiguate and the baseline is 4. Nothing in the sentence misrepresents the parameterless shape.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource (list reports) plus an explicit scope (ALL, organization-wide), which separates it from the filtered sibling workbooks_list_reports. It never names that sibling outright, so the differentiation must be inferred from the ALL/organization scoping rather than being spelled out.

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 the use case (fetch the complete set without manual paging), and the ALL-organization framing suggests it is the exhaustive variant. However, it gives no explicit when-to-use/when-not guidance and never points to workbooks_list_reports as the lighter, filtered alternative.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_list_all_workbooksWorkbooks List All WorkbooksA
Read-only

List ALL workbooks in the organization, automatically following pagination.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, openWorldHint=true and destructiveHint=false, so safety is covered. The description adds a genuine behavioral trait not in the annotations: pagination is handled automatically, so the caller needs no cursor management. That is useful added context, though nothing about volume or result size is disclosed.

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 sentence that front-loads the scope ('ALL') and the key behavioral note (auto-pagination). No filler, nothing to trim.

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 an output schema present, the description needn't describe return values, and the tool is a simple parameterless listing. It covers scope and pagination adequately, though it could note the unbounded result size implied by 'ALL' in a large organization.

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 tool takes zero parameters, which is the baseline-4 case; there is nothing for the description to explain beyond confirming the listing is unfiltered. No gap exists because no parameters are exposed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('List ALL workbooks') plus an explicit scope ('in the organization'). The capitalized ALL distinguishes it in spirit from workbooks_list_workbooks, but the description never names that sibling, so the differentiation is left implicit.

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 it auto-follows pagination, which implies this is the exhaustive-listing variant, but it never states when to prefer it over workbooks_list_workbooks or workbooks_list_workbooks_shared_with_member. Usage is only implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_list_report_columnsWorkbooks List Report ColumnsA
Read-only

List the columns of every element in a report.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page and nextPageToken null, since every page is read.

NameRequiredDescriptionDefault
report_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnlyHint=true, destructiveHint=false), so the description earns credit for the extra detail it does provide: it auto-paginates to the last page and returns an aggregated result with nextPageToken null. That is genuinely useful behavioral context an agent cannot get from the annotations or schema.

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?

Two short sentences, no filler, with the pagination behavior front-loaded after the purpose statement. Minor deduction for the awkward mid-sentence line break and a slightly garbled clause about returning 'the keys of Sigma's page'.

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?

An output schema exists, so return values need not be spelled out, and the one thing an agent could not otherwise predict — that all pages are fetched and merged — is explained. Only the report_id semantics are left thin, which is a small gap given the tool's low 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?

Only one parameter (report_id) exists and schema description coverage is 0%, so the schema gives nothing but 'string'. The description implies the identifier is a report but adds no format, source, or validity guidance; for a single self-evident parameter this is tolerable but below what full compensation would look like.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('List the columns') plus scope ('of every element in a report'), so the agent knows this is a report-wide column enumeration rather than a single-element lookup. It does not name the nearby alternatives (workbooks_list_report_elements, elements_get_element_columns), so the differentiation is inferred rather than stated.

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 phrase 'of every element in a report' implicitly signals when this tool is preferred over a per-element column fetch, but the description never says so explicitly, nor does it state prerequisites (e.g., needing a valid report_id from workbooks_list_reports). Usage is inferable but not guided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_list_report_controlsWorkbooks List Report ControlsA
Read-only

List the controls (filters and parameters) in a report.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page and nextPageToken null, since every page is read.

NameRequiredDescriptionDefault
report_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false. The description adds meaningful behavior beyond that: it follows Sigma pagination to the last page, returns entries from every page, and sets nextPageToken to null.

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 purpose is front-loaded in one short sentence, and the second sentence only adds non-obvious pagination behavior. There is no wasted text for a simple one-parameter listing 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?

Given the rich annotations and an existing output schema, the description is complete enough for correct invocation. It covers purpose, report scoping, and pagination/return behavior without needing to restate schema fields.

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 one parameter, report_id, but schema description coverage is 0%. The description implies that the parameter identifies the report, yet it does not explain the expected ID format or where to obtain it, so it only partially compensates for the missing schema documentation.

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 and resource: list the controls in a report. The parenthetical '(filters and parameters)' clarifies what controls means, and 'in a report' distinguishes this from sibling workbook-control and report-element listing 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 context of use is clear: call this to retrieve controls for a specific report. It does not explicitly name alternatives or exclusions, but the report-scoped phrasing differentiates it adequately from siblings like elements_list_workbook_controls.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_list_report_elementsWorkbooks List Report ElementsB
Read-only

List elements in a report.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page and nextPageToken null, since every page is read.

NameRequiredDescriptionDefault
report_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish read-only, non-destructive, open-world behavior. The description adds meaningful behavioral detail by explaining that it auto-paginates through every page and returns aggregated entries with nextPageToken null.

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 short and front-loads the core purpose, then explains pagination behavior. The pagination sentence is useful, though slightly verbose and technical with reference to Sigma page keys.

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 an output schema present, the description need not document return shape in detail, and annotations cover the safety profile. It is complete enough for a simple one-parameter list call, though it could clarify report_id sourcing and sibling distinction.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter report_id has 0% schema description coverage, and the description does not explain what the identifier is or where it comes from. The parameter name is self-explanatory, but the description adds no semantic information beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: list elements in a report. It is clear what the tool does, though it does not differentiate itself from nearby siblings such as workbooks_list_report_pages or workbooks_list_report_page_elements.

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 does not explain when to use this tool versus alternatives, nor does it state prerequisites such as needing a report_id from another call. Usage is only implied by the tool name and purpose.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_list_report_lineageWorkbooks List Report LineageA
Read-only

List lineage for a report.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page and nextPageToken null, since every page is read.

NameRequiredDescriptionDefault
report_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and non-destructive behavior. The description adds non-obvious behavior beyond the annotations: it automatically follows Sigma pagination to the last page and returns aggregated 'entries' with a null 'nextPageToken'. It omits permission or failure-mode details, but the added pagination contract is valuable.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tightly written sentences, front-loaded with the purpose and followed by the pagination contract. Every sentence earns its place with no redundant restatement of the schema.

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?

An output schema exists and annotations cover safety behavior, so the description need not explain return structure generically; it nevertheless explains the auto-pagination return shape. The remaining gaps are report_id semantics and sibling differentiation, which prevent a perfect score.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The sole parameter report_id has 0% schema description coverage, so the description must compensate. It only says 'for a report' and does not explain the expected ID format, where to obtain it, or any constraints, leaving a meaningful gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'List lineage for a report.' It is clear what the tool does, but it does not distinguish itself from sibling lineage tools such as workbooks_list_workbook_lineage or elements_list_element_lineage.

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?

Usage is only implied by the name and first sentence. There is no explicit guidance on when to use this versus other lineage endpoints, nor any prerequisite or exclusion noted.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_list_report_page_elementsWorkbooks List Report Page ElementsA
Read-only

List the elements on one page of a report. Retrieve page IDs with workbooks_list_report_pages.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page and nextPageToken null, since every page is read.

NameRequiredDescriptionDefault
page_idYes
report_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and destructiveHint=false, and the description adds genuinely useful behavior: it auto-follows Sigma pagination to the last page and merges 'entries' from every page with nextPageToken null. That aggregation semantics is exactly the kind of context annotations cannot convey.

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 short sentences, front-loaded with purpose and prerequisite. The inline backtick markup around ``entries`` and ``nextPageToken`` is slightly noisy but conveys concrete key names.

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 two-parameter read-only listing tool with an output schema, this covers purpose, prerequisite, and pagination/return-shape semantics. The only gap is that report_id is never explained.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description must compensate for both parameters. It gives a concrete hint for page_id (retrieve via workbooks_list_report_pages) but says nothing about report_id or its relationship to page_id, leaving half the parameters undocumented.

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 and resource ('List the elements on one page of a report') and scopes it to a single page, which distinguishes it from workbooks_list_report_elements and elements_list_workbook_page_elements. An agent can tell what it returns 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 Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly directs the agent to workbooks_list_report_pages to obtain the required page_id, which is a clear prerequisite. It doesn't explicitly contrast with the sibling that lists elements across all pages, so the boundary is implied rather than spelled out.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_list_report_pagesWorkbooks List Report PagesA
Read-only

List the pages of a report.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page and nextPageToken null, since every page is read.

NameRequiredDescriptionDefault
report_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare a safe read, but the description adds genuinely new behavior: it auto-paginates to the last page and normalizes nextPageToken to null, implying a full multi-request fetch and potentially costly call. This is real disclosure beyond the annotation set, though it omits any failure/empty-report behavior.

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?

Two tight sentences, the primary action front-loaded, and the pagination explanation earns its place by explaining the always-null nextPageToken. Minor redundancy between 'follows pagination to the last page' and 'every page is read'.

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 an output schema and full annotations, the definition covers safety, pagination semantics, and return shape adequately for a one-parameter list tool. Only the lack of any guidance on report_id's origin or on error/empty cases keeps it below 5.

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 0% and the single parameter (report_id) is undocumented in both schema and description. The phrase 'of a report' weakly implies report_id identifies the target, providing minimal compensation but no format or sourcing detail.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('List the pages of a report'), which is unambiguous against siblings like workbooks_list_report_page_elements or workbooks_list_workbook_pages. It does not explicitly contrast with those siblings, so it falls short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use guidance, prerequisites, or named alternatives. The agent must infer from the tool name that this is the right call for enumerating a report's pages rather than elements, columns, or queries.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_list_report_queriesWorkbooks List Report QueriesA
Read-only

List SQL queries in a report.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page and nextPageToken null, since every page is read.

NameRequiredDescriptionDefault
report_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare this a safe, non-destructive read, so the bar is lower, and the description still adds real behavior: it auto-follows pagination to the last page and returns entries from every page with nextPageToken null. That tells the agent not to expect a cursor to resume from. It doesn't mention result-size or rate considerations, which keeps it from a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, purpose front-loaded, no filler. The second sentence is slightly dense ('returns the keys of Sigma's page: entries...') but every clause carries information about the return shape.

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?

An output schema exists, so return values need not be re-explained, and the description still clarifies the pagination-collapsed result shape. The only gap is the undocumented report_id, which is largely self-evident for a one-parameter read 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 0% for the single report_id parameter, so the description must carry that meaning. 'In a report' implies the ID scopes to a report, which is inferable from the name but never stated explicitly (format, where to obtain it). Adequate but no meaningful addition beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: 'List SQL queries in a report.' An agent can tell it apart from report-element or column listing tools by the 'queries' resource. It doesn't explicitly name a sibling it is not, so it stops short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no when-to-use guidance and no exclusions. With siblings like workbooks_get_report_element_query and elements_list_workbook_queries in the same namespace, an agent gets no help deciding which query-listing tool to call.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_list_reportsWorkbooks List ReportsB
Read-only

List all reports in the organization.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read. limit is the page size.

NameRequiredDescriptionDefault
limitNo

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/openWorld/non-destructive, so the safety profile is covered. The description adds meaningful context annotations cannot convey: it auto-paginates to the last page, merges `entries` from every page, passes through `total` when present, and forces `nextPage` null / `hasMore` false. That is real behavioral value, though the cost of fetching every page (call volume/latency) goes unmentioned.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The one-line purpose is well front-loaded, but the pagination sentence is dense and cluttered with RST-style double-backtick markup and nested parentheticals ('``hasMore`` false where Sigma sends it'), which makes it harder to parse than needed.

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?

An output schema exists, so the detailed enumeration of returned keys is partly redundant, while more useful gaps remain: no clarification of which sibling to prefer, no note that all pages are fetched (potential latency/rate cost), and no indication of what a 'report' is relative to a workbook. Adequate but not complete for a tool with ~100 siblings.

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 0% and the single `limit` parameter has no schema description. The description compensates by clarifying '`limit` is the page size' — i.e., a paging control, not a cap on total results returned, which is a genuinely non-obvious distinction given that all pages get read.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource with scope: 'List all reports in the organization.' An agent knows it returns reports, not workbooks/pages/elements. However, it does not distinguish itself from the close sibling 'workbooks_list_all_reports', which appears to do something similar, leaving ambiguity about which to pick.

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?

There is no statement of when to use this versus 'workbooks_list_all_reports', 'workbooks_list_report_pages', or the dataset/element listing siblings. The reader must infer usage purely from the name and the one-line purpose.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_list_report_schedulesWorkbooks List Report SchedulesA
Read-only

List scheduled exports for a report.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
report_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the read-only annotations, the description discloses important behavior: it follows pagination to the last page and returns aggregated entries from every page, with total and nextPage/hasMore semantics explained. This is meaningful operational context for a paginated read tool.

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 purpose is front-loaded in a short first sentence, and the pagination details are useful rather than filler. The second sentence is dense and repeats “Sigma’s,” but it earns its place by explaining output behavior.

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 read-only annotations and an output schema already present, the description supplies the key missing behavioral context around full pagination. The main remaining gap is report_id semantics, which is left undocumented in both schema and description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the only parameter is report_id with no format or source guidance in the schema. The description implies it identifies a report but adds no detail about expected ID format or how to obtain 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 states a specific verb and resource: list scheduled exports for a report. That scope distinguishes it from sibling schedule tools tied to workbooks, data models, or members, and an agent can identify the operation 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 Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains what the tool does but gives no explicit when-to-use guidance, prerequisites, or comparison to alternatives such as workbooks_list_workbook_schedules or workbooks_create_report_schedule. Usage is only implied by the purpose sentence.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_list_report_sourcesWorkbooks List Report SourcesC
Read-only

List data sources used by a report.

NameRequiredDescriptionDefault
report_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that – no note on pagination, whether results include inherited/upstream sources, or what happens for a report with no sources.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with zero filler or redundancy. It is tight, though the brevity comes at the cost of the guidance dimensions rather than being a model of efficient completeness.

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 presence of an output schema means return values need not be described. Still, the sole parameter is undocumented and the tool is indistinguishable from lineage/query/sources siblings, leaving the definition only minimally sufficient for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the schema only says report_id is a string. The description does not compensate by explaining the expected ID format, where to obtain it, or whether it accepts names as well. One parameter with no added meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ("List") and resource ("data sources used by a report"), so the operation is unambiguous. However, it draws no boundary against close siblings such as workbooks_list_report_lineage, workbooks_list_report_queries, or elements_list_workbook_sources, so an agent cannot tell which of these to pick without opening schemas.

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?

There is no statement of when to use this tool versus alternatives, and no prerequisites (e.g., needing a valid report_id) are mentioned. The agent is left to infer usage entirely from the name and the crowded sibling list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_list_report_tagsWorkbooks List Report TagsA
Read-only

List the version tags on a report.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page and nextPageToken null, since every page is read.

NameRequiredDescriptionDefault
report_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description still adds real behavioral value by disclosing that it paginates to the last page internally and that nextPageToken will always be null, telling the agent not to paginate manually. It stops short of noting auth requirements or failure modes.

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 purpose is front-loaded in the first sentence and the pagination note follows in one more sentence with no filler. The literal ``entries`` / ``nextPageToken`` markup is slightly noisy for prose but conveys concrete contract detail, so it 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?

An output schema exists, so the description need not enumerate return values, and the annotations cover the safety profile. For a one-parameter read tool the only meaningful gap is the unexplained report_id and the absent notion of what a 'version tag' is in Sigma's model.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the single parameter report_id is never mentioned in the description, so nothing clarifies whether it is a report ID, a URL slug, or a versioned identifier. With one undocumented required parameter the description must compensate and does not.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: 'List the version tags on a report.' That cleanly separates it from mutation siblings like workbooks_tag_report and workbooks_remove_report_tag, and the 'on a report' scope separates it from workbooks_get_workbook_tags, though no sibling is named explicitly.

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?

Usage is only implied by the scoping phrase 'on a report' — an agent can infer this is the read path for report tags while workbooks_tag_report / workbooks_remove_report_tag mutate them. There is no explicit when-to-use statement, no prerequisites (e.g. permissions), and no named alternative.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_list_shared_templatesWorkbooks List Shared TemplatesA
Read-only

List templates shared with your organization from other orgs.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare read-only, non-destructive, open-world behavior. The description adds real value beyond them: it discloses that pagination is followed to the last page, that entries are aggregated across all pages, that total comes from Sigma when sent, and that nextPage is always null / hasMore false. That aggregation behavior is non-obvious and worth documenting.

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?

Two sentences, front-loaded with the purpose before the pagination detail. The second sentence is dense and slightly jargon-heavy, but every clause conveys actual behavior rather than filler.

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 no parameters, an output schema present, and annotations covering the safety profile, the main open question an agent would have is pagination semantics, which the description answers clearly. Nothing essential is missing, though a pointer to the related sibling tools would round it out.

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?

Zero parameters, so the baseline is 4. The description correctly adds no parameter detail because there is nothing to parameterize.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource with a scoping qualifier: 'templates shared with your organization from other orgs.' This distinguishes it from the sibling workbooks_list_templates (which presumably lists own-org templates), though it never names that sibling explicitly.

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?

Usage is only implied by the 'shared from other orgs' qualifier. There is no explicit 'use this when...' or a named alternative such as workbooks_list_templates or workbooks_accept_shared_template, so the agent must infer when to reach for this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_list_templatesWorkbooks List TemplatesA
Read-only

List all templates in the organization.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read. limit is the page size.

NameRequiredDescriptionDefault
limitNo

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered. The description adds real behavioral context beyond that: it auto-paginates to the last page, so the caller must not re-fetch, and it explains what the resulting nextPage/hasMore fields mean. That auto-pagination disclosure is the key non-obvious trait.

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 purpose is front-loaded in one short sentence, followed by the pagination semantics. The second sentence is dense with backticked field names but every clause carries information; only minor noise from the formatting.

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 an output schema present, the description needn't enumerate return fields, yet it explains the aggregated return shape and pagination behavior an agent needs to interpret results. The one gap is failing to position the tool against sibling template-listing tools.

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 for the sole parameter is 0%, so the description must compensate, and it does: it defines 'limit' as the page size and clarifies that all pages are still read regardless. It could be clearer that limit does not cap total results, but the essential meaning is conveyed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource with scope ('all templates in the organization'), so the agent knows exactly what it retrieves. It does not distinguish itself from close siblings such as workbooks_list_shared_templates or workbooks_get_template, leaving ambiguity about which list to call.

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?

There is no statement of when to use this tool versus alternatives, no prerequisites, and no exclusions. The agent must infer the difference between this and workbooks_list_shared_templates on its own.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_list_workbook_agentsWorkbooks List Workbook AgentsA
Read-only

List AI agents defined in a specific workbook (optionally filtering by version tag).

Returns Sigma's single response. The spec documents no page-token request parameter for this endpoint, so a nextPageToken in the response cannot be followed.

NameRequiredDescriptionDefault
workbook_idYes
version_tag_nameNo

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds genuinely non-obvious behavior the schema and annotations cannot express: the endpoint returns a single page and any nextPageToken in the response cannot be followed, which prevents a futile pagination loop.

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 purpose is front-loaded in the first sentence and the operational caveat follows. The pagination note is slightly verbose ('The spec documents no page-token request parameter for this endpoint') but every sentence carries information the agent needs.

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?

An output schema exists, so return-value explanation is not required, and the one behavioral gotcha an agent must know (unfollowable nextPageToken) is disclosed. Remaining gap is minor: the workbook_id value format and how the two parameters interact are unstated.

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 0%, so the description must carry parameter meaning. It does explain that version_tag_name is an optional version-tag filter, but leaves workbook_id entirely uninterpreted (format, where to obtain it) and does not specify whether version_tag_name is a name or an ID.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('List AI agents defined in a specific workbook') and scopes it to a single workbook. It implicitly separates itself from the org-wide sibling admin_list_org_workbook_agents by naming the workbook scope, but never names that alternative explicitly.

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 parenthetical '(optionally filtering by version tag)' implies when the optional parameter applies, but there is no explicit when-to-use guidance. Nothing tells the agent to prefer this over admin_list_org_workbook_agents for org-wide listings, or to pair it with workbooks_run_workbook_agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_list_workbook_bookmarksWorkbooks List Workbook BookmarksA
Read-only

List bookmarks (saved filter states) in a workbook.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already establish this as a non-destructive read-only operation. The description adds meaningful behavioral detail beyond annotations: it follows Sigma pagination to the last page and explains the returned page fields, including that nextPage is null and hasMore is false because all pages are read.

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 appropriately sized and front-loaded with the primary purpose. The second sentence spends its length on useful pagination and return-shape behavior rather than restating schema or annotations.

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, single-parameter read-only list tool with annotations and an output schema, the description is largely complete, especially around pagination and returned fields. The main gap is that workbook_id is not described, but the tool's overall behavior is otherwise well covered.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate for parameter meaning. It does not explain the required workbook_id beyond implying it identifies a workbook; it gives no format, source, or other guidance for the sole parameter.

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 and resource: 'List bookmarks (saved filter states) in a workbook.' The parenthetical clarifies what bookmarks are, and the resource is distinct from sibling operations such as add, update, and delete bookmark.

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?

Usage is implied by 'List bookmarks' in the context of bookmark-related siblings, but the description does not explicitly state when to use this tool versus alternatives or when not to use it. It lacks broader context about prerequisites or selection criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_list_workbook_embedsWorkbooks List Workbook EmbedsB
Read-only

List embed configurations for a workbook.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish that this is a read-only, non-destructive operation. The description adds useful behavioral detail by explaining that it follows Sigma pagination to the last page and describing how entries, total, nextPage, and hasMore are handled.

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 and remains reasonably concise. The second sentence is long and partly duplicates output-schema information, but it earns its place by clarifying pagination behavior.

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-only list tool with annotations and an output schema, the description is largely complete: it covers purpose and pagination behavior. The main remaining gap is the lack of workbook_id semantics and usage guidance.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter, workbook_id, has 0% schema description coverage, and the description does not explain its format, source, or meaning beyond saying the list is "for a workbook." This does not compensate for the missing schema documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: "List embed configurations for a workbook." This clearly distinguishes it from create/delete embed operations by verb, but it does not explicitly name sibling alternatives or clarify scope differences.

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?

There is no explicit guidance on when to use this tool versus related tools such as create_workbook_embed or delete_workbook_embed. Usage is only implied by the phrase "for a workbook."

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_list_workbook_grantsWorkbooks List Workbook GrantsB
Read-only

List permission grants on a workbook.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds real behavioral context beyond the annotations: it auto-paginates through to the last page, so the caller gets a complete result set without manual paging loops, and it normalizes the response shape (nextPage null / hasMore false). That is meaningful disclosure that the readOnly/destructive annotations 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.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The purpose is front-loaded, which is good, but the pagination sentence is dense with backtick-quoted field names and redundant phrasing ('``total`` when Sigma sends it (Sigma's value)', '``hasMore`` false where Sigma sends it'). It earns its place semantically but could be tightened considerably.

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 an output schema present, the description need not document return fields, and with annotations covering the safety profile, the main remaining obligation is behavioral context, which the pagination disclosure supplies. Only the undocumented workbook_id and lack of routing guidance keep it from being fully 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 single parameter workbook_id has 0% schema description coverage, and the description never explains its format or sourcing (e.g., where to obtain the workbook ID). The meaning is largely inferable from the tool name and the resource being listed, so it is adequate but not compensating for the coverage gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb+resource: 'List permission grants on a workbook.' That distinguishes it from the mutating siblings (workbooks_grant_workbook_access, workbooks_delete_workbook_grant), though it never names them explicitly. An agent can identify it, but the differentiation is implicit rather than stated.

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?

There is no when-to-use guidance, no prerequisites, and no mention of alternatives such as the grant/delete siblings or the admin-level grant listing tools. The purpose is implied by the verb, but nothing tells the agent when this is the right tool versus another grant-listing tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_list_workbook_lineageWorkbooks List Workbook LineageA
Read-only

List data lineage for a workbook.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, and destructiveHint, so the safety profile is covered. The description adds meaningful behavior beyond that: it auto-paginates to the last page, aggregates entries from every page, returns total when Sigma sends it, and reports nextPage as null / hasMore false after reading all pages.

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 and then spends its remaining space on the non-obvious pagination behavior. It is appropriately sized and contains no filler.

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 is simple, annotations cover the safety profile, and an output schema exists, so return values need not be fully explained. However, the description still leaves the workbook_id semantics and the choice between lineage siblings unaddressed, making it adequate but not complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for the single required workbook_id parameter. The description says 'for a workbook' but does not explain the parameter's format, source, or whether it is a workbook UUID; it does not compensate for the missing schema documentation.

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 first sentence states a specific verb and resource: 'List data lineage for a workbook.' It also distinguishes this tool from sibling lineage tools such as workbooks_list_report_lineage and datasets_list_data_model_lineage by explicitly scoping the resource to a workbook.

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 gives no when-to-use guidance, no exclusions, and no alternatives. With many lineage-related siblings listed, the agent is left to infer that this is the workbook-specific lineage tool rather than being routed to it explicitly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_list_workbook_pagesWorkbooks List Workbook PagesA
Read-only

List pages in a workbook.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish read-only, non-destructive, open-world behavior, and the description adds genuinely new context beyond them: it auto-follows pagination to the last page, so the caller never needs to page manually. It also discloses how the returned envelope is reshaped (nextPage null, hasMore false), which is real behavioral information not derivable from annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The core purpose is front-loaded in one short sentence, with the pagination caveat following. The second sentence is dense with parentheticals but every clause conveys a real fact about the returned envelope.

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?

An output schema exists, so the description needn't re-document return fields, and it correctly limits itself to the one thing the schema can't convey: that all pages are aggregated. For a single-parameter read tool with full annotation coverage, nothing an agent needs 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?

The single parameter workbook_id is the only input and its meaning is obvious from context, but schema description coverage is 0% and the description never mentions it. Baseline adequacy, no added value beyond naming.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ("List pages in a workbook") that an agent can distinguish from workbooks_list_workbooks and, by resource name, from workbooks_list_report_pages. It stops short of explicitly naming the report-page sibling, so differentiation rests partly on the tool name.

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?

There is no explicit when-to-use or when-not-to-use guidance and no alternative named. The only usage-relevant signal is implicit: passing a workbook_id returns all pages because pagination is handled internally.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_list_workbooksWorkbooks List WorkbooksA
Read-only

List all workbooks in the organization. Pass summary_only=True for concise token-efficient response.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read. limit is the page size.

NameRequiredDescriptionDefault
limitNo
summary_onlyNo

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover safety (readOnly, non-destructive, open-world), so the marginal value is the pagination behavior: the tool silently follows every page, so nextPage is always null and hasMore false, and limit is a page size rather than a result cap. That is exactly the kind of non-obvious behavior an agent would otherwise get wrong. It loses a point because part of the sentence restates return keys that the output schema already documents.

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 core action and the summary_only tip are front-loaded in one sentence, and the pagination detail follows. The pagination sentence is dense and parenthetical-heavy but every clause conveys a distinct fact; only the enumeration of return keys is arguably wasted given the output schema.

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 two-optional-parameter read tool with an output schema and read-only annotations, the description covers the main risk area (pagination and limit semantics). What is missing is disambiguation from sibling list tools and any note on ordering or result scope, which for a crowded list-family is a real gap but a modest one.

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 0%, so the description carries the burden. It correctly clarifies limit as page size (not total count), which is the key ambiguity, and explains summary_only's purpose. However, it never says what fields summary_only drops or what default paging behavior occurs, so both parameters remain only partially specified.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource with scope: 'List all workbooks in the organization.' That is unambiguous on its own, but it does not distinguish itself from the near-identical sibling workbooks_list_all_workbooks or workbooks_list_workbooks_shared_with_member, which an agent must guess between.

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 only usage guidance is 'Pass summary_only=True for concise token-efficient response', which gives a real selection heuristic for that parameter. There is no statement of when to prefer this tool over the sibling list tools (all workbooks, shared-with-member, tag-scoped), so usage is implied rather than directed.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_list_workbook_schedulesWorkbooks List Workbook SchedulesA
Read-only

List every scheduled export for a workbook.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint/ non-destructive/ openWorld, so the safety profile is covered. The description adds genuinely useful behavioral context: the tool auto-paginates to the last page, so the agent need not paginate further, and it spells out the returned page keys (entries, total, nextPage null).

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 purpose is front-loaded in one sentence, followed by dense but relevant pagination details. No filler, though the second sentence packs multiple return-key clauses together and could be slightly clearer.

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 one-parameter list tool with annotations and an output schema, the description covers purpose and the non-obvious full-pagination behavior. It explains return keys a bit redundantly with the output schema, but nothing essential 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?

Schema description coverage is 0% for the single required workbook_id, so the description must carry the load. It only implies the parameter via 'for a workbook' and adds no format or sourcing detail, though workbook_id is largely self-evident.

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?

A specific verb ('List') plus resource ('every scheduled export for a workbook') that clearly distinguishes this from workbooks_list_report_schedules and from the add/update/delete schedule siblings without needing their schemas.

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?

There is no explicit when-to-use guidance, no naming of the report-schedule alternative, and no prerequisites (e.g. that workbook_id must exist). The reader infers usage only from the name and the phrasing 'for a workbook'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_list_workbooks_shared_with_memberWorkbooks List Workbooks Shared With MemberB
Read-only

List all workbooks accessible to a member with full workbook metadata.

Cross-references member's file list against the full workbook catalog.

NameRequiredDescriptionDefault
member_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds genuinely useful context: results include 'full workbook metadata' and are derived by cross-referencing the member's file list against the full workbook catalog. It does not cover scope limits, pagination, or how access is determined.

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?

Two short sentences, front-loaded with the outcome and no filler. The second sentence is somewhat implementation-flavored but still informative, so it 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?

An output schema exists, so return values needn't be described, and annotations carry the safety profile; the definition is adequate for a read-only list tool. The one remaining gap is the undocumented member_id format, which matters more here because schema coverage is 0%.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for the single required parameter, so the description carries the full burden and does not deliver. Beyond the name 'member_id', it gives no format (email vs. numeric ID vs. UUID) or source for the identifier, leaving the agent to guess.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('List') and a clearly scoped resource ('workbooks accessible to a member'), so an agent knows this is a member-scoped workbook listing rather than a global one. It does not explicitly name a sibling such as workbooks_list_workbooks or workbooks_list_all_workbooks, so differentiation is only implicit.

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 never states when to choose this tool over the many sibling listers (workbooks_list_workbooks, workbooks_list_all_workbooks, workspace_list_files) or what prerequisites exist. The second sentence is a behavioral/implementation note, not usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_promote_workbookWorkbooks Promote WorkbookB

Promote a workbook by tagging it (e.g., 'Production'). Creates tag if it doesn't exist.

NameRequiredDescriptionDefault
tag_nameYes
tag_colorNocyan
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare this is a non-read-only, non-destructive, open-world operation. The description adds genuinely useful behavior beyond that: the tag is created if it doesn't exist, implying an upsert-like side effect. It still omits whether promotion replaces an existing promotion tag, whether prior tags are removed, and what permissions are required, so it clears the lowered bar without being rich.

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 short sentences, front-loaded with the action and followed by the non-obvious side effect. Nothing is padded and every sentence carries information.

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?

An output schema exists, so return values need not be explained, and annotations cover the safety profile. But for a three-parameter mutation with 0% schema coverage, the description should at minimum identify workbook_id and tag_color and differentiate itself from the tag_workbook sibling; those gaps leave it only minimally complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description carries the full burden. It only gestures at tag_name via the example 'Production' and says nothing about workbook_id (the target resource) or tag_color (which has a default of 'cyan'), leaving two of three parameters entirely undocumented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource ('Promote a workbook') and clarifies the mechanism ('by tagging it'), which prevents the agent from guessing at a hidden promotion workflow. However, it never distinguishes itself from the very close siblings workbooks_tag_workbook and workspace_create_tag, leaving the agent to guess which one implements 'promotion'.

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?

There is no when-to-use or when-not-to-use guidance, no prerequisites, and no named alternative. The tag example ('Production') hints at intent but the description never says why an agent would choose promote over the sibling tag_workbook tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_reassign_workbook_ownershipWorkbooks Reassign Workbook OwnershipA

Transfer all workbooks from one member to another.

Resolves members by email, finds all workbooks owned by old owner, then PATCHes /v2/files/{id} to reassign. dry_run=True (default) reports what would change without making changes. Both arguments must be email addresses (Sigma looks members up by email only), and each must match exactly one member's email, ignoring case; otherwise the call fails before any change.

NameRequiredDescriptionDefault
dry_runNo
new_owner_emailYes
old_owner_emailYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Despite annotations already indicating a non-read-only operation, the description adds valuable behavioral detail: member resolution by email, workbook discovery, PATCH reassignment, dry-run default behavior, and fail-before-change validation. This is exactly the extra context needed for a mutating ownership-transfer tool.

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 action, then adds operational semantics and validation constraints in tightly packed sentences. Every sentence contributes useful selection or invocation information.

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 mutation risk, dry-run option, email constraints, and existing output schema, the description covers everything an agent needs to decide and invoke safely. Return-value explanation is unnecessary because an output schema exists.

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 description coverage is 0%, so the description must carry parameter meaning. It fully explains all three parameters: old and new owner emails must be exact email matches ignoring case with exactly one member match, and dry_run defaults to true and reports changes without applying them.

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 gives a specific verb and resource: transfer all workbooks from one member to another. The scope "all workbooks" and the ownership-transfer framing distinguish it clearly from nearby siblings such as copy, share, grant-access, or duplicate 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 establishes the operation context and prerequisite semantics, including default dry-run behavior and exact email resolution. It does not explicitly name when to prefer this over alternatives like workbooks_copy_workbook_to_member or workbooks_grant_workbook_access, so it falls short of full when/when-not guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_remove_report_tagWorkbooks Remove Report TagA
Destructive

Remove a version tag from a report. Requires confirm=True. Retrieve tag IDs with workbooks_list_report_tags.

NameRequiredDescriptionDefault
tag_idYes
confirmNo
report_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true and openWorldHint=true; the description adds useful non-annotation context by stating the confirm=True gate that must be satisfied before the destructive action fires. It does not state whether the removal is reversible or requires specific permissions, but the key safety tripwire is disclosed.

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 short sentences, front-loaded with the action, followed by the gating requirement and the dependency lookup. No filler.

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 an output schema present, return values need no explanation, and the description covers the action, the required confirmation flag, and the ID source. Minor gap: no note on permission requirements or whether tag removal affects workbooks carrying the report.

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 0%, so the description has to compensate. It explains the semantics of confirm (must be True) and where tag_id comes from (workbooks_list_report_tags); report_id is left implicit but is self-evident.

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 ('Remove a version tag from a report'), clearly distinguishing it from the sibling workbooks_tag_report and workbooks_remove_workbook_tag (workbook vs report scope is explicit).

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?

Gives the prerequisite workflow: requires confirm=True, and points to workbooks_list_report_tags for obtaining tag IDs. It lacks an explicit 'when not to use' (e.g. removing a tag from a workbook instead), so it falls just short of full routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_remove_workbook_tagWorkbooks Remove Workbook TagA
Destructive

Remove a tag from a workbook. Requires confirm=True.

NameRequiredDescriptionDefault
tag_idYes
confirmNo
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true and readOnlyHint=false, so the destructive nature is covered structurally. The description adds the mandatory confirm gate, which is real behavioral context not present in annotations (the schema shows confirm defaulting to false, not that true is required). It does not say whether the tag is deleted globally or only detached from this workbook, nor whether the call is idempotent.

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, zero filler, with the action front-loaded and the precondition immediately after. Nothing could be removed without losing information.

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?

An output schema exists, so return values need not be described, and annotations cover the safety profile. For a destructive mutation the description is still thin: no scope of effect (workbook-only vs global tag deletion), no permission or failure conditions, and no mention of behavior when the tag is absent.

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 0%, so the description must carry the load; it does clarify the critical confirm=True requirement, which the schema alone would mislead on given confirm is not in the required list. It says nothing about tag_id or workbook_id, though their names are largely self-explanatory.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (remove) and resource (tag from a workbook), which cleanly separates it from the sibling workbooks_tag_workbook that adds tags. It does not explicitly name that sibling or the read counterpart workbooks_get_workbook_tags, so sibling differentiation is implied rather than stated.

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?

"Requires confirm=True" is a concrete precondition that tells the agent how to invoke it successfully, which is more than nothing. However, there is no guidance on when to prefer this over other tag-management tools, no note on whether the workbook must exist or be owned by the caller, and no exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_restore_workbook_versionWorkbooks Restore Workbook VersionC

Restore a workbook to a previous version.

NameRequiredDescriptionDefault
versionYes
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=false, openWorldHint=true, destructiveHint=false, but the description adds nothing about behavior beyond the name: it does not say what happens to the current workbook state, whether the overwritten revision becomes recoverable, or what permissions are required. The destructiveHint=false flag may even mislead, since a restore replaces live content.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler, which is appropriate for a two-parameter operation. It is efficient, though the brevity is partly a symptom of the missing detail rather than disciplined editing.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values need no explanation, but for a write operation the description omits critical context: the prerequisite for obtaining a version, and the effect on the current workbook. As written, an agent knows the intent but not how to execute it safely.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and neither parameter is documented in the description. It does not explain what form `version` takes (a raw integer id vs. an index into history) or how it relates to the version history tool, so the agent has no basis for supplying a correct value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb (Restore) and resource (a workbook) plus the target state (a previous version), so the agent knows exactly what the call does. It does not, however, differentiate itself from adjacent siblings such as workbooks_get_workbook_version_history or workbooks_update_workbook_contents.

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?

There is no when-to-use guidance, no mention of the prerequisite step (finding a valid version via workbooks_get_workbook_version_history), and no statement about when to prefer this over simply updating workbook contents. The agent must infer the whole workflow.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_run_workbook_agentWorkbooks Run Workbook AgentA

Run an in-workbook AI agent with conversation messages.

Mutating / execution operation. Consumes LLM tokens. Requires confirm=True. messages: List of conversation turns (role: 'user', 'assistant', 'system', 'tool' with content). version_tag_name: Target published version tag (defaults to latest published version).

NameRequiredDescriptionDefault
confirmNo
agent_idYes
messagesYes
metadataNo
max_turnsNo
workbook_idYes
response_formatNo
version_tag_nameNo
max_output_tokensNo

Output Schema

NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly=false, destructive=false, and openWorld=true. The description adds meaningful behavioral context beyond annotations: token consumption and the confirm=True requirement. It still does not detail side effects or what exactly gets created or modified during agent execution.

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 action and scoped constraints. Three short sentences and two parameter notes contain no filler; every line 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?

For a 9-parameter execution tool with zero schema descriptions, the definition covers the operation type, token cost, confirm requirement, messages structure, and version targeting. However, it omits semantics for several optional and required parameters, and does not describe what the caller receives beyond the existence of an output schema. Adequate but with clear 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 0%, so the description must carry parameter meaning. It documents messages structure (role/content) and version_tag_name default, plus confirm=True, but leaves workbook_id, agent_id, metadata, max_turns, max_output_tokens, and response_format entirely unexplained. It partially compensates by covering the most critical input parameter.

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 and resource: 'Run an in-workbook AI agent with conversation messages.' This is clearly distinct from the sibling list_workbook_agents tool and other workbook CRUD tools. An agent can identify the operation 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 Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear usage context: it is a mutating/execution operation, consumes LLM tokens, and requires confirm=True. It does not name explicit alternatives or when-not-to-use conditions, but no close-runner sibling exists for this exact operation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_save_template_from_workbookWorkbooks Save Template From WorkbookC

Save a workbook as a reusable template.

NameRequiredDescriptionDefault
nameNo
folder_idYes
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare this is a non-read-only, non-destructive, open-world mutation. The description adds nothing beyond the name: it does not say whether the source workbook is altered, what happens if a template of the same name exists, what permissions are required, or where the resulting template lives. For a creation operation with 0% schema coverage, that is a real gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single clean sentence with no filler, appropriately front-loaded. However, the brevity crosses into under-specification for a mutating tool rather than being disciplined conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described, but everything else is missing: no usage context, no parameter meaning, no behavioral notes for a non-read-only operation. The definition is not complete enough for an agent to call it confidently without trial and error.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the description never mentions any parameter. It does not explain that workbook_id is the source, that folder_id determines where the template is created, or that name is optional and defaults to null (implying the workbook's name is reused). With three undocumented parameters, the description fails to compensate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

A specific verb ('save') and resource ('workbook as a reusable template') make the operation unmistakable, and it is clearly distinct from the reverse-direction sibling workbooks_create_workbook_from_template. It does not explicitly name or contrast with those siblings, so it stops short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No statement of when to use this tool versus alternatives such as workbooks_duplicate_workbook, workbooks_promote_workbook, or workbooks_deploy_template_to_folder, all of which move workbooks/templates between locations. There are also no prerequisites (permissions, whether the workbook must be published/verified first).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_send_reportWorkbooks Send ReportA

Export (send) a report once to one or more targets.

body requires targets, config and attachments, and may set parameters and timeout, per Sigma's POST /v2/reports/{reportId}/send.

NameRequiredDescriptionDefault
bodyYes
report_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare non-read-only, non-destructive and open-world, so the external-delivery nature is known. The description adds that the payload must include targets, config and attachments, which is genuinely useful context, but it says nothing about permissions, delivery failure semantics, or whether the send is retryable.

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?

Two short sentences, with the purpose front-loaded before the payload requirements. The line-broken second sentence is slightly awkward but nothing is wasted.

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?

An output schema exists, so return values need no explanation, and the description covers the one-off send and payload shape. For a nested, fully undocumented body on an open-world action, however, the definition should say more about valid target formats and permission prerequisites.

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 0% and body is an undescribed open object, so the description carries the burden. It meaningfully decomposes body into required parts (targets, config, attachments) and optional ones (parameters, timeout), though it gives no shape or type detail for those fields.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource with a scope qualifier ('Export (send) a report once to one or more targets'), which implicitly separates it from the scheduled-send and export siblings. It does not name a sibling explicitly, so it lands at 4 rather than 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The word 'once' hints that this is for one-off delivery versus create_report_schedule or workbooks_send_workbook, but no alternative is named and no when-not condition is given. Usage must be inferred from the surrounding tool list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_send_workbookWorkbooks Send WorkbookA

Export (send) a workbook once to one or more targets: email, Slack, Google Sheets/Drive, or a webhook.

body follows Sigma's POST /v2/workbooks/{workbookId}/send: target (list of targets), configV2 (format and element or page to export), plus optional parameters, conditions, timeout and sendAsUser.

NameRequiredDescriptionDefault
bodyYes
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds real value beyond them: it discloses the underlying API contract (Sigma POST /v2/workbooks/{workbookId}/send) and previews the body's constituent fields — target list, configV2 format/element/page selection, plus optional parameters, conditions, timeout and sendAsUser. It stops short of stating permission requirements or whether sends are retractable, which is why this is not a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with what the tool does and the available targets before the schema-detail sentence. The second sentence is dense but each clause names a distinct body field, so little is wasted.

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?

The output schema exists, so return values need no explanation, and the annotations cover the read/write profile. For a two-parameter tool whose second parameter is an opaque object, the description supplies enough body structure for an agent to attempt a correct call without opening external documentation.

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 0% and body is an untyped free-form object, so the description carries the full burden — and it does so by naming the body's substructure (target, configV2, parameters, conditions, timeout, sendAsUser). It does not describe the shape of individual targets or the allowed configV2 format values, and it defers detail to an external API doc the agent may not have access to.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a specific verb (export/send) and resource (a workbook) plus a key scope qualifier: 'once' to one or more targets, and it enumerates the target types (email, Slack, Google Sheets/Drive, webhook). It does not name the nearby siblings that could be confused with it — workbooks_export_workbook, workbooks_export_and_download, or workbooks_add_workbook_schedule — so the agent must infer that 'once' is what separates this from a recurring schedule.

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 word 'once' implies this is the one-shot delivery counterpart to scheduling, and the target list implies delivery rather than local download, which is implied usage guidance. However, no alternative tool is named and no when-not conditions or prerequisites (e.g. target authorization, permission to send externally) are stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_share_workbook_cross_orgWorkbooks Share Workbook Cross OrgA

Share a workbook with other Sigma organizations.

body requires orgSlugs (list of organization slugs) and may set shareDatasets, copyInputTableData, sendEmail and emailMessage.

NameRequiredDescriptionDefault
bodyYes
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare a non-read-only, open-world, non-destructive operation, and the description usefully adds side-effect detail the annotations do not carry: it can copy input table data and send an email with a custom message. That is real added value, but it omits what the sharing actually confers (access level), whether it is reversible, or what permissions the caller needs for cross-org sharing.

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?

Two short sentences, purpose first and payload second, with essentially no filler. The line-broken field list is slightly ragged but still scannable and earns its space.

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?

An output schema exists, so return values need not be described, and the description covers both top-level parameters plus the body's key fields. For a cross-org mutation tool with a fully undocumented nested body, though, it should say more about what gets shared and what access is granted before calling.

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 0% and the body is an open object with additionalProperties, so the description carries the full burden. It does name the required orgSlugs and the four optional fields, which is far better than the schema alone. But it gives no type, format, or meaning for those fields (e.g. what shareDatasets includes, or the expected slug shape), so the compensation is only partial.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a specific verb and resource ('Share a workbook') plus a scope qualifier ('with other Sigma organizations') that separates it from the many internal-sharing siblings such as workbooks_grant_workbook_access and workbooks_copy_workbook_to_member. It never names those alternatives explicitly, so differentiation is implied by scope rather than stated.

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 cross-org scope hints at when this tool applies rather than an in-org grant, but there is no explicit when-to-use/when-not statement, no prerequisites, and no pointer to the sibling tools that handle internal sharing. Usage must be inferred from the phrase 'other Sigma organizations'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_tag_reportWorkbooks Tag ReportA
Idempotent

Apply a version tag to a report by tag NAME (e.g. 'Production'). The Sigma API takes the tag name here, not its ID.

NameRequiredDescriptionDefault
tag_nameYes
report_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=false, idempotentHint=true and openWorldHint=true, so the safety profile is carried by structured data. The description adds only one behavioral detail beyond that — the API expects a tag name rather than an ID — and says nothing about whether the tag must already exist, what happens if the tag is unknown, or whether existing tags are replaced.

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 short sentences, the purpose is front-loaded, and the second sentence is a targeted caveat rather than filler. Nothing is redundant with the name or title.

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?

An output schema exists, so return values need no explanation, and annotations cover idempotency and safety. Remaining gaps are whether the tag must be pre-created and how failures on an unknown tag name are surfaced, but the essentials for a correct call are present.

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 0%, so the description must carry the load: it explains tag_name precisely, including an example value and the non-obvious constraint that a name (not an ID) is required — exactly the mistake an agent would otherwise make. report_id is left implicit, which is a minor gap given its obvious meaning.

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 and resource (apply a version tag to a report) and pins the identifying dimension of the resource, which implicitly separates it from workbooks_tag_workbook and workbooks_remove_report_tag. An agent can tell exactly what this does 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 Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the use case (tagging a report) but offers no explicit when-to-use/when-not guidance and never names the alternatives in the sibling list (workbooks_tag_workbook, workbooks_remove_report_tag, workbooks_list_report_tags). The direction of the operation is clear, routing is left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_tag_workbookWorkbooks Tag WorkbookA
Idempotent

Apply a version tag to a workbook by tag NAME (e.g. 'Production'). The Sigma API takes the tag name here, not its ID.

NameRequiredDescriptionDefault
tag_nameYes
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, idempotentHint=true, destructiveHint=false, so the safety profile is covered. The description adds the useful real-world constraint that the API consumes the tag name rather than its ID, which prevents a common invocation error, but says nothing about whether unknown tag names are auto-created or what other tags are affected.

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 tight sentences, with the operation front-loaded and the API's name-vs-ID gotcha immediately following; no filler.

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?

An output schema exists so return values need no explanation, and the two-parameter surface is simple. The definition covers the key invocation pitfall, with only minor gaps around side effects of tagging.

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 0%, so the description must carry the load, and it does for tag_name by specifying the value must be the tag NAME and giving a concrete example ('Production'). workbook_id is left unexplained, though its meaning is inferable from the tool name and siblings.

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 and resource ('Apply a version tag to a workbook') and pins down the kind of tag operation, which distinguishes it from siblings like workbooks_remove_workbook_tag and workbooks_get_workbook_tags.

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?

Usage is implied by the definition of a tag-application operation, but the description never states when to use this versus workbooks_remove_workbook_tag or the datasets_tag_data_model equivalent, nor any preconditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_update_report_contentsWorkbooks Update Report ContentsA

Update a report from a code representation (JSON document specification).

Mutating operation. Requires confirm=True and document_version integer to guard against concurrent overwrites.

NameRequiredDescriptionDefault
confirmNo
contentsYes
report_idYes
document_versionYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnlyHint=false, destructiveHint=false), and the description adds genuinely new context: that the call is mutating, that confirm=True is mandatory, and that document_version exists as an optimistic-concurrency guard against overwrites. It doesn't say whether the new contents replace or merge with existing report contents.

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 tight sentences; the core action is front-loaded and the mutation/concurrency caveats follow immediately. No filler or restated annotation material.

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?

Output schema exists so return values need no explanation, and the mutation guard is documented, but for a tool with 0% schema coverage and a required nested object the description omits how the contents spec should be constructed and whether the sibling verify_report_spec should be run first.

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 0%, so the description has to carry the load. It meaningfully explains confirm and document_version but treats contents only as "a code representation (JSON document specification)" without describing its shape, despite it being a required nested object.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ("Update a report") plus the input form (a JSON document specification), which cleanly separates it from workbooks_update_workbook_contents. It never names a sibling explicitly, so the agent must infer which update target to choose when both exist.

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?

Gives prerequisite-style context (confirm=True, document_version) but no when-to-use guidance relative to verify_report_spec, get_report, or create_report, and no when-not-to-use warnings. Usage is implied rather than stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_update_report_scheduleWorkbooks Update Report ScheduleA

Update a report's scheduled export.

body may set target, schedule, configV2, description and suspensionAction. Retrieve schedule IDs with workbooks_list_report_schedules.

NameRequiredDescriptionDefault
bodyYes
report_idYes
schedule_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly=false, destructive=false and openWorld=true, so the safety profile is covered. The description adds the list of settable body fields, but omits whether this is a partial merge update or full replacement, and whether unspecified fields are preserved or cleared.

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?

Two tight sentences with the mutation purpose front-loaded and the ID-retrieval hint following. No filler; it could earn a 5 only with slightly more structural clarity around the body 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?

An output schema exists, so return values needn't be explained, and annotations carry the safety profile. Given the nested body object, the description is mostly complete, with only the partial-update semantics as a remaining gap.

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 0%, so the description must compensate. It partially does by naming the body sub-fields (target, schedule, configV2, description, suspensionAction), but leaves the top-level report_id/schedule_id semantics and the exact shape of each body field undocumented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Update a report's scheduled export'), so the agent knows it mutates an existing schedule rather than creating or deleting one. It doesn't explicitly contrast with siblings like workbooks_create_report_schedule or workbooks_delete_report_schedule, keeping it just below a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides one useful prerequisite ('Retrieve schedule IDs with workbooks_list_report_schedules'), which routes the agent to the listing sibling. However, it gives no guidance on when to update versus create/delete a schedule, or on partial vs full replacement semantics.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_update_workbook_bookmarkWorkbooks Update Workbook BookmarkA

Update a saved view (bookmark) in a workbook.

body may set name, isShared, isDefault and exploreKey. Retrieve bookmark IDs with workbooks_list_workbook_bookmarks.

NameRequiredDescriptionDefault
bodyYes
bookmark_idYes
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare it non-read-only, non-destructive, and open-world, so the safety profile is covered. The description adds that the body is a partial-editable set of fields, but says nothing about permissions, whether omitted fields are preserved, or what happens to the previous default when isDefault is set.

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 short sentences, front-loaded with the action, second sentence covering body consumption and the ID-prerequisite. Nothing redundant with the title or schema.

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?

An output schema exists so return values need no explanation, and annotations cover the safety profile. Combined with the field enumeration for the opaque body, this is nearly complete; only a note on partial-update semantics for the body is missing.

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 0% and body is an untyped open object, so the description carries the load by naming the updatable fields (name, isShared, isDefault, exploreKey). workbook_id and bookmark_id are only implicitly covered (bookmark_id via the list-tool pointer), which keeps this from a 5.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ("Update a saved view (bookmark) in a workbook") and even glosses what a bookmark is, which removes ambiguity against the many workbook siblings. It does not explicitly disambiguate from add/delete bookmark siblings, but the verb already does that implicitly.

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 tells the agent to retrieve bookmark IDs via workbooks_list_workbook_bookmarks, which is the real prerequisite for this call. No when-not-to-use guidance, 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.

workbooks_update_workbook_contentsWorkbooks Update Workbook ContentsA

Update a workbook from a code representation (JSON document specification).

Mutating operation. Requires confirm=True and document_version integer to guard against concurrent overwrites.

NameRequiredDescriptionDefault
confirmNo
contentsYes
workbook_idYes
document_versionYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false and destructiveHint=false, so 'Mutating operation' is largely redundant. The valuable addition is the optimistic-concurrency contract: confirm=True plus a document_version integer to prevent overwriting concurrent changes, a behavioral detail not present in the schema. It still omits whether contents fully replaces or merges existing content.

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 short sentences, front-loaded with the core action and followed by the mutation/concurrency constraint. Every sentence earns its place with no filler.

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 an output schema present, return values need not be described, and annotations cover the safety profile. The description covers the write/concurrency contract but leaves gaps on replace-vs-merge behavior and required permissions for a mutation 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 description coverage is 0% across 4 parameters, so the description carries the burden. It meaningfully explains confirm and document_version (required flag, concurrency guard), but workbook_id and contents are only gestured at via 'code representation (JSON document specification)' with no format or replacement semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource (update a workbook) and clarifies the input form (code/JSON document specification). It implicitly separates itself from workbooks_update_report_contents and workbooks_restore_workbook_version, but never names a sibling or contrasts behavior, so it falls short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description states the invocation condition that confirm=True and a document_version are required, which is real usage guidance. However, it gives no when-to-use/when-not guidance relative to alternatives like restore_workbook_version, verify_workbook_spec, or update_report_contents.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_update_workbook_scheduleWorkbooks Update Workbook ScheduleA

Update a workbook's scheduled export.

body may set target, schedule (cronSpec, timezone), configV2, description and suspensionAction. Retrieve schedule IDs with workbooks_list_workbook_schedules.

NameRequiredDescriptionDefault
bodyYes
schedule_idYes
workbook_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=false and openWorldHint=true, so safety framing is partly covered. The description adds the useful detail that body is a partial set of updatable fields ("may set ..."), but never says whether omitted fields are preserved or cleared, what permissions are needed, or how a changed cronSpec affects in-flight exports.

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?

Two short sentences, the mutation intent front-loaded, and the ID-retrieval hint placed after. No wasted text, though the field list could be tightened with a format note instead of a bare enumeration.

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?

An output schema exists, so return values need no explanation, and the body field enumeration covers the biggest schema gap. Still missing for a 3-required-param mutation with 0% schema coverage: partial-update semantics, cronSpec/timezone format, and permission requirements.

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 0% and body is a free-form additionalProperties object, so the schema carries essentially no semantics. The description compensates well by enumerating the accepted body fields (target, schedule with cronSpec/timezone, configV2, description, suspensionAction); it stops short of giving formats for cronSpec or timezone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ("Update a workbook's scheduled export"), which is concrete enough to separate it from workbooks_add_workbook_schedule and workbooks_delete_workbook_schedule. It doesn't explicitly name those siblings, but the resource scoping makes the 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 Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description supplies one actionable prerequisite: "Retrieve schedule IDs with workbooks_list_workbook_schedules." Beyond that it gives no guidance on when to update versus delete-and-recreate, or when to use workbooks_update_report_schedule instead.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_verify_report_specWorkbooks Verify Report SpecA
Read-only

Verify a report code representation specification without saving.

Runs report creation as a dry run (dryRun: true). Returns {valid, errors, warnings}. A success that does not echo dryRun: true fails the call (dry_run_not_honored) and names any ID that came back, since Sigma may then have created a real report.

NameRequiredDescriptionDefault
nameYes
documentYes
folder_idYes
descriptionNo

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Goes well beyond the annotations: it discloses the dryRun: true mechanism, the {valid, errors, warnings} result shape, and a concrete failure mode (dry_run_not_honored) where Sigma may have created a real report and the error names the leaked ID. This is exactly the safety context annotations cannot convey.

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?

Front-loaded with the one-line purpose, followed by the dry-run mechanism, return shape, and the failure caveat. Efficient overall; the backtick-heavy formatting of the last paragraph is slightly dense but each sentence carries information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be spelled out, yet the description still summarizes them helpfully. The remaining gap is parameter documentation for a nested spec object, which matters for a 3-required-param call.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across 4 parameters, including a nested free-form 'document' object. The description hints that the document is a 'report code representation specification', but name, folder_id, description and the document's expected shape are all left undocumented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (verify) and resource (report code representation specification) and adds the crucial qualifier 'without saving', which distinguishes it from workbooks_create_report. Sibling distinction is implicit rather than named, so it stops short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'Runs report creation as a dry run' implies this is a pre-flight check before workbooks_create_report, but the description never says when to call it or when to skip it, and no alternative tool is named. Usage is inferable by a competent agent but not stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workbooks_verify_workbook_specWorkbooks Verify Workbook SpecA
Read-only

Verify a workbook code representation specification without saving.

Validates schema structure, syntax, and element layout through a dry run of workbook creation (dryRun: true). Returns {valid, errors, warnings}. A success that does not echo dryRun: true fails the call (dry_run_not_honored) and names any ID that came back, since Sigma may then have created a real workbook.

NameRequiredDescriptionDefault
nameYes
documentYes
folder_idYes
descriptionNo

Output Schema

NameRequiredDescription
resultYes

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Goes well beyond the annotations by disclosing the return shape ({valid, errors, warnings}), the specific failure mode (dry_run_not_honored), and the consequence that a non-echoed dry run may mean Sigma actually created a real workbook, including named IDs. This is exactly the kind of safety-critical behavior an agent needs and that readOnlyHint alone would misrepresent.

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 tight segments: purpose, mechanism, return/failure contract. Front-loaded with the verb+resource, zero filler, and the most important warning is placed last for emphasis without bloating the text.

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 dry-run validator with a nested spec payload, the description covers intent, mechanism, and failure semantics thoroughly, and an output schema exists so return values need not be spelled out. The remaining gap is guidance on the shape/required fields of the document object, which no structured field covers.

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 0%, so the description must carry parameter meaning. It adds some value by characterizing what is being validated ('schema structure, syntax, and element layout' of the document spec), but name, folder_id, description, and the nested document object's contents remain undocumented anywhere.

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 (verify) applied to a specific resource (workbook code representation specification) with an explicit scoping qualifier ('without saving'). That qualifier alone distinguishes it from workbooks_create_workbook and from workbooks_verify_report_spec, which targets reports rather than workbooks.

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?

'Without saving' and the dry-run framing make the intended use case (validate before creating) clear, but the description never names the sibling it precedes, nor does it state explicitly when validation is unnecessary or mandatory. Clear usage context, no explicit alternatives or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workspace_create_folderWorkspace Create FolderC

Create a folder.

NameRequiredDescriptionDefault
nameYes
parent_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=false, and openWorldHint=true, so the safety profile is partly covered. The description adds nothing beyond that: no mention of permission requirements, name collision behavior, or what happens if parent_id is invalid.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is one short, front-loaded sentence with no waste, but at three words this is under-specification rather than conciseness. There is no second sentence earning its place because no information was provided at all.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained. However, for a mutating tool with two undocumented required parameters and zero usage guidance, the definition is far too thin for an agent to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and both required parameters (name, parent_id) are bare strings. The description does not mention either parameter, so it fails to compensate for the total lack of schema documentation. An agent cannot tell whether parent_id is a folder ID, workspace ID, or path.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

"Create a folder" gives a clear verb and resource, but it is essentially a restatement of the tool name workspace_create_folder with no scope or sibling differentiation. It does not say what kind of folder, in which workspace context, or how it relates to workspace_create_workspace or workspace_update_file.

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?

No when-to-use guidance, no prerequisites, and no alternatives are named. The agent is not told how this differs from creating a workspace or uploading a file, nor what the parent_id must reference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workspace_create_tagWorkspace Create TagB

Create a new tag (used for version promotion like 'Production', 'Staging').

NameRequiredDescriptionDefault
nameYes
colorNocyan

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false and destructiveHint=false, so the write-but-non-destructive profile is covered structurally. The description adds the useful semantic point that tags are used for version promotion, but says nothing about uniqueness constraints, duplicate-name behavior, or permission requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with zero filler; the purpose is stated immediately. It is arguably too terse given the gaps elsewhere, but there is no wasted prose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Output schema exists so return values need not be explained, but with 0% schema coverage on both parameters and no behavioral notes about duplicates or permissions, the description leaves the agent under-equipped for a create operation with a required argument.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for two parameters, so the description would need to compensate, but it never mentions 'name' (required) or 'color' (with a cyan default). The agent gets no help understanding acceptable values or formatting from the description text.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource ('Create a new tag') and adds semantic scope by explaining that tags drive version promotion. It does not explicitly differentiate itself from siblings like workspace_list_tags or workspace_delete_tag, but the create action is 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 parenthetical about version promotion implies the usage context (labeling builds/environments), which is helpful, but there is no explicit when-to-use statement, no note on prerequisites, and no mention of alternatives such as workspace_list_tags for discovering existing tags before creating duplicates.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workspace_create_workspaceWorkspace Create WorkspaceC

Create a new workspace.

NameRequiredDescriptionDefault
nameYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=false, and openWorldHint=true, so the safety profile is partly covered. However, the description adds nothing beyond that: it doesn't state whether the workspace name must be unique, whether creation requires elevated permissions, or whether the new workspace is empty on creation. For a mutating creation tool this is a notable gap.

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?

One short, front-loaded sentence with no filler or redundancy. It is efficient, though its brevity stems from under-specification rather than disciplined editing.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained. But for a creation/mutation tool with no annotations detailing permissions and a parameter with zero schema documentation, the description leaves an agent without the naming constraints or access requirements it needs to invoke this correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter 'name' has 0% schema description coverage, so the description is the only place semantics could be added — yet it says nothing about naming rules, uniqueness, length limits, or format. With one undocumented parameter, the description fails to compensate for the schema gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a clear verb+resource ('Create a new workspace'), but the sentence is essentially a paraphrase of the tool name and adds no distinguishing detail against siblings like workspace_create_folder, workspace_create_tag, or workspace_create_workspace's read counterparts. An agent can tell what it does, but nothing helps it choose between this and other create-style workspace tools.

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?

There is no when-to-use guidance, no prerequisites (e.g., required role/permission to create a workspace), and no mention of alternatives such as creating a folder or tag inside an existing workspace. The description gives no condition that would route an agent to this tool over its siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workspace_delete_fileWorkspace Delete FileC
Destructive

Delete a file/workbook/data model by its inode ID. Requires confirm=True.

NameRequiredDescriptionDefault
confirmNo
inode_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=true, and openWorldHint=true, so the safety profile is covered by structured data. The description adds only the confirm=True requirement, which is a mechanical restatement of a parameter rather than new behavioral context (permanent vs. recoverable, permission needs, cascading effects on pages/elements). Low added 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?

One short sentence, front-loaded with the action and target, followed by the confirm requirement. Efficient and non-redundant at the sentence level, though it is arguably too thin rather than too verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive, open-world mutation the description is thin: no irreversibility statement, no permission requirements, no dependency/cascade warnings, no mention of what happens on failure. An output schema exists so return values needn't be explained, but the destructive-operation context an agent needs to invoke this safely is largely absent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description should compensate. It does partially: it identifies inode_id as the deletion target and states confirm=True is required. But it does not explain what confirm actually gates, whether inode_id is workspace-scoped, or the boolean's default semantics beyond the schema's default:false. Two parameters at 0% coverage with only half the meaning conveyed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a clear verb+resource: 'Delete a file/workbook/data model by its inode ID.' The resource scope (file/workbook/data model via inode) is specific and distinguishes it from sibling delete tools (workspace_delete_tag, workspace_delete_workspace). It does not explicitly name those siblings, so it falls short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use context, no prerequisites, no alternatives. The only guidance is an in-description repetition of the confirm requirement, which is already visible in the schema/required-parameter list. An agent gets no help distinguishing this from workspace_update_file or other destructive siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workspace_delete_tagWorkspace Delete TagB
Destructive

Delete a tag. Requires confirm=True.

NameRequiredDescriptionDefault
tag_idYes
confirmNo

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true, readOnlyHint=false, and openWorldHint=true, so the agent knows this is a destructive write. The description adds the confirm gate, a genuine behavioral detail beyond the annotations. It stops short of explaining consequences such as whether the tag is detached from all tagged items or whether the deletion is reversible.

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?

Two short, front-loaded sentences with no filler; the core action leads and the requirement follows. It is terse rather than padded, though slightly more substance could be added without waste.

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?

An output schema exists, so return values need not be described. Still, for a destructive operation the description omits the blast radius (tags removed from all associated assets), permission requirements, and error behavior when confirm is omitted, leaving an agent under-informed about consequences.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description carries the full burden. It clarifies that confirm must be True, but says nothing about tag_id (format, where to obtain it, or whether it refers to a workspace-scoped tag). Half the parameters remain unexplained in both schema and description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Delete') and resource ('tag'), so an agent knows exactly what operation it performs. It doesn't distinguish itself from any alternative, though within the sibling set workspace_delete_tag is the only tag-deletion tool, so ambiguity is low.

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?

'Requires confirm=True' gives an invocation prerequisite, which is useful. However, it offers no when-to-use vs when-not guidance, no warning about irreversibility, and no pointer to alternatives like workspace_list_tags or workspace_create_tag.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workspace_delete_workspaceWorkspace Delete WorkspaceA
Destructive

Delete a workspace. Requires confirm=True.

NameRequiredDescriptionDefault
confirmNo
workspace_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true and readOnlyHint=false, so the safety profile is covered. The description adds a valuable behavioral detail—that confirm=True is required—which is not present in the annotations. It does not describe cascading effects or irreversibility, but with annotations carrying the destructive warning, this is a useful addition.

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 short sentences, front-loaded with the core action and immediately followed by the required condition. No filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive operation with an output schema and annotations covering safety, the description is minimally adequate. It mentions the confirm requirement but omits consequences of deletion (e.g., what happens to files, grants, or members) and required permissions, leaving meaningful gaps for a high-stakes operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% for both parameters. The description clarifies that confirm must be True, which adds meaning beyond the schema's default of false. However, workspace_id is not explained at all (format, source), so the description compensates for only one of two undocumented parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Delete') and resource ('workspace'), making the operation unambiguous. It does not explicitly contrast with sibling workspace tools, but the name and description are clear enough to distinguish it from list/get/create variants.

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 states a prerequisite ('Requires confirm=True') but gives no guidance on when to use this destructive operation versus alternatives like deactivating or archiving a workspace. Usage is implied by the tool name, but explicit when/when-not guidance is absent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workspace_delete_workspace_grantWorkspace Delete Workspace GrantB
Destructive

Delete a permission grant from a workspace. DESTRUCTIVE. Requires confirm=True.

NameRequiredDescriptionDefault
confirmNo
grant_idYes
workspace_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare destructiveHint=true and readOnlyHint=false, so 'DESTRUCTIVE' is a restatement that earns no credit. The description does add one genuinely useful behavioral fact beyond the annotations: the confirm=True precondition. It does not explain what happens when confirm is omitted or false, nor whether the operation is reversible.

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 short sentences, front-loaded with the action and immediately followed by the two facts an agent needs to avoid an error. No filler.

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?

An output schema exists so return values need no explanation. However, for a destructive grant-revocation tool the description omits prerequisites (admin/permission requirements), the source of grant_id, and the behavior when confirm is false, leaving gaps an agent would have to discover by trial.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description carries the full burden for three parameters. It partially explains confirm (must be true to proceed) but says nothing about workspace_id or grant_id, including where grant_id comes from. Two of three parameters remain undocumented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: 'Delete a permission grant from a workspace.' An agent can immediately tell this removes a grant rather than listing or creating one. It does not explicitly name sibling tools such as workspace_grant_workspace_access or workspace_list_workspace_grants, but the resource is unambiguous.

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?

No when-to-use or when-not-to-use guidance is given, and no alternative is named. It does not tell the agent to first call workspace_list_workspace_grants to obtain a grant_id, nor does it describe the effect of revoking access.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workspace_favorite_fileWorkspace Favorite FileC

Add a document to a member's favorites.

NameRequiredDescriptionDefault
inode_idYes
member_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare this is a non-destructive mutation (readOnlyHint=false, destructiveHint=false), so the safety profile is covered. The description adds nothing beyond the bare action: it does not say whether adding twice is idempotent, whether it errors on an unknown member_id or inode_id, or what permissions are required.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single short sentence with zero padding, which is good, but the brevity comes at the cost of under-specification rather than deliberate economy. It is front-loaded with the action, which helps.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be described. However, for a mutation tool with two entirely undocumented parameters and no annotations-level detail added, the description leaves an agent guessing about identifier formats and post-call state; it is not complete enough to invoke confidently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the two parameters (member_id, inode_id) carry no documented meaning in structured data. The description only loosely implies the mapping via the words 'document' and 'member' and gives no format hints, no pointer to workspace_get_file for resolving an inode, and no indication of which identifier namespace is expected.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a concrete verb ('Add') and resource ('a document to a member's favorites'), so the action is unambiguous. It does not explicitly delimit itself from workspace_unfavorite_file, but the name and description together make the direction of the operation clear.

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?

No guidance on when to use this versus workspace_unfavorite_file, workspace_list_favorites_for_member, or workspace_update_file. There is no mention of preconditions such as the member or document needing to exist, and no note about what happens if the item is already favorited.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workspace_get_fileWorkspace Get FileB
Read-only

Get a file's details (type, name, path, owner) by its inode ID.

NameRequiredDescriptionDefault
inode_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is communicated. The description adds only the fields retrieved, saying nothing about permission requirements, behavior for invalid/missing inode IDs, or whether invisible files are returned. With annotations carrying safety, this is adequate but thin.

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?

One sentence, front-loaded with the verb and resource, with the returned-field list and lookup key packed in without filler. Nothing could be removed without losing 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?

For a simple single-parameter read with annotations and an output schema, the description covers what is fetched and how it is addressed. Missing only edge-case behavior (not found, permissions), which is a minor gap given the output schema already defines the return shape.

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 0%, so the single untyped 'inode_id' string parameter gets its meaning entirely from the description's 'by its inode ID' phrase, which confirms the identifier role. However, no format, example, or sourcing hint is given, leaving the only parameter minimally documented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Get') and resource ('a file's details') plus the identifying key ('inode ID'), and enumerates returned fields (type, name, path, owner). An agent can distinguish it from workspace_list_files or workspace_update_file without opening a schema, though no sibling is named explicitly.

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 phrase 'by its inode ID' implies the caller must already possess an inode ID (presumably from workspace_list_files), but the description never says when to use this versus listing/searching, nor what to do if the inode is unknown. No alternatives or exclusions are offered.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workspace_get_workspaceWorkspace Get WorkspaceC
Read-only

Get workspace details.

NameRequiredDescriptionDefault
workspace_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered by structured data. The description adds nothing beyond that - no mention of permission requirements, whether grants are needed, or the shape/mutability of the returned workspace.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single short sentence that is front-loaded and wastes no words. Its brevity is efficient, though arguably under-specified rather than genuinely concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Although an output schema exists (so return values needn't be described), the description leaves the required parameter's format unexplained and gives no indication of what 'details' comprises or what authorization is needed, which is thin for a tool whose only input is an opaque identifier.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the single required parameter workspace_id is undocumented in both schema and description. The description does not clarify whether the ID is a UUID, slug, or name, so it fails to compensate for the coverage gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a clear verb and resource ('Get workspace details'), which distinguishes it from the list/create/delete siblings in the workspace family. However, 'details' is vague about what is actually returned, and it never distinguishes itself from workspace_list_workspaces or the grant-related siblings.

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?

There is no guidance on when to use this tool versus alternatives such as workspace_list_workspaces (to find a workspace_id) or the grants tools. The agent must infer that this is a single-resource fetch by ID from the name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workspace_grant_workspace_accessWorkspace Grant Workspace AccessC
Idempotent

Grant workspace access.

grant_type: 'member' or 'team'. permission: 'view', 'explore', 'organize' (Contribute), or 'edit' (Manage).

NameRequiredDescriptionDefault
grant_typeYes
grantee_idYes
permissionYes
workspace_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, idempotentHint=true, destructiveHint=false and openWorldHint=true, so the safety/mutation profile is covered. The description adds no behavioral context beyond that — nothing about idempotency, permission requirements, or what happens on a conflicting grant.

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?

Two tight lines, front-loaded verb+resource with parameter values following. No filler, though the terse style leaves obvious gaps rather than being complete and compact.

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?

An output schema exists so return values need not be explained, and annotations cover the safety profile. Still, for a 4-required-param mutation tool with 0% schema coverage, the definition omits two parameters and any prerequisite/permission context, leaving it only minimally viable.

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 0%, so the description carries the burden. It usefully documents grant_type ('member'/'team') and permission ('view', 'explore', 'organize'/Contribute, 'edit'/Manage), which are not in the schema as enums. However, workspace_id and grantee_id are entirely undocumented — notably the expected grantee_id format (member vs team id) is left ambiguous.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb+resource ("Grant workspace access"), which is enough to distinguish it from the sibling list/delete grant tools (workspace_list_workspace_grants, workspace_delete_workspace_grant). It does not explicitly name or differentiate against those siblings, so it stops short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no prerequisites (e.g. admin/caller permission level needed to grant), and no mention of the alternative grant tools. The agent must infer the context entirely from the name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workspace_list_all_filesWorkspace List All FilesA
Read-only

List files/folders in the organization, automatically following pagination.

parent_id: Optional parent folder ID to list files within. type_filter: Optional file type filter ('workbook', 'folder', 'data-model', 'template', 'symlink'). Note: Shortcuts/symlinks are excluded by default unless type_filter='symlink'.

NameRequiredDescriptionDefault
parent_idNo
type_filterNo

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/openWorld/non-destructive, so the safety profile is covered. The description adds two real behavioral facts beyond them: pagination is followed automatically, and symlinks are silently excluded unless explicitly filtered for. That default-exclusion behavior is exactly the kind of hidden trait an agent needs.

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?

Front-loaded with the core action and pagination note, then parameter semantics. Slightly redundant to inline parameter docs that mirror the schema fields, but every sentence carries information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need no explanation, and annotations cover the safety profile. The remaining gap is the absence of any disambiguation against 'workspace_list_files', a sibling whose name suggests overlapping function.

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 0%, so the description must carry the burden and it largely does: it explains parent_id's purpose and enumerates the accepted type_filter values ('workbook', 'folder', 'data-model', 'template', 'symlink'), which the schema does not. It stops short of stating what happens when parent_id is null (root vs. whole org).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource with scope ('List files/folders in the organization'), plus the pagination behavior. However, it does not differentiate itself from the sibling 'workspace_list_files', leaving the agent to guess which of the two near-identical listers to call.

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?

Usage is implied (org-wide listing with optional narrowing by parent folder or type), and the symlink note gives a concrete conditional rule for when shortcuts appear. But there is no explicit guidance on when to choose this over 'workspace_list_files' or the various workbooks_/datasets_ listers.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workspace_list_favorites_for_memberWorkspace List Favorites For MemberB
Read-only

List a member's favorite documents.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
member_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered; the description adds genuinely new behavior: it auto-paginates through every page and collapses the result into a single aggregate with nextPage null and hasMore false. That is important for an agent to know since it means no manual pagination and potentially a large response.

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?

Front-loaded purpose sentence followed by one dense paragraph on pagination semantics; every clause carries information. The phrasing ('Sigma's page', 'keys of Sigma's page') is slightly jargon-heavy but not wasteful.

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?

An output schema exists, so explaining the return keys is partly redundant, though the note that all pages are read adds real value. What is missing is the meaning of 'favorite' in this product and how to obtain a valid member_id, which leaves the call under-specified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the single required parameter member_id is never explained — no format, no hint that it is an admin member ID versus an email, no source tool. The baseline for a one-param tool is not automatic when the sole parameter is opaque.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: list a member's favorite documents. An agent knows exactly what comes back at a high level, but the description never distinguishes this from close siblings such as workspace_list_member_files or workspace_list_recent_files.

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?

There is no explicit when-to-use, no prerequisite for member_id, and no pointer to the obvious alternatives (recent files, member files, favorite_file/unfavorite_file). Usage must be inferred entirely from the name and first sentence.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workspace_list_filesWorkspace List FilesA
Read-only

List files/folders. Optionally filter by parentId or type ('workbook', 'folder', 'data-model', 'template').

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
parent_idNo
type_filterNo

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds genuinely non-obvious behavior: it auto-paginates through every page and returns entries aggregated from all pages with a null nextPage/hasMore=false. That auto-pagination trait materially changes how an agent should treat the result.

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 core purpose and filters are front-loaded in one short sentence. The second sentence is somewhat convoluted ('Sigma's page', 'Sigma's value') but is dense with useful pagination semantics rather than filler.

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 an output schema present, the return-value explanation is partly redundant, but the auto-pagination disclosure is information the agent needs for correct invocation. Given only two optional params, the definition covers what is needed to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must carry the load, and it does: it names both filters and enumerates the accepted type values ('workbook', 'folder', 'data-model', 'template'). It stops short of describing ID format or default/list-all behavior when both are omitted.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('List files/folders') and enumerates the filterable entity types. It does not explicitly distinguish itself from the close sibling workspace_list_all_files, so the agent must infer the scope difference.

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?

Explains the optional filtering dimensions (parentId, type) which implies usage, but never states when this tool should be chosen over workspace_list_all_files, workspace_list_recent_files, or workspace_list_member_files. No exclusions or prerequisites are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workspace_list_member_filesWorkspace List Member FilesA
Read-only

List the files (workbooks, data models, folders) a member can access.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read. limit is the page size.

NameRequiredDescriptionDefault
limitNo
member_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover safety (readOnlyHint true, destructiveHint false), so the description goes beyond them by disclosing the auto-pagination contract: it follows Sigma's pagination to the last page, aggregates `entries` from every page, reports `total` only when Sigma sends it, and always returns `nextPage` null / `hasMore` false. That unrequested detail materially changes how an agent interprets results and cost of a call.

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 core purpose is front-loaded in one sentence, with pagination mechanics following as supporting detail. Phrasing is somewhat dense with backticked keys and nested parentheticals ('(hasMore false where Sigma sends it)'), but no sentence is redundant.

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?

An output schema exists, yet the description still helpfully explains which keys the aggregate response will and won't contain, which is the main ambiguity for a paginating list tool. The only real gap is the absence of any statement about `member_id` format or whether inaccessible/invalid members error out.

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 0%, so the description carries the burden, and it clarifies that `limit` is the per-page size rather than a cap on total results. However, `member_id` is never described beyond being implicit in 'a member can access', leaving half the parameters undocumented in both schema and prose.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The first sentence states a specific verb (list) and resource (files: workbooks, data models, folders) scoped to a member's access, which is enough to separate it from workspace_list_files or workspace_list_all_files. It never names those siblings explicitly, so the differentiation relies on the scope phrase rather than an explicit contrast.

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 member-scoped framing implies when to reach for this tool, but there is no explicit statement of when to prefer it over workspace_list_files, workspace_list_all_files, or workbooks_list_workbooks_shared_with_member. The note that 'limit is the page size' and that all pages are read gives useful invocation context, but routing guidance is left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workspace_list_recent_filesWorkspace List Recent FilesB
Read-only

List the files a member opened recently.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
member_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint/destructiveHint=false, so safety is covered; the description adds genuinely useful behavior beyond that — it auto-follows Sigma's pagination to the last page and normalizes entries/total/nextPage/hasMore across pages. It doesn't cover auth scope or what 'recently' means in time terms, keeping it out of 5 territory.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose is front-loaded in one clean sentence, but the pagination sentence is overloaded with backticked identifiers and parenthetical asides ("Sigma's value", "where Sigma sends it") that are harder to parse than needed. It earns most of its place but reads redundantly.

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?

An output schema exists, so return fields don't need explanation, and the pagination behavior is well covered. However, for a tool whose only input is an unexplained member_id, the description leaves the key invocation detail unstated.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There is one required parameter (member_id) with 0% schema description coverage, and the description never explains it — not its format, whether it accepts emails vs IDs, or that it is required. With low coverage the description is expected to compensate, and it does not.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource+scope ("List the files a member opened recently"), which is enough to distinguish it from workspace_list_files and workspace_list_all_files by the recency angle. It never names those siblings or explicitly contrasts its scope, so it falls short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The word "recently" implies a use case, but there is no guidance on when to pick this over workspace_list_member_files, workspace_list_files, or workspace_list_all_files, and no prerequisites or exclusions are stated. The second paragraph is behavioral, not usage-oriented.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workspace_list_tagsWorkspace List TagsA
Read-only

List all tags in the organization.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read. page resumes from a nextPage cursor; limit is the page size.

NameRequiredDescriptionDefault
pageNo
limitNo

Output Schema

NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With annotations already declaring readOnly and non-destructive, the description adds real behavioral context: the tool auto-paginates to the last page, aggregates entries across pages, echoes Sigma's total, and always sets nextPage to null / hasMore to false. It also clarifies that limit is a per-page size rather than an overall cap, which is non-obvious and would otherwise cause mis-sized calls.

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?

Purpose is front-loaded in the first sentence, followed by pagination behavior in a single dense but organized sentence. Nothing is filler; the backtick key notation maps directly to the response envelope the agent will read.

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?

An output schema exists, so the description's recap of entries/total/nextPage partially duplicates structured data, but it adds value the output schema cannot express: that pagination is already exhausted and nextPage will be null. For a two-optional-parameter read tool this is close to complete; only the page-parameter staleness is unaddressed.

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 0%, so the description must carry parameter meaning, and it does: 'page resumes from a nextPage cursor' and 'limit is the page size.' The only gap is that the usefulness of page is left unresolved given nextPage is always null, so the interaction between the two parameters is slightly confusing.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource with scope: 'List all tags in the organization.' The organizational scope implicitly separates it from sibling tag-listers like workbooks_list_report_tags or datasets_list_data_model_tags, though no sibling is named explicitly.

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?

There is no explicit when-to-use or when-not-to-use guidance, and no alternatives are named. Usage is only implied by 'List all tags in the organization' plus the pagination instructions, which tell the agent how to call it but not when to prefer it over the other tag-related siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workspace_list_workbooks_for_tagWorkspace List Workbooks For TagA
Read-only

List the workbooks carrying a version tag.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read.

NameRequiredDescriptionDefault
tag_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses a genuinely non-obvious behavior that annotations cannot: the tool follows Sigma's pagination to the last page and therefore always returns nextPage=null / hasMore=false, with entries merged from every page. That is the key thing an agent needs to know to avoid looping on pagination. It does not cover permission or error behavior, so not a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose is front-loaded in the first sentence, with the pagination caveat following. The second sentence is dense but every clause carries new information about return semantics. No filler.

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?

An output schema exists, yet the description usefully explains why the pagination fields look the way they do — content the output schema cannot convey. Combined with readOnly/destructive annotations, an agent has enough to invoke it correctly; only the tag_id format is left unresolved.

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 0% and the single parameter tag_id is undocumented in the schema. The description implies tag_id identifies a version tag, but never states its format (ID vs. name) or whether it must be an existing tag. It compensates only partially.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource with a filter: 'List the workbooks carrying a version tag.' An agent can distinguish it from workbooks_list_workbooks (unfiltered) and workspace_list_tags (lists tags, not workbooks). It stops short of naming the sibling to use instead, which keeps it at 4.

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 tag filter implies the use case (find workbooks by version tag), but there is no explicit 'use this when / use X instead' guidance, no prerequisites, and no mention of what happens with an invalid or unused tag_id. Usage is inferable but not stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workspace_list_workspace_grantsWorkspace List Workspace GrantsA
Read-only

List permission grants on a workspace.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read. page resumes from a nextPage cursor; limit is the page size.

NameRequiredDescriptionDefault
pageNo
limitNo
workspace_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so safety is covered. The description adds real behavioral value the annotations cannot: the tool auto-follows pagination to the last page, so the agent never loops, and it explains that nextPage is always null and hasMore false as a consequence. It does not cover auth requirements, but the pagination traversal disclosure is substantive.

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 purpose is front-loaded in the first sentence and the remaining text is devoted to the non-obvious pagination contract. The prose is a little dense and repeats 'Sigma's' parentheticals, but every sentence conveys information the agent needs to interpret the response correctly.

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?

An output schema exists, so return-value explanation is optional, yet the description still clarifies the pagination envelope (entries, total, nextPage, hasMore), which is exactly the confusing part. Missing only permission/auth prerequisites and an explicit sibling routing statement for a fully complete definition.

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 0%, so the description must carry the load, and it does for two of three parameters: 'page resumes from a nextPage cursor' and 'limit is the page size' give meaning beyond bare types and defaults. workspace_id is left undescribed, which is the only gap; it is relatively self-evident but still undocumented.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The first sentence gives a specific verb and resource ('List permission grants on a workspace'), which distinguishes it from the mutation siblings workspace_grant_workspace_access and workspace_delete_workspace_grant, and the workspace scoping separates it from workbooks_list_workbook_grants. It does not name any sibling explicitly, so it stops short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied by the resource scope, but the description never states when to use this versus admin_list_grants, workbooks_list_workbook_grants, or datasets_list_connection_grants, nor does it mention preconditions such as required permissions. The pagination notes tell the agent how the tool behaves, not when to choose it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workspace_list_workspacesWorkspace List WorkspacesA
Read-only

List all workspaces.

Follows Sigma's pagination to the last page and returns the keys of Sigma's page: entries from every page, total when Sigma sends it (Sigma's value), and nextPage null (hasMore false where Sigma sends it) since every page is read. page resumes from a nextPage cursor; limit is the page size.

NameRequiredDescriptionDefault
pageNo
limitNo

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds meaningful behavior beyond that: it auto-paginates to the last page, aggregates entries from every page, reports total only when Sigma sends it, and sets nextPage null. That is valuable disclosure for an agent that might otherwise assume a single-page result.

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 purpose is front-loaded in one sentence, followed by tightly scoped pagination details. It is appropriately sized, though the return-key enumeration partially duplicates what the output schema already provides.

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 an output schema present, return values need not be exhaustively described, and annotations cover the safety profile. The description supplies the remaining critical context, auto-pagination and cursor/limit semantics, making it complete enough to call 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 description coverage is 0%, so the description must compensate, and it does explain both parameters: page resumes from a nextPage cursor and limit is the page size. It omits the default limit value and the relationship between cursor pagination and the claimed nextPage=null behavior is slightly muddled, keeping it from a 5.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource: "List all workspaces." That is sufficient to distinguish it from create/get/delete workspace siblings, though it does not explicitly name or route against any sibling list tool.

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?

There is no statement of when to use this tool versus alternatives, nor any prerequisites or exclusions. The description focuses entirely on pagination mechanics after the first sentence, leaving usage selection to inference from the name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workspace_unfavorite_fileWorkspace Unfavorite FileA
Destructive

Remove a document from a member's favorites. Requires confirm=True.

NameRequiredDescriptionDefault
confirmNo
inode_idYes
member_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true and openWorldHint=true, so the safety profile is partly covered. The description adds real value beyond structured data by stating confirm=True is mandatory — the schema only shows confirm with default false and no explanation, so this constraint would otherwise be invisible.

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 short sentences, action first, safety gate second. Nothing extraneous and nothing buried.

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?

An output schema exists and annotations cover the destructive/open-world profile, so the description needn't explain return values. Still, for a destructive mutation it omits idempotency behavior (what if not favorited), the identifier formats, and any permission requirements — meaningful gaps given 0% schema coverage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across 3 parameters, so the description carries the full burden. It clarifies only 'confirm' (must be True), leaving member_id and inode_id completely undocumented in both schema and description — an agent cannot tell whether inode_id is a document ID, path, or numeric identifier.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Remove') and resource ('a document from a member's favorites'), which is clearly distinct from the inverse sibling workspace_favorite_file. It does not explicitly name that sibling or note the inverse relationship, but the action is 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 sentence 'Requires confirm=True' is a genuine usage prerequisite that an agent must honor before calling. However, there is no guidance on when to prefer this over workspace_favorite_file or workspace_list_favorites_for_member, and no note on what happens if the document is not currently favorited.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workspace_update_fileWorkspace Update FileC

Update file properties (name, parentId for moving).

NameRequiredDescriptionDefault
bodyYes
inode_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds one behavioral fact beyond that – parentId triggers a move – but says nothing about required permissions, whether unspecified properties are preserved, or what a partial update does.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler. It is efficient, though arguably too terse for a tool whose body schema is entirely opaque.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need no explanation, but for a mutation tool with an opaque free-form body the definition leaves too much unstated: accepted fields beyond the two named, permission requirements, and behavior on unmentioned properties.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% and body is a free-form object (additionalProperties: true), so the schema documents nothing. The description names only name and parentId and leaves inode_id and all other accepted body properties unexplained, compensating only partially for a total schema gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ("Update file properties") and enumerates two updatable fields, so an agent can tell it apart from workspace_delete_file and workspace_list_files. It doesn't explicitly name an alternative sibling, but the purpose itself is unambiguous.

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?

No when-to-use guidance, no prerequisites, and no mention of alternatives such as workspace_delete_file or workspace_create_folder. The parenthetical about parentId implies a move operation but never states that this is the tool to use for moving.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workspace_update_tagWorkspace Update TagB

Update a version tag.

body may set name, description and color.

NameRequiredDescriptionDefault
bodyYes
tag_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the operation is a non-read-only, non-destructive, open-world mutation. The description adds that the body may carry name, description, and color, implying a partial-update semantic, but does not say whether omitted fields are preserved, whether tag names must be unique, or what permissions are required.

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?

Two short sentences, front-loaded with the action and followed by the field list; nothing is wasted. It is arguably too terse for a mutation tool, but there is no filler.

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?

Safety is covered by annotations and return shape by the output schema, so the description only needs mutation semantics. It supplies the field names but omits partial-update behavior, tag_id sourcing, and permission requirements, leaving meaningful gaps for a write operation with an untyped body.

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 0% and body is a free-form object with additionalProperties true, so the schema provides almost no meaning. The description partially compensates by naming the three known body fields, but tag_id is left completely unexplained (format, where to obtain it) and body still permits arbitrary keys.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('Update a version tag') and names the mutable fields, so an agent knows this is a partial mutation of an existing tag. It does not distinguish itself from the sibling workspace_create_tag or workspace_delete_tag, nor clarify whether 'version tag' means the same object those operate on.

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?

There is no guidance on when to use this versus workspace_create_tag, workspace_delete_tag, or workbooks_tag_workbook. No prerequisites, permissions, or conditions for selecting this tool are stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

workspace_update_workspaceWorkspace Update WorkspaceB

Update (rename) a workspace.

body requires name and may set noDuplicates.

NameRequiredDescriptionDefault
bodyYes
workspace_idYes

Output Schema

NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare non-destructive write with openWorldHint, so safety is covered. The description adds that only the name field is meaningfully writable, which is real added context, but says nothing about required permissions, whether renames are reversible, or what noDuplicates actually changes about the operation.

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?

Two short sentences, operation stated first, parameter note second. Efficient with no filler; the phrasing 'body requires name' is slightly terse but readable.

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?

Output schema exists so return values need no explanation, and annotations cover the safety profile. For a two-parameter nested-body tool, the description does enough to guide a call, though it would be complete with one clause on permissions and what noDuplicates controls.

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 0% and body is a free-form object with additionalProperties: true, so the description is carrying the whole burden. It partially compensates by naming the body keys 'name' (required) and optional 'noDuplicates', but leaves workspace_id unexplained and doesn't describe the type/format of name or the semantics of noDuplicates.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Update (rename) a workspace'), which distinguishes it from sibling update tools like workspace_update_file or workspace_update_tag. The parenthetical narrows scope to renaming, though it isn't explicit that this is the ONLY mutation supported.

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?

No statement of when to use this versus workspace_update_file, workspace_update_tag, or other workspace operations, and no prerequisites (e.g. admin permission on the workspace). The '(rename)' hint implies usage but no alternative or exclusion is ever named.

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.

  1. 85 tool updatesv2.1.0
    • Addedadmin_add_deployment_tenant
    • Addedadmin_batch_add_tenant_capabilities
    • Addedadmin_batch_remove_tenant_capabilities
    • Addedadmin_create_account_type
    • Addedadmin_create_api_connector
    • Addedadmin_create_api_credential
    • Addedadmin_create_translation
    • Addedadmin_delete_account_type
    • Addedadmin_delete_api_connector
    • Addedadmin_delete_api_credential
    • Addedadmin_delete_grant
    • Addedadmin_delete_tenant
    • Addedadmin_delete_translation
    • Addedadmin_delete_translation_variant
    • Addedadmin_delete_user_attribute
    • Addedadmin_get_api_credential
    • Addedadmin_get_grant
    • Addedadmin_get_translation
    • Addedadmin_get_translation_variant
    • Addedadmin_get_user_attribute
    • Addedadmin_list_api_credentials
    • Addedadmin_list_deployable_tenants
    • Addedadmin_list_deployment_tenants
    • Addedadmin_list_member_schedules
    • Addedadmin_list_tenant_deployment_capabilities
    • Addedadmin_remove_deployment_document
    • Addedadmin_remove_deployment_tenant
    • Addedadmin_revoke_member_tokens
    • Addedadmin_set_user_attribute_for_users
    • Addedadmin_update_api_connector
    • Addedadmin_update_api_credential
    • Addedadmin_update_deployment
    • Addedadmin_update_team
    • Addedadmin_update_tenant
    • Addedadmin_update_translation
    • Addedadmin_update_translation_variant
    • Addedadmin_update_user_attribute
    • Addeddatasets_add_connection_path_grant
    • Addeddatasets_create_connection
    • Addeddatasets_delete_connection
    • Addeddatasets_delete_connection_grant
    • Addeddatasets_get_data_model_materialization
    • Addeddatasets_list_connection_path_grants
    • Addeddatasets_list_connection_paths
    • Addeddatasets_list_data_model_materialization_schedules
    • Addeddatasets_list_data_model_sources
    • Addeddatasets_list_data_model_tags
    • Addeddatasets_lookup_connection_path
    • Addeddatasets_materialize_data_model
    • Addedelements_delete_source_swap_policy
    • Addedelements_list_element_lineage
    • Addedelements_update_source_swap_policy
    • Addedworkbooks_create_report_grant
    • Addedworkbooks_delete_report_grant
    • Addedworkbooks_delete_report_schedule
    • Addedworkbooks_delete_shared_template
    • Addedworkbooks_delete_workbook_bookmark
    • Addedworkbooks_delete_workbook_embed
    • Addedworkbooks_delete_workbook_grant
    • Addedworkbooks_duplicate_tagged_report
    • Addedworkbooks_duplicate_tagged_workbook
    • Addedworkbooks_get_report_element_query
    • Addedworkbooks_get_report_version_history
    • Addedworkbooks_list_report_columns
    • Addedworkbooks_list_report_controls
    • Addedworkbooks_list_report_page_elements
    • Addedworkbooks_list_report_pages
    • Addedworkbooks_list_report_tags
    • Addedworkbooks_remove_report_tag
    • Addedworkbooks_send_report
    • Addedworkbooks_send_workbook
    • Addedworkbooks_share_workbook_cross_org
    • Addedworkbooks_tag_report
    • Addedworkbooks_update_report_schedule
    • Addedworkbooks_update_workbook_bookmark
    • Addedworkbooks_update_workbook_schedule
    • Addedworkspace_favorite_file
    • Addedworkspace_get_file
    • Addedworkspace_list_favorites_for_member
    • Addedworkspace_list_member_files
    • Addedworkspace_list_recent_files
    • Addedworkspace_list_workbooks_for_tag
    • Addedworkspace_unfavorite_file
    • Addedworkspace_update_tag
    • Addedworkspace_update_workspace
  2. 342 tool updatesv2.0.4
    • Addedadmin_add_allowed_ips
    • Addedadmin_add_deployment_documents
    • Addedadmin_api_capabilities
    • Addedadmin_archive_deployment
    • Addedadmin_bulk_assign_team_members
    • Addedadmin_bulk_deactivate_members
    • Addedadmin_bulk_remove_team_members
    • Addedadmin_change_member_email
    • Addedadmin_configure_org_ai
    • Addedadmin_create_deployment
    • Addedadmin_create_grant
    • Addedadmin_create_member
    • Addedadmin_create_team
    • Addedadmin_create_tenant
    • Addedadmin_create_user_attribute
    • Addedadmin_deactivate_member
    • Addedadmin_delete_team
    • Addedadmin_delete_user_attribute_for_team
    • Addedadmin_delete_user_attribute_for_tenant
    • Addedadmin_delete_user_attribute_for_user
    • Addedadmin_get_api_connector
    • Addedadmin_get_current_user
    • Addedadmin_get_deployment
    • Addedadmin_get_member
    • Addedadmin_get_org_setting
    • Addedadmin_get_team
    • Addedadmin_get_tenant
    • Addedadmin_get_tenant_scoped_info
    • Addedadmin_get_user_attribute_teams
    • Addedadmin_get_user_attribute_tenants
    • Addedadmin_get_user_attribute_users
    • Addedadmin_list_account_types
    • Addedadmin_list_all_members
    • Addedadmin_list_all_teams
    • Addedadmin_list_allowed_ips
    • Addedadmin_list_api_connectors
    • Addedadmin_list_deployment_documents
    • Addedadmin_list_deployments
    • Addedadmin_list_grants
    • Addedadmin_list_member_teams
    • Addedadmin_list_members
    • Addedadmin_list_org_workbook_agents
    • Addedadmin_list_recent_webhooks
    • Addedadmin_list_team_members
    • Addedadmin_list_teams
    • Addedadmin_list_tenants
    • Addedadmin_list_tenants_paginated
    • Addedadmin_list_translations
    • Addedadmin_list_user_attributes
    • Addedadmin_onboard_member
    • Addedadmin_remove_allowed_ips
    • Addedadmin_reset_org_email_branding
    • Addedadmin_set_user_attribute_for_teams
    • Addedadmin_set_user_attribute_for_tenants
    • Addedadmin_update_member
    • Addedadmin_update_org_setting
    • Addedadmin_update_team_members
    • Addedadmin_update_user_attribute_for_teams
    • Addedadmin_update_user_attribute_for_tenants
    • Addedadmin_update_user_attribute_for_users
    • Addeddatasets_add_connection_grant
    • Addeddatasets_bulk_sync_tenant_connections
    • Addeddatasets_create_data_model
    • Addeddatasets_delete_connection_path_grant
    • Addeddatasets_get_connection
    • Addeddatasets_get_data_model
    • Addeddatasets_get_data_model_spec
    • Addeddatasets_list_all_data_models
    • Addeddatasets_list_columns_for_table
    • Addeddatasets_list_connection_grants
    • Addeddatasets_list_connections
    • Addeddatasets_list_data_model_columns
    • Addeddatasets_list_data_model_elements
    • Addeddatasets_list_data_model_lineage
    • Addeddatasets_list_data_models
    • Addeddatasets_swap_data_model_sources
    • Addeddatasets_swap_report_sources
    • Addeddatasets_sync_all_tables_in_schema
    • Addeddatasets_sync_connection
    • Addeddatasets_tag_data_model
    • Addeddatasets_test_connection
    • Addeddatasets_update_data_model
    • Addedelements_create_source_swap_policy
    • Addedelements_formula_pitfalls
    • Addedelements_get_doc_page
    • Addedelements_get_element_columns
    • Addedelements_get_element_query
    • Addedelements_get_materialization_job
    • Addedelements_get_source_swap_policy
    • Addedelements_list_all_input_tables
    • Addedelements_list_materialization_schedules
    • Addedelements_list_source_swap_policies
    • Addedelements_list_workbook_columns
    • Addedelements_list_workbook_controls
    • Addedelements_list_workbook_elements
    • Addedelements_list_workbook_page_elements
    • Addedelements_list_workbook_queries
    • Addedelements_list_workbook_sources
    • Addedelements_materialize_and_wait
    • Addedelements_materialize_element
    • Addedelements_search_docs
    • Addedelements_swap_template_sources
    • Addedelements_swap_workbook_sources
    • Removedsigma_accept_shared_template
    • Removedsigma_add_allowed_ips
    • Removedsigma_add_connection_grant
    • Removedsigma_add_deployment_documents
    • Removedsigma_add_workbook_bookmark
    • Removedsigma_add_workbook_schedule
    • Removedsigma_api_capabilities
    • Removedsigma_archive_deployment
    • Removedsigma_bulk_assign_team_members
    • Removedsigma_bulk_sync_tenant_connections
    • Removedsigma_change_member_email
    • Removedsigma_configure_org_ai
    • Removedsigma_convert_workbook_to_report
    • Removedsigma_copy_workbook_to_member
    • Removedsigma_create_data_model
    • Removedsigma_create_deployment
    • Removedsigma_create_folder
    • Removedsigma_create_grant
    • Removedsigma_create_member
    • Removedsigma_create_report
    • Removedsigma_create_report_schedule
    • Removedsigma_create_source_swap_policy
    • Removedsigma_create_tag
    • Removedsigma_create_team
    • Removedsigma_create_tenant
    • Removedsigma_create_user_attribute
    • Removedsigma_create_workbook
    • Removedsigma_create_workbook_embed
    • Removedsigma_create_workbook_from_template
    • Removedsigma_create_workspace
    • Removedsigma_deactivate_member
    • Removedsigma_delete_connection_path_grant
    • Removedsigma_delete_file
    • Removedsigma_delete_tag
    • Removedsigma_delete_team
    • Removedsigma_delete_user_attribute_for_team
    • Removedsigma_delete_user_attribute_for_tenant
    • Removedsigma_delete_user_attribute_for_user
    • Removedsigma_delete_workbook_schedule
    • Removedsigma_delete_workspace
    • Removedsigma_delete_workspace_grant
    • Removedsigma_deploy_template_to_folder
    • Removedsigma_download_query_export
    • Removedsigma_duplicate_report
    • Removedsigma_duplicate_workbook
    • Removedsigma_export_and_download
    • Removedsigma_export_report
    • Removedsigma_export_workbook
    • Removedsigma_formula_pitfalls
    • Removedsigma_get_api_connector
    • Removedsigma_get_connection
    • Removedsigma_get_current_user
    • Removedsigma_get_data_model
    • Removedsigma_get_data_model_spec
    • Removedsigma_get_deployment
    • Removedsigma_get_doc_page
    • Removedsigma_get_element_columns
    • Removedsigma_get_element_query
    • Removedsigma_get_materialization_job
    • Removedsigma_get_member
    • Removedsigma_get_org_setting
    • Removedsigma_get_report
    • Removedsigma_get_source_swap_policy
    • Removedsigma_get_team
    • Removedsigma_get_template
    • Removedsigma_get_tenant
    • Removedsigma_get_tenant_scoped_info
    • Removedsigma_get_user_attribute_teams
    • Removedsigma_get_user_attribute_tenants
    • Removedsigma_get_user_attribute_users
    • Removedsigma_get_workbook
    • Removedsigma_get_workbook_tags
    • Removedsigma_get_workbook_version_history
    • Removedsigma_get_workspace
    • Removedsigma_grant_workbook_access
    • Removedsigma_grant_workspace_access
    • Removedsigma_list_account_types
    • Removedsigma_list_all_data_models
    • Removedsigma_list_all_files
    • Removedsigma_list_all_input_tables
    • Removedsigma_list_all_members
    • Removedsigma_list_all_reports
    • Removedsigma_list_all_teams
    • Removedsigma_list_all_workbooks
    • Removedsigma_list_allowed_ips
    • Removedsigma_list_api_connectors
    • Removedsigma_list_columns_for_table
    • Removedsigma_list_connection_grants
    • Removedsigma_list_connections
    • Removedsigma_list_data_model_columns
    • Removedsigma_list_data_model_elements
    • Removedsigma_list_data_model_lineage
    • Removedsigma_list_data_models
    • Removedsigma_list_deployment_documents
    • Removedsigma_list_deployments
    • Removedsigma_list_files
    • Removedsigma_list_grants
    • Removedsigma_list_materialization_schedules
    • Removedsigma_list_member_teams
    • Removedsigma_list_members
    • Removedsigma_list_org_workbook_agents
    • Removedsigma_list_recent_webhooks
    • Removedsigma_list_report_elements
    • Removedsigma_list_report_lineage
    • Removedsigma_list_report_queries
    • Removedsigma_list_report_schedules
    • Removedsigma_list_report_sources
    • Removedsigma_list_reports
    • Removedsigma_list_shared_templates
    • Removedsigma_list_source_swap_policies
    • Removedsigma_list_tags
    • Removedsigma_list_team_members
    • Removedsigma_list_teams
    • Removedsigma_list_templates
    • Removedsigma_list_tenants
    • Removedsigma_list_tenants_paginated
    • Removedsigma_list_translations
    • Removedsigma_list_user_attributes
    • Removedsigma_list_workbook_agents
    • Removedsigma_list_workbook_bookmarks
    • Removedsigma_list_workbook_columns
    • Removedsigma_list_workbook_controls
    • Removedsigma_list_workbook_elements
    • Removedsigma_list_workbook_embeds
    • Removedsigma_list_workbook_grants
    • Removedsigma_list_workbook_lineage
    • Removedsigma_list_workbook_page_elements
    • Removedsigma_list_workbook_pages
    • Removedsigma_list_workbook_queries
    • Removedsigma_list_workbook_schedules
    • Removedsigma_list_workbook_sources
    • Removedsigma_list_workbooks
    • Removedsigma_list_workbooks_shared_with_member
    • Removedsigma_list_workspace_grants
    • Removedsigma_list_workspaces
    • Removedsigma_materialize_and_wait
    • Removedsigma_materialize_element
    • Removedsigma_onboard_member
    • Removedsigma_promote_workbook
    • Removedsigma_reassign_workbook_ownership
    • Removedsigma_remove_allowed_ips
    • Removedsigma_remove_workbook_tag
    • Removedsigma_reset_org_email_branding
    • Removedsigma_restore_workbook_version
    • Removedsigma_run_workbook_agent
    • Removedsigma_save_template_from_workbook
    • Removedsigma_search_docs
    • Removedsigma_set_user_attribute_for_teams
    • Removedsigma_set_user_attribute_for_tenants
    • Removedsigma_swap_data_model_sources
    • Removedsigma_swap_report_sources
    • Removedsigma_swap_template_sources
    • Removedsigma_swap_workbook_sources
    • Removedsigma_sync_all_tables_in_schema
    • Removedsigma_sync_connection
    • Removedsigma_tag_data_model
    • Removedsigma_tag_workbook
    • Removedsigma_test_connection
    • Removedsigma_update_data_model
    • Removedsigma_update_file
    • Removedsigma_update_member
    • Removedsigma_update_org_setting
    • Removedsigma_update_report_contents
    • Removedsigma_update_team_members
    • Removedsigma_update_user_attribute_for_teams
    • Removedsigma_update_user_attribute_for_tenants
    • Removedsigma_update_user_attribute_for_users
    • Removedsigma_update_workbook_contents
    • Removedsigma_verify_report_spec
    • Removedsigma_verify_workbook_spec
    • Addedworkbooks_accept_shared_template
    • Addedworkbooks_add_workbook_bookmark
    • Addedworkbooks_add_workbook_schedule
    • Addedworkbooks_convert_workbook_to_report
    • Addedworkbooks_copy_workbook_to_member
    • Addedworkbooks_create_report
    • Addedworkbooks_create_report_schedule
    • Addedworkbooks_create_workbook
    • Addedworkbooks_create_workbook_embed
    • Addedworkbooks_create_workbook_from_template
    • Addedworkbooks_delete_workbook_schedule
    • Addedworkbooks_deploy_template_to_folder
    • Addedworkbooks_download_query_export
    • Addedworkbooks_duplicate_report
    • Addedworkbooks_duplicate_workbook
    • Addedworkbooks_export_and_download
    • Addedworkbooks_export_report
    • Addedworkbooks_export_workbook
    • Addedworkbooks_get_report
    • Addedworkbooks_get_template
    • Addedworkbooks_get_workbook
    • Addedworkbooks_get_workbook_tags
    • Addedworkbooks_get_workbook_version_history
    • Addedworkbooks_grant_workbook_access
    • Addedworkbooks_list_all_reports
    • Addedworkbooks_list_all_workbooks
    • Addedworkbooks_list_report_elements
    • Addedworkbooks_list_report_lineage
    • Addedworkbooks_list_report_queries
    • Addedworkbooks_list_report_schedules
    • Addedworkbooks_list_report_sources
    • Addedworkbooks_list_reports
    • Addedworkbooks_list_shared_templates
    • Addedworkbooks_list_templates
    • Addedworkbooks_list_workbook_agents
    • Addedworkbooks_list_workbook_bookmarks
    • Addedworkbooks_list_workbook_embeds
    • Addedworkbooks_list_workbook_grants
    • Addedworkbooks_list_workbook_lineage
    • Addedworkbooks_list_workbook_pages
    • Addedworkbooks_list_workbook_schedules
    • Addedworkbooks_list_workbooks
    • Addedworkbooks_list_workbooks_shared_with_member
    • Addedworkbooks_promote_workbook
    • Addedworkbooks_reassign_workbook_ownership
    • Addedworkbooks_remove_workbook_tag
    • Addedworkbooks_restore_workbook_version
    • Addedworkbooks_run_workbook_agent
    • Addedworkbooks_save_template_from_workbook
    • Addedworkbooks_tag_workbook
    • Addedworkbooks_update_report_contents
    • Addedworkbooks_update_workbook_contents
    • Addedworkbooks_verify_report_spec
    • Addedworkbooks_verify_workbook_spec
    • Addedworkspace_create_folder
    • Addedworkspace_create_tag
    • Addedworkspace_create_workspace
    • Addedworkspace_delete_file
    • Addedworkspace_delete_tag
    • Addedworkspace_delete_workspace
    • Addedworkspace_delete_workspace_grant
    • Addedworkspace_get_workspace
    • Addedworkspace_grant_workspace_access
    • Addedworkspace_list_all_files
    • Addedworkspace_list_files
    • Addedworkspace_list_tags
    • Addedworkspace_list_workspace_grants
    • Addedworkspace_list_workspaces
    • Addedworkspace_update_file
  3. 170 tool updatesv1.2.0
    • Changedsigma_accept_shared_template6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / share_id / title
        Removed value: -"Share Id"
      • removedInput schema / title
        Removed value: -"sigma_accept_shared_templateArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_accept_shared_templateOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Addedsigma_add_allowed_ips
    • Changedsigma_add_connection_grant9 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / connection_id / title
        Removed value: -"Connection Id"
      • removedInput schema / properties / grant_type / title
        Removed value: -"Grant Type"
      • removedInput schema / properties / grantee_id / title
        Removed value: -"Grantee Id"
      • removedInput schema / properties / permission / title
        Removed value: -"Permission"
      • removedInput schema / title
        Removed value: -"sigma_add_connection_grantArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_add_connection_grantOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_add_deployment_documents7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / inode_ids / title
        Removed value: -"Inode Ids"
      • removedInput schema / properties / policy_id / title
        Removed value: -"Policy Id"
      • removedInput schema / title
        Removed value: -"sigma_add_deployment_documentsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_add_deployment_documentsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_add_workbook_bookmark7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / body / title
        Removed value: -"Body"
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_add_workbook_bookmarkArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_add_workbook_bookmarkOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_add_workbook_schedule7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / body / title
        Removed value: -"Body"
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_add_workbook_scheduleArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_add_workbook_scheduleOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_api_capabilities5 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / title
        Removed value: -"sigma_api_capabilitiesArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_api_capabilitiesOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_archive_deployment7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / confirm / title
        Removed value: -"Confirm"
      • removedInput schema / properties / policy_id / title
        Removed value: -"Policy Id"
      • removedInput schema / title
        Removed value: -"sigma_archive_deploymentArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_archive_deploymentOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_bulk_assign_team_members7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / member_ids / title
        Removed value: -"Member Ids"
      • removedInput schema / properties / team_id / title
        Removed value: -"Team Id"
      • removedInput schema / title
        Removed value: -"sigma_bulk_assign_team_membersArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_bulk_assign_team_membersOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_bulk_sync_tenant_connections6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / dry_run / title
        Removed value: -"Dry Run"
      • removedInput schema / title
        Removed value: -"sigma_bulk_sync_tenant_connectionsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_bulk_sync_tenant_connectionsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_change_member_email7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / member_id / title
        Removed value: -"Member Id"
      • removedInput schema / properties / new_email / title
        Removed value: -"New Email"
      • removedInput schema / title
        Removed value: -"sigma_change_member_emailArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_change_member_emailOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Addedsigma_configure_org_ai
    • Changedsigma_convert_workbook_to_report8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / destination_folder_id / title
        Removed value: -"Destination Folder Id"
      • removedInput schema / properties / name / title
        Removed value: -"Name"
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_convert_workbook_to_reportArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_convert_workbook_to_reportOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_copy_workbook_to_member8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / member_id / title
        Removed value: -"Member Id"
      • removedInput schema / properties / name / title
        Removed value: -"Name"
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_copy_workbook_to_memberArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_copy_workbook_to_memberOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_create_data_model6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / spec / title
        Removed value: -"Spec"
      • removedInput schema / title
        Removed value: -"sigma_create_data_modelArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_create_data_modelOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_create_deployment7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / body / title
        Removed value: -"Body"
      • removedInput schema / properties / name / title
        Removed value: -"Name"
      • removedInput schema / title
        Removed value: -"sigma_create_deploymentArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_create_deploymentOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_create_folder7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / name / title
        Removed value: -"Name"
      • removedInput schema / properties / parent_id / title
        Removed value: -"Parent Id"
      • removedInput schema / title
        Removed value: -"sigma_create_folderArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_create_folderOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_create_grant6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / body / title
        Removed value: -"Body"
      • removedInput schema / title
        Removed value: -"sigma_create_grantArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_create_grantOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_create_member9 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / email / title
        Removed value: -"Email"
      • removedInput schema / properties / first_name / title
        Removed value: -"First Name"
      • removedInput schema / properties / last_name / title
        Removed value: -"Last Name"
      • removedInput schema / properties / member_type / title
        Removed value: -"Member Type"
      • removedInput schema / title
        Removed value: -"sigma_create_memberArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_create_memberOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_create_report6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / body / title
        Removed value: -"Body"
      • removedInput schema / title
        Removed value: -"sigma_create_reportArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_create_reportOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_create_report_schedule7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / body / title
        Removed value: -"Body"
      • removedInput schema / properties / report_id / title
        Removed value: -"Report Id"
      • removedInput schema / title
        Removed value: -"sigma_create_report_scheduleArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_create_report_scheduleOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_create_source_swap_policy6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / body / title
        Removed value: -"Body"
      • removedInput schema / title
        Removed value: -"sigma_create_source_swap_policyArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_create_source_swap_policyOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_create_tag7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / color / title
        Removed value: -"Color"
      • removedInput schema / properties / name / title
        Removed value: -"Name"
      • removedInput schema / title
        Removed value: -"sigma_create_tagArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_create_tagOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_create_team7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / description / title
        Removed value: -"Description"
      • removedInput schema / properties / name / title
        Removed value: -"Name"
      • removedInput schema / title
        Removed value: -"sigma_create_teamArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_create_teamOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_create_tenant7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / body / title
        Removed value: -"Body"
      • removedInput schema / properties / name / title
        Removed value: -"Name"
      • removedInput schema / title
        Removed value: -"sigma_create_tenantArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_create_tenantOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_create_user_attribute8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / default_value / title
        Removed value: -"Default Value"
      • removedInput schema / properties / description / title
        Removed value: -"Description"
      • removedInput schema / properties / name / title
        Removed value: -"Name"
      • removedInput schema / title
        Removed value: -"sigma_create_user_attributeArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_create_user_attributeOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_create_workbook8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / description / title
        Removed value: -"Description"
      • removedInput schema / properties / folder_id / title
        Removed value: -"Folder Id"
      • removedInput schema / properties / name / title
        Removed value: -"Name"
      • removedInput schema / title
        Removed value: -"sigma_create_workbookArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_create_workbookOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_create_workbook_embed9 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / embed_type / title
        Removed value: -"Embed Type"
      • removedInput schema / properties / source_id / title
        Removed value: -"Source Id"
      • removedInput schema / properties / source_type / title
        Removed value: -"Source Type"
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_create_workbook_embedArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_create_workbook_embedOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_create_workbook_from_template8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / folder_id / title
        Removed value: -"Folder Id"
      • removedInput schema / properties / name / title
        Removed value: -"Name"
      • removedInput schema / properties / template_id / title
        Removed value: -"Template Id"
      • removedInput schema / title
        Removed value: -"sigma_create_workbook_from_templateArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_create_workbook_from_templateOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_create_workspace6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / name / title
        Removed value: -"Name"
      • removedInput schema / title
        Removed value: -"sigma_create_workspaceArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_create_workspaceOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_deactivate_member7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / confirm / title
        Removed value: -"Confirm"
      • removedInput schema / properties / member_id / title
        Removed value: -"Member Id"
      • removedInput schema / title
        Removed value: -"sigma_deactivate_memberArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_deactivate_memberOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_delete_connection_path_grant8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / confirm / title
        Removed value: -"Confirm"
      • removedInput schema / properties / connection_path_id / title
        Removed value: -"Connection Path Id"
      • removedInput schema / properties / grant_id / title
        Removed value: -"Grant Id"
      • removedInput schema / title
        Removed value: -"sigma_delete_connection_path_grantArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_delete_connection_path_grantOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_delete_file7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / confirm / title
        Removed value: -"Confirm"
      • removedInput schema / properties / inode_id / title
        Removed value: -"Inode Id"
      • removedInput schema / title
        Removed value: -"sigma_delete_fileArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_delete_fileOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_delete_tag7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / confirm / title
        Removed value: -"Confirm"
      • removedInput schema / properties / tag_id / title
        Removed value: -"Tag Id"
      • removedInput schema / title
        Removed value: -"sigma_delete_tagArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_delete_tagOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_delete_team7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / confirm / title
        Removed value: -"Confirm"
      • removedInput schema / properties / team_id / title
        Removed value: -"Team Id"
      • removedInput schema / title
        Removed value: -"sigma_delete_teamArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_delete_teamOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_delete_user_attribute_for_team8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / attribute_id / title
        Removed value: -"Attribute Id"
      • removedInput schema / properties / confirm / title
        Removed value: -"Confirm"
      • removedInput schema / properties / team_id / title
        Removed value: -"Team Id"
      • removedInput schema / title
        Removed value: -"sigma_delete_user_attribute_for_teamArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_delete_user_attribute_for_teamOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_delete_user_attribute_for_tenant8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / attribute_id / title
        Removed value: -"Attribute Id"
      • removedInput schema / properties / confirm / title
        Removed value: -"Confirm"
      • removedInput schema / properties / tenant_org_id / title
        Removed value: -"Tenant Org Id"
      • removedInput schema / title
        Removed value: -"sigma_delete_user_attribute_for_tenantArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_delete_user_attribute_for_tenantOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_delete_user_attribute_for_user8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / attribute_id / title
        Removed value: -"Attribute Id"
      • removedInput schema / properties / confirm / title
        Removed value: -"Confirm"
      • removedInput schema / properties / user_id / title
        Removed value: -"User Id"
      • removedInput schema / title
        Removed value: -"sigma_delete_user_attribute_for_userArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_delete_user_attribute_for_userOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_delete_workbook_schedule8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / confirm / title
        Removed value: -"Confirm"
      • removedInput schema / properties / schedule_id / title
        Removed value: -"Schedule Id"
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_delete_workbook_scheduleArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_delete_workbook_scheduleOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_delete_workspace7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / confirm / title
        Removed value: -"Confirm"
      • removedInput schema / properties / workspace_id / title
        Removed value: -"Workspace Id"
      • removedInput schema / title
        Removed value: -"sigma_delete_workspaceArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_delete_workspaceOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_delete_workspace_grant8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / confirm / title
        Removed value: -"Confirm"
      • removedInput schema / properties / grant_id / title
        Removed value: -"Grant Id"
      • removedInput schema / properties / workspace_id / title
        Removed value: -"Workspace Id"
      • removedInput schema / title
        Removed value: -"sigma_delete_workspace_grantArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_delete_workspace_grantOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_deploy_template_to_folder9 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / connection_mapping / title
        Removed value: -"Connection Mapping"
      • removedInput schema / properties / folder_id / title
        Removed value: -"Folder Id"
      • removedInput schema / properties / name / title
        Removed value: -"Name"
      • removedInput schema / properties / template_id / title
        Removed value: -"Template Id"
      • removedInput schema / title
        Removed value: -"sigma_deploy_template_to_folderArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_deploy_template_to_folderOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Addedsigma_download_query_export
    • Changedsigma_duplicate_report8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / destination_folder_id / title
        Removed value: -"Destination Folder Id"
      • removedInput schema / properties / name / title
        Removed value: -"Name"
      • removedInput schema / properties / report_id / title
        Removed value: -"Report Id"
      • removedInput schema / title
        Removed value: -"sigma_duplicate_reportArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_duplicate_reportOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_duplicate_workbook8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / destination_folder_id / title
        Removed value: -"Destination Folder Id"
      • removedInput schema / properties / name / title
        Removed value: -"Name"
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_duplicate_workbookArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_duplicate_workbookOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_export_and_download12 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / element_id / title
        Removed value: -"Element Id"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / layout / title
        Removed value: -"Layout"
      • removedInput schema / properties / max_bytes / title
        Removed value: -"Max Bytes"
      • removedInput schema / properties / parameters / title
        Removed value: -"Parameters"
      • removedInput schema / properties / timeout_seconds / title
        Removed value: -"Timeout Seconds"
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_export_and_downloadArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_export_and_downloadOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_export_report7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / report_id / title
        Removed value: -"Report Id"
      • removedInput schema / title
        Removed value: -"sigma_export_reportArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_export_reportOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_export_workbook9 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / element_id / title
        Removed value: -"Element Id"
      • removedInput schema / properties / format / title
        Removed value: -"Format"
      • removedInput schema / properties / layout / title
        Removed value: -"Layout"
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_export_workbookArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_export_workbookOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_formula_pitfalls5 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / title
        Removed value: -"sigma_formula_pitfallsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_formula_pitfallsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_get_api_connector6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / connector_id / title
        Removed value: -"Connector Id"
      • removedInput schema / title
        Removed value: -"sigma_get_api_connectorArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_get_api_connectorOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_get_connection6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / connection_id / title
        Removed value: -"Connection Id"
      • removedInput schema / title
        Removed value: -"sigma_get_connectionArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_get_connectionOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_get_current_user5 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / title
        Removed value: -"sigma_get_current_userArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_get_current_userOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_get_data_model6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / data_model_id / title
        Removed value: -"Data Model Id"
      • removedInput schema / title
        Removed value: -"sigma_get_data_modelArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_get_data_modelOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_get_data_model_spec6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / data_model_id / title
        Removed value: -"Data Model Id"
      • removedInput schema / title
        Removed value: -"sigma_get_data_model_specArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_get_data_model_specOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_get_deployment6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / policy_id / title
        Removed value: -"Policy Id"
      • removedInput schema / title
        Removed value: -"sigma_get_deploymentArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_get_deploymentOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_get_doc_page6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / page_slug / title
        Removed value: -"Page Slug"
      • removedInput schema / title
        Removed value: -"sigma_get_doc_pageArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_get_doc_pageOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_get_element_columns7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / element_id / title
        Removed value: -"Element Id"
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_get_element_columnsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_get_element_columnsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_get_element_query7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / element_id / title
        Removed value: -"Element Id"
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_get_element_queryArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_get_element_queryOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_get_materialization_job7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / job_id / title
        Removed value: -"Job Id"
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_get_materialization_jobArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_get_materialization_jobOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_get_member6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / member_id / title
        Removed value: -"Member Id"
      • removedInput schema / title
        Removed value: -"sigma_get_memberArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_get_memberOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Addedsigma_get_org_setting
    • Changedsigma_get_report6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / report_id / title
        Removed value: -"Report Id"
      • removedInput schema / title
        Removed value: -"sigma_get_reportArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_get_reportOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_get_source_swap_policy6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / policy_id / title
        Removed value: -"Policy Id"
      • removedInput schema / title
        Removed value: -"sigma_get_source_swap_policyArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_get_source_swap_policyOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_get_team6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / team_id / title
        Removed value: -"Team Id"
      • removedInput schema / title
        Removed value: -"sigma_get_teamArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_get_teamOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_get_template6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / template_id / title
        Removed value: -"Template Id"
      • removedInput schema / title
        Removed value: -"sigma_get_templateArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_get_templateOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_get_tenant6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / tenant_id / title
        Removed value: -"Tenant Id"
      • removedInput schema / title
        Removed value: -"sigma_get_tenantArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_get_tenantOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_get_tenant_scoped_info6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / tenant_org_id / title
        Removed value: -"Tenant Org Id"
      • removedInput schema / title
        Removed value: -"sigma_get_tenant_scoped_infoArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_get_tenant_scoped_infoOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_get_user_attribute_teams6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / attribute_id / title
        Removed value: -"Attribute Id"
      • removedInput schema / title
        Removed value: -"sigma_get_user_attribute_teamsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_get_user_attribute_teamsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_get_user_attribute_tenants6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / attribute_id / title
        Removed value: -"Attribute Id"
      • removedInput schema / title
        Removed value: -"sigma_get_user_attribute_tenantsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_get_user_attribute_tenantsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_get_user_attribute_users6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / attribute_id / title
        Removed value: -"Attribute Id"
      • removedInput schema / title
        Removed value: -"sigma_get_user_attribute_usersArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_get_user_attribute_usersOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_get_workbook6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_get_workbookArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_get_workbookOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_get_workbook_tags6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_get_workbook_tagsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_get_workbook_tagsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_get_workbook_version_history6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_get_workbook_version_historyArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_get_workbook_version_historyOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_get_workspace6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / workspace_id / title
        Removed value: -"Workspace Id"
      • removedInput schema / title
        Removed value: -"sigma_get_workspaceArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_get_workspaceOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_grant_workbook_access9 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / grant_type / title
        Removed value: -"Grant Type"
      • removedInput schema / properties / grantee_id / title
        Removed value: -"Grantee Id"
      • removedInput schema / properties / permission / title
        Removed value: -"Permission"
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_grant_workbook_accessArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_grant_workbook_accessOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_grant_workspace_access9 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / grant_type / title
        Removed value: -"Grant Type"
      • removedInput schema / properties / grantee_id / title
        Removed value: -"Grantee Id"
      • removedInput schema / properties / permission / title
        Removed value: -"Permission"
      • removedInput schema / properties / workspace_id / title
        Removed value: -"Workspace Id"
      • removedInput schema / title
        Removed value: -"sigma_grant_workspace_accessArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_grant_workspace_accessOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_account_types5 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / title
        Removed value: -"sigma_list_account_typesArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_account_typesOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_all_data_models5 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / title
        Removed value: -"sigma_list_all_data_modelsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_all_data_modelsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_all_files7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / parent_id / title
        Removed value: -"Parent Id"
      • removedInput schema / properties / type_filter / title
        Removed value: -"Type Filter"
      • removedInput schema / title
        Removed value: -"sigma_list_all_filesArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_all_filesOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_all_input_tables5 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / title
        Removed value: -"sigma_list_all_input_tablesArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_all_input_tablesOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_all_members5 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / title
        Removed value: -"sigma_list_all_membersArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_all_membersOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_all_reports5 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / title
        Removed value: -"sigma_list_all_reportsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_all_reportsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_all_teams5 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / title
        Removed value: -"sigma_list_all_teamsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_all_teamsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_all_workbooks5 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / title
        Removed value: -"sigma_list_all_workbooksArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_all_workbooksOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Addedsigma_list_allowed_ips
    • Changedsigma_list_api_connectors5 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / title
        Removed value: -"sigma_list_api_connectorsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_api_connectorsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_columns_for_table6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / table_id / title
        Removed value: -"Table Id"
      • removedInput schema / title
        Removed value: -"sigma_list_columns_for_tableArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_columns_for_tableOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_connection_grants6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / connection_id / title
        Removed value: -"Connection Id"
      • removedInput schema / title
        Removed value: -"sigma_list_connection_grantsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_connection_grantsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_connections6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / summary_only / title
        Removed value: -"Summary Only"
      • removedInput schema / title
        Removed value: -"sigma_list_connectionsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_connectionsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_data_model_columns6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / data_model_id / title
        Removed value: -"Data Model Id"
      • removedInput schema / title
        Removed value: -"sigma_list_data_model_columnsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_data_model_columnsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_data_model_elements6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / data_model_id / title
        Removed value: -"Data Model Id"
      • removedInput schema / title
        Removed value: -"sigma_list_data_model_elementsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_data_model_elementsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_data_model_lineage6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / data_model_id / title
        Removed value: -"Data Model Id"
      • removedInput schema / title
        Removed value: -"sigma_list_data_model_lineageArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_data_model_lineageOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_data_models7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / properties / summary_only / title
        Removed value: -"Summary Only"
      • removedInput schema / title
        Removed value: -"sigma_list_data_modelsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_data_modelsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_deployment_documents6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / policy_id / title
        Removed value: -"Policy Id"
      • removedInput schema / title
        Removed value: -"sigma_list_deployment_documentsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_deployment_documentsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_deployments5 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / title
        Removed value: -"sigma_list_deploymentsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_deploymentsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_files7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / parent_id / title
        Removed value: -"Parent Id"
      • removedInput schema / properties / type_filter / title
        Removed value: -"Type Filter"
      • removedInput schema / title
        Removed value: -"sigma_list_filesArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_filesOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_grants6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / inode_id / title
        Removed value: -"Inode Id"
      • removedInput schema / title
        Removed value: -"sigma_list_grantsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_grantsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_materialization_schedules6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_list_materialization_schedulesArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_materialization_schedulesOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_member_teams6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / member_id / title
        Removed value: -"Member Id"
      • removedInput schema / title
        Removed value: -"sigma_list_member_teamsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_member_teamsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_members7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / properties / summary_only / title
        Removed value: -"Summary Only"
      • removedInput schema / title
        Removed value: -"sigma_list_membersArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_membersOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Addedsigma_list_org_workbook_agents
    • Changedsigma_list_recent_webhooks7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / event_type / title
        Removed value: -"Event Type"
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / title
        Removed value: -"sigma_list_recent_webhooksArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_recent_webhooksOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_report_elements6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / report_id / title
        Removed value: -"Report Id"
      • removedInput schema / title
        Removed value: -"sigma_list_report_elementsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_report_elementsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_report_lineage6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / report_id / title
        Removed value: -"Report Id"
      • removedInput schema / title
        Removed value: -"sigma_list_report_lineageArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_report_lineageOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_report_queries6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / report_id / title
        Removed value: -"Report Id"
      • removedInput schema / title
        Removed value: -"sigma_list_report_queriesArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_report_queriesOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_report_schedules6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / report_id / title
        Removed value: -"Report Id"
      • removedInput schema / title
        Removed value: -"sigma_list_report_schedulesArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_report_schedulesOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_report_sources6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / report_id / title
        Removed value: -"Report Id"
      • removedInput schema / title
        Removed value: -"sigma_list_report_sourcesArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_report_sourcesOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_reports6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / title
        Removed value: -"sigma_list_reportsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_reportsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_shared_templates5 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / title
        Removed value: -"sigma_list_shared_templatesArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_shared_templatesOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_source_swap_policies5 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / title
        Removed value: -"sigma_list_source_swap_policiesArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_source_swap_policiesOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_tags7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / limit
        Added value: +{
        +  "default": 200,
        +  "type": "integer"
        +}
      • addedInput schema / properties / page
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null
        +}
      • removedInput schema / title
        Removed value: -"sigma_list_tagsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_tagsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_team_members6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / team_id / title
        Removed value: -"Team Id"
      • removedInput schema / title
        Removed value: -"sigma_list_team_membersArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_team_membersOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_teams7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / properties / summary_only / title
        Removed value: -"Summary Only"
      • removedInput schema / title
        Removed value: -"sigma_list_teamsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_teamsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_templates6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / title
        Removed value: -"sigma_list_templatesArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_templatesOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_tenants5 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / title
        Removed value: -"sigma_list_tenantsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_tenantsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_tenants_paginated5 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / title
        Removed value: -"sigma_list_tenants_paginatedArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_tenants_paginatedOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_translations5 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / title
        Removed value: -"sigma_list_translationsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_translationsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_user_attributes5 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / title
        Removed value: -"sigma_list_user_attributesArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_user_attributesOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Addedsigma_list_workbook_agents
    • Changedsigma_list_workbook_bookmarks6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_list_workbook_bookmarksArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_workbook_bookmarksOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_workbook_columns6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_list_workbook_columnsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_workbook_columnsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_workbook_controls6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_list_workbook_controlsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_workbook_controlsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_workbook_elements6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_list_workbook_elementsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_workbook_elementsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_workbook_embeds6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_list_workbook_embedsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_workbook_embedsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_workbook_grants6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_list_workbook_grantsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_workbook_grantsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_workbook_lineage6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_list_workbook_lineageArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_workbook_lineageOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_workbook_page_elements7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / page_id / title
        Removed value: -"Page Id"
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_list_workbook_page_elementsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_workbook_page_elementsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_workbook_pages6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_list_workbook_pagesArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_workbook_pagesOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_workbook_queries6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_list_workbook_queriesArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_workbook_queriesOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_workbook_schedules6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_list_workbook_schedulesArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_workbook_schedulesOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_workbook_sources6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_list_workbook_sourcesArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_workbook_sourcesOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_workbooks7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • removedInput schema / properties / summary_only / title
        Removed value: -"Summary Only"
      • removedInput schema / title
        Removed value: -"sigma_list_workbooksArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_workbooksOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_workbooks_shared_with_member6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / member_id / title
        Removed value: -"Member Id"
      • removedInput schema / title
        Removed value: -"sigma_list_workbooks_shared_with_memberArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_workbooks_shared_with_memberOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_workspace_grants8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • addedInput schema / properties / limit
        Added value: +{
        +  "default": 200,
        +  "type": "integer"
        +}
      • addedInput schema / properties / page
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null
        +}
      • removedInput schema / properties / workspace_id / title
        Removed value: -"Workspace Id"
      • removedInput schema / title
        Removed value: -"sigma_list_workspace_grantsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_workspace_grantsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_list_workspaces7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / limit / title
        Removed value: -"Limit"
      • addedInput schema / properties / page
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null
        +}
      • removedInput schema / title
        Removed value: -"sigma_list_workspacesArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_list_workspacesOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_materialize_and_wait8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / element_id / title
        Removed value: -"Element Id"
      • removedInput schema / properties / timeout_seconds / title
        Removed value: -"Timeout Seconds"
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_materialize_and_waitArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_materialize_and_waitOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_materialize_element7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / element_id / title
        Removed value: -"Element Id"
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_materialize_elementArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_materialize_elementOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_onboard_member10 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / email / title
        Removed value: -"Email"
      • removedInput schema / properties / first_name / title
        Removed value: -"First Name"
      • removedInput schema / properties / last_name / title
        Removed value: -"Last Name"
      • removedInput schema / properties / member_type / title
        Removed value: -"Member Type"
      • removedInput schema / properties / team_ids / title
        Removed value: -"Team Ids"
      • removedInput schema / title
        Removed value: -"sigma_onboard_memberArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_onboard_memberOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_promote_workbook8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / tag_color / title
        Removed value: -"Tag Color"
      • removedInput schema / properties / tag_name / title
        Removed value: -"Tag Name"
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_promote_workbookArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_promote_workbookOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_reassign_workbook_ownership8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / dry_run / title
        Removed value: -"Dry Run"
      • removedInput schema / properties / new_owner_email / title
        Removed value: -"New Owner Email"
      • removedInput schema / properties / old_owner_email / title
        Removed value: -"Old Owner Email"
      • removedInput schema / title
        Removed value: -"sigma_reassign_workbook_ownershipArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_reassign_workbook_ownershipOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Addedsigma_remove_allowed_ips
    • Changedsigma_remove_workbook_tag8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / confirm / title
        Removed value: -"Confirm"
      • removedInput schema / properties / tag_id / title
        Removed value: -"Tag Id"
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_remove_workbook_tagArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_remove_workbook_tagOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Addedsigma_reset_org_email_branding
    • Changedsigma_restore_workbook_version7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / version / title
        Removed value: -"Version"
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_restore_workbook_versionArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_restore_workbook_versionOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Addedsigma_run_workbook_agent
    • Changedsigma_save_template_from_workbook8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / folder_id / title
        Removed value: -"Folder Id"
      • removedInput schema / properties / name / title
        Removed value: -"Name"
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_save_template_from_workbookArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_save_template_from_workbookOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_search_docs6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / query / title
        Removed value: -"Query"
      • removedInput schema / title
        Removed value: -"sigma_search_docsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_search_docsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_set_user_attribute_for_teams7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / assignments / title
        Removed value: -"Assignments"
      • removedInput schema / properties / attribute_id / title
        Removed value: -"Attribute Id"
      • removedInput schema / title
        Removed value: -"sigma_set_user_attribute_for_teamsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_set_user_attribute_for_teamsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_set_user_attribute_for_tenants7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / assignments / title
        Removed value: -"Assignments"
      • removedInput schema / properties / attribute_id / title
        Removed value: -"Attribute Id"
      • removedInput schema / title
        Removed value: -"sigma_set_user_attribute_for_tenantsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_set_user_attribute_for_tenantsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_swap_data_model_sources7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / body / title
        Removed value: -"Body"
      • removedInput schema / properties / data_model_id / title
        Removed value: -"Data Model Id"
      • removedInput schema / title
        Removed value: -"sigma_swap_data_model_sourcesArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_swap_data_model_sourcesOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_swap_report_sources8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / connection_mapping / title
        Removed value: -"Connection Mapping"
      • removedInput schema / properties / report_id / title
        Removed value: -"Report Id"
      • removedInput schema / properties / source_mapping / title
        Removed value: -"Source Mapping"
      • removedInput schema / title
        Removed value: -"sigma_swap_report_sourcesArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_swap_report_sourcesOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_swap_template_sources8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / connection_mapping / title
        Removed value: -"Connection Mapping"
      • removedInput schema / properties / source_mapping / title
        Removed value: -"Source Mapping"
      • removedInput schema / properties / template_id / title
        Removed value: -"Template Id"
      • removedInput schema / title
        Removed value: -"sigma_swap_template_sourcesArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_swap_template_sourcesOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_swap_workbook_sources8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / connection_mapping / title
        Removed value: -"Connection Mapping"
      • removedInput schema / properties / source_mapping / title
        Removed value: -"Source Mapping"
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_swap_workbook_sourcesArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_swap_workbook_sourcesOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_sync_all_tables_in_schema8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / connection_id / title
        Removed value: -"Connection Id"
      • removedInput schema / properties / database / title
        Removed value: -"Database"
      • removedInput schema / properties / schema / title
        Removed value: -"Schema"
      • removedInput schema / title
        Removed value: -"sigma_sync_all_tables_in_schemaArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_sync_all_tables_in_schemaOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_sync_connection7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / connection_id / title
        Removed value: -"Connection Id"
      • removedInput schema / properties / path / title
        Removed value: -"Path"
      • removedInput schema / title
        Removed value: -"sigma_sync_connectionArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_sync_connectionOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_tag_data_model7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / data_model_id / title
        Removed value: -"Data Model Id"
      • removedInput schema / properties / tag_name / title
        Removed value: -"Tag Name"
      • removedInput schema / title
        Removed value: -"sigma_tag_data_modelArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_tag_data_modelOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_tag_workbook7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / tag_name / title
        Removed value: -"Tag Name"
      • removedInput schema / properties / workbook_id / title
        Removed value: -"Workbook Id"
      • removedInput schema / title
        Removed value: -"sigma_tag_workbookArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_tag_workbookOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_test_connection6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / connection_id / title
        Removed value: -"Connection Id"
      • removedInput schema / title
        Removed value: -"sigma_test_connectionArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_test_connectionOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_update_data_model7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / data_model_id / title
        Removed value: -"Data Model Id"
      • removedInput schema / properties / spec / title
        Removed value: -"Spec"
      • removedInput schema / title
        Removed value: -"sigma_update_data_modelArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_update_data_modelOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_update_file7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / body / title
        Removed value: -"Body"
      • removedInput schema / properties / inode_id / title
        Removed value: -"Inode Id"
      • removedInput schema / title
        Removed value: -"sigma_update_fileArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_update_fileOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_update_member7 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / body / title
        Removed value: -"Body"
      • removedInput schema / properties / member_id / title
        Removed value: -"Member Id"
      • removedInput schema / title
        Removed value: -"sigma_update_memberArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_update_memberOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Addedsigma_update_org_setting
    • Addedsigma_update_report_contents
    • Changedsigma_update_team_members8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / add / title
        Removed value: -"Add"
      • removedInput schema / properties / remove / title
        Removed value: -"Remove"
      • removedInput schema / properties / team_id / title
        Removed value: -"Team Id"
      • removedInput schema / title
        Removed value: -"sigma_update_team_membersArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_update_team_membersOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_update_user_attribute_for_teams8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / attribute_id / title
        Removed value: -"Attribute Id"
      • removedInput schema / properties / confirm / title
        Removed value: -"Confirm"
      • removedInput schema / properties / team_ids / title
        Removed value: -"Team Ids"
      • removedInput schema / title
        Removed value: -"sigma_update_user_attribute_for_teamsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_update_user_attribute_for_teamsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_update_user_attribute_for_tenants8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / attribute_id / title
        Removed value: -"Attribute Id"
      • removedInput schema / properties / confirm / title
        Removed value: -"Confirm"
      • removedInput schema / properties / tenant_org_ids / title
        Removed value: -"Tenant Org Ids"
      • removedInput schema / title
        Removed value: -"sigma_update_user_attribute_for_tenantsArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_update_user_attribute_for_tenantsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedsigma_update_user_attribute_for_users8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / attribute_id / title
        Removed value: -"Attribute Id"
      • removedInput schema / properties / confirm / title
        Removed value: -"Confirm"
      • removedInput schema / properties / user_ids / title
        Removed value: -"User Ids"
      • removedInput schema / title
        Removed value: -"sigma_update_user_attribute_for_usersArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"sigma_update_user_attribute_for_usersOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Addedsigma_update_workbook_contents
    • Addedsigma_verify_report_spec
    • Addedsigma_verify_workbook_spec
  4. 155 tool updatesv1.0.1
    • First observedsigma_accept_shared_template
    • First observedsigma_add_connection_grant
    • First observedsigma_add_deployment_documents
    • First observedsigma_add_workbook_bookmark
    • First observedsigma_add_workbook_schedule
    • First observedsigma_api_capabilities
    • First observedsigma_archive_deployment
    • First observedsigma_bulk_assign_team_members
    • First observedsigma_bulk_sync_tenant_connections
    • First observedsigma_change_member_email
    • First observedsigma_convert_workbook_to_report
    • First observedsigma_copy_workbook_to_member
    • First observedsigma_create_data_model
    • First observedsigma_create_deployment
    • First observedsigma_create_folder
    • First observedsigma_create_grant
    • First observedsigma_create_member
    • First observedsigma_create_report
    • First observedsigma_create_report_schedule
    • First observedsigma_create_source_swap_policy
    • First observedsigma_create_tag
    • First observedsigma_create_team
    • First observedsigma_create_tenant
    • First observedsigma_create_user_attribute
    • First observedsigma_create_workbook
    • First observedsigma_create_workbook_embed
    • First observedsigma_create_workbook_from_template
    • First observedsigma_create_workspace
    • First observedsigma_deactivate_member
    • First observedsigma_delete_connection_path_grant
    • First observedsigma_delete_file
    • First observedsigma_delete_tag
    • First observedsigma_delete_team
    • First observedsigma_delete_user_attribute_for_team
    • First observedsigma_delete_user_attribute_for_tenant
    • First observedsigma_delete_user_attribute_for_user
    • First observedsigma_delete_workbook_schedule
    • First observedsigma_delete_workspace
    • First observedsigma_delete_workspace_grant
    • First observedsigma_deploy_template_to_folder
    • First observedsigma_duplicate_report
    • First observedsigma_duplicate_workbook
    • First observedsigma_export_and_download
    • First observedsigma_export_report
    • First observedsigma_export_workbook
    • First observedsigma_formula_pitfalls
    • First observedsigma_get_api_connector
    • First observedsigma_get_connection
    • First observedsigma_get_current_user
    • First observedsigma_get_data_model
    • First observedsigma_get_data_model_spec
    • First observedsigma_get_deployment
    • First observedsigma_get_doc_page
    • First observedsigma_get_element_columns
    • First observedsigma_get_element_query
    • First observedsigma_get_materialization_job
    • First observedsigma_get_member
    • First observedsigma_get_report
    • First observedsigma_get_source_swap_policy
    • First observedsigma_get_team
    • First observedsigma_get_template
    • First observedsigma_get_tenant
    • First observedsigma_get_tenant_scoped_info
    • First observedsigma_get_user_attribute_teams
    • First observedsigma_get_user_attribute_tenants
    • First observedsigma_get_user_attribute_users
    • First observedsigma_get_workbook
    • First observedsigma_get_workbook_tags
    • First observedsigma_get_workbook_version_history
    • First observedsigma_get_workspace
    • First observedsigma_grant_workbook_access
    • First observedsigma_grant_workspace_access
    • First observedsigma_list_account_types
    • First observedsigma_list_all_data_models
    • First observedsigma_list_all_files
    • First observedsigma_list_all_input_tables
    • First observedsigma_list_all_members
    • First observedsigma_list_all_reports
    • First observedsigma_list_all_teams
    • First observedsigma_list_all_workbooks
    • First observedsigma_list_api_connectors
    • First observedsigma_list_columns_for_table
    • First observedsigma_list_connection_grants
    • First observedsigma_list_connections
    • First observedsigma_list_data_model_columns
    • First observedsigma_list_data_model_elements
    • First observedsigma_list_data_model_lineage
    • First observedsigma_list_data_models
    • First observedsigma_list_deployment_documents
    • First observedsigma_list_deployments
    • First observedsigma_list_files
    • First observedsigma_list_grants
    • First observedsigma_list_materialization_schedules
    • First observedsigma_list_member_teams
    • First observedsigma_list_members
    • First observedsigma_list_recent_webhooks
    • First observedsigma_list_report_elements
    • First observedsigma_list_report_lineage
    • First observedsigma_list_report_queries
    • First observedsigma_list_report_schedules
    • First observedsigma_list_report_sources
    • First observedsigma_list_reports
    • First observedsigma_list_shared_templates
    • First observedsigma_list_source_swap_policies
    • First observedsigma_list_tags
    • First observedsigma_list_team_members
    • First observedsigma_list_teams
    • First observedsigma_list_templates
    • First observedsigma_list_tenants
    • First observedsigma_list_tenants_paginated
    • First observedsigma_list_translations
    • First observedsigma_list_user_attributes
    • First observedsigma_list_workbook_bookmarks
    • First observedsigma_list_workbook_columns
    • First observedsigma_list_workbook_controls
    • First observedsigma_list_workbook_elements
    • First observedsigma_list_workbook_embeds
    • First observedsigma_list_workbook_grants
    • First observedsigma_list_workbook_lineage
    • First observedsigma_list_workbook_page_elements
    • First observedsigma_list_workbook_pages
    • First observedsigma_list_workbook_queries
    • First observedsigma_list_workbook_schedules
    • First observedsigma_list_workbook_sources
    • First observedsigma_list_workbooks
    • First observedsigma_list_workbooks_shared_with_member
    • First observedsigma_list_workspace_grants
    • First observedsigma_list_workspaces
    • First observedsigma_materialize_and_wait
    • First observedsigma_materialize_element
    • First observedsigma_onboard_member
    • First observedsigma_promote_workbook
    • First observedsigma_reassign_workbook_ownership
    • First observedsigma_remove_workbook_tag
    • First observedsigma_restore_workbook_version
    • First observedsigma_save_template_from_workbook
    • First observedsigma_search_docs
    • First observedsigma_set_user_attribute_for_teams
    • First observedsigma_set_user_attribute_for_tenants
    • First observedsigma_swap_data_model_sources
    • First observedsigma_swap_report_sources
    • First observedsigma_swap_template_sources
    • First observedsigma_swap_workbook_sources
    • First observedsigma_sync_all_tables_in_schema
    • First observedsigma_sync_connection
    • First observedsigma_tag_data_model
    • First observedsigma_tag_workbook
    • First observedsigma_test_connection
    • First observedsigma_update_data_model
    • First observedsigma_update_file
    • First observedsigma_update_member
    • First observedsigma_update_team_members
    • First observedsigma_update_user_attribute_for_teams
    • First observedsigma_update_user_attribute_for_tenants
    • First observedsigma_update_user_attribute_for_users

TDQS

C2.7/5.0

Scored across 257 tools

Disambiguation2/5

With 257 tools, many near-duplicates create unclear boundaries: list vs list_all variants, list vs paginated variants, and multiple export/send/download tools. Overlapping functionality across workbooks, reports, datasets, elements, and admin domains makes misselection likely despite some clarifying descriptions.

Naming Consistency3/5

Most tools use a domain-prefixed snake_case verb_noun pattern, but the convention is not fully consistent. Some names use 'update' for revoke operations, and duplicates use 'all' or 'paginated' suffixes in inconsistent ways.

Tool Count1/5

257 tools is an extreme mismatch for a single MCP server and far exceeds any reasonable tool surface. The set is sprawling and many tools appear to be thin wrappers or near-duplicates.

Completeness4/5

The server covers a very broad Sigma API surface, including CRUD for workbooks, reports, datasets, connections, workspaces, grants, admin, deployments, and documentation search. Minor gaps exist, such as no explicit connection update tool, but most lifecycle operations are represented.

Maintenance

ActivityActive
ResponsivenessResponsive

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Full-featured MCP server for Apache Superset — 135+ tools for dashboards, charts, datasets, SQL Lab, security (users, roles, RLS, groups), audit, and more. Built-in safety validations.
    100
    1,219 PyPI
    59
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    A modular MCP server exposing tools for integrating with services like GitHub, Redash, Jenkins, Figma, Jira, Confluence, Teams, Datadog, PagerDuty, Slack, and Presto, enabling users to manage these platforms through natural language via an MCP client.
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Comprehensive MCP server providing 89 tools and 13 React UI apps for complete Zendesk Support API integration, enabling ticket, user, organization, and automation management.
    MIT