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 172 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 90 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 (90 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_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.

172

90

readonly

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

90

90

analyst

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

31

23

author

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

40

28

modeler

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

33

24

embed

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

50

27

access_admin

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

52

22

Nine 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, and admin_list_recent_webhooks.

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 90 reads and false on the 82 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 172 tools. Every tool name starts with the domain it is mounted under:

Domain

Tools

Covers

workbooks

54

Workbooks, reports and templates: contents/spec, pages, versions, bookmarks, schedules, exports, tags, grants, embeds, workbook agents, template deployment

datasets

22

Connections and data models: connection grants, tests and schema syncs, cross-tenant connection sync, data model specs, columns, lineage and source swaps

elements

21

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

workspace

15

Workspaces and their grants, files and folders, tags

admin

60

Members, teams, user attributes, tenants, deployments, grants, org settings, AI config, IP allowlists, API connectors, recent webhook events

Total

172

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

90

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

destructiveHint=true

20

Deletes, deactivates, or revokes; clients should prompt

idempotentHint=true

8

Safe to retry; same input = same outcome

openWorldHint=true

172

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

172 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'.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNo
entriesYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
inode_idsYes
policy_idYes

Output Schema

ParametersJSON 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_api_capabilitiesAdmin Api CapabilitiesA
Read-only

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

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNo
policy_idYes

Output Schema

ParametersJSON 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_bulk_assign_team_membersAdmin Bulk Assign Team MembersC

Add multiple members to a team in one call.

ParametersJSON Schema
NameRequiredDescriptionDefault
team_idYes
member_idsYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNo
dry_runNo
name_patternYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNo
team_idYes
member_emailsYes

Output Schema

ParametersJSON 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. The description adds useful context beyond that: the internal mechanism ('Resolves emails to member IDs, then sends a single PATCH') and the confirmation requirement. It stops short of describing reversibility or failure modes for unmatched emails.

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

Conciseness5/5

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

Two concise sentences: the first front-loads the purpose, the second adds mechanism and a prerequisite. Every clause earns its place with no redundancy.

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

Completeness4/5

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

An output schema exists, so return values need not be detailed. The description covers purpose, mechanism, and the confirm gate, but omits edge-case behavior (e.g., what happens if confirm is omitted, or if an email is unknown) which would be helpful for a destructive bulk 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 explains 'member_emails' (email addresses) and the confirm requirement, but says nothing about 'team_id' beyond the implicit name. Partial compensation justifies a mid-range 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 states a specific verb ('Remove') and resource ('multiple members from a team') with scope ('by their email addresses'). It clearly distinguishes the operation from assignment or listing siblings, though it does not name an alternative tool 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 purpose (bulk removal by email), and a prerequisite is given ('Requires confirm=True'). However, there is no explicit guidance on when to use this tool versus alternatives like admin_update_team_members or admin_bulk_assign_team_members.

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}.

ParametersJSON Schema
NameRequiredDescriptionDefault
member_idYes
new_emailYes

Output Schema

ParametersJSON 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').

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNo
provider_configYes

Output Schema

ParametersJSON 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_deploymentAdmin Create DeploymentC

Create a deployment policy.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYes
nameYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYes

Output Schema

ParametersJSON 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'.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailYes
last_nameYes
first_nameYes
member_typeNoviewer

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
descriptionNo

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNo
nameYes

Output Schema

ParametersJSON 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_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.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
descriptionNo
default_valueNo

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNo
member_idYes

Output Schema

ParametersJSON 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_teamAdmin Delete TeamA
Destructive

Delete a team. Requires confirm=True.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNo
team_idYes

Output Schema

ParametersJSON 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_user_attribute_for_teamAdmin Delete User Attribute For TeamB
Destructive

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

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNo
team_idYes
attribute_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNo
attribute_idYes
tenant_org_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNo
user_idYes
attribute_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
connector_idYes

Output Schema

ParametersJSON 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_current_userAdmin Get Current UserA
Read-only

Get the current authenticated user's details.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
policy_idYes

Output Schema

ParametersJSON 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_memberAdmin Get MemberC
Read-only

Get member details including homeFolderId.

ParametersJSON Schema
NameRequiredDescriptionDefault
member_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
setting_nameYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
team_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
tenant_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
tenant_org_idYes

Output Schema

ParametersJSON 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_user_attribute_teamsAdmin Get User Attribute TeamsC
Read-only

Get all team assignments for a user attribute.

ParametersJSON Schema
NameRequiredDescriptionDefault
attribute_idYes

Output Schema

ParametersJSON 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=true, openWorldHint=true and destructiveHint=false, so the safety profile is covered structurally. The description adds no behavioral context beyond the name: no pagination behavior, no scope of 'all' (across tenants?), and no note about permission requirements for an admin-scoped read. With annotations carrying the load, the description contributes little.

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, zero filler, purpose front-loaded in the first three words. Nothing repeats the name or title verbatim.

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 a single-parameter read tool is inherently simple. The remaining gap is that the only input parameter is undocumented in both schema and description, leaving the agent without the information needed to supply a valid attribute_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% for the single parameter attribute_id, and the description does nothing to compensate: it never states what the attribute ID identifies or where it is obtained (e.g., from admin_list_user_attributes). The parameter's format and provenance are undocumented everywhere.

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 ('all team assignments for a user attribute'), so an agent knows exactly what is returned. It does not explicitly distinguish itself from close siblings such as admin_get_user_attribute_users or admin_get_user_attribute_tenants, though the name plus the word 'teams' 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 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_get_user_attribute_tenants or admin_get_user_attribute_users, and no mention of prerequisites such as where attribute_id comes from. The agent must infer the selection condition purely from the token 'teams'.

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 TenantsB
Read-only

Get all tenant assignments for a user attribute.

ParametersJSON Schema
NameRequiredDescriptionDefault
attribute_idYes

Output Schema

ParametersJSON 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 description help. The description adds only the word 'all', hinting at unbounded result scope, but says nothing about pagination, tenant scoping rules, 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.

Conciseness5/5

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

A single front-loaded sentence with zero filler; the read target and scope are stated immediately. Nothing in it is redundant with the tool name or wasted verbiage.

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 carry the safety profile. Still, for a lookup tool sitting among several near-identical siblings, the description is thin on the tenant-scoping behavior and the meaning of 'all' that an agent would need 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 the single parameter attribute_id is undocumented. The description only implicitly ties attribute_id to 'a user attribute' without stating expected format (ID vs. name), where to obtain the ID, or what happens with an unknown ID, 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.

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 ('tenant assignments for a user attribute'), which is clear enough to distinguish from write siblings like admin_set_user_attribute_for_tenants and admin_update_user_attribute_for_tenants. It does not, however, name the natural read-alternatives admin_get_user_attribute_users or admin_get_user_attribute_teams, 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 or when-not-to-use guidance is given. The agent must infer from the verb alone whether this is the correct read tool versus admin_get_user_attribute_users, admin_get_user_attribute_teams, or the set/update variants that also target tenants.

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 UsersC
Read-only

Get all user assignments for a user attribute.

ParametersJSON Schema
NameRequiredDescriptionDefault
attribute_idYes

Output Schema

ParametersJSON 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 safety is covered by structured data. The description adds nothing beyond that: no pagination behavior, no result-size expectations, no note about what an unassigned attribute returns. It only restates the read semantics already encoded in 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?

One short sentence with no filler, and the key scope term ('users') is front-loaded. It is efficient, though its brevity is partly 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 no explanation, and the operation is a simple single-parameter read. Still, the lone required parameter is undocumented and there is no routing to the team/tenant sibling variants, leaving a modest gap for an agent choosing among four similarly named attribute tools.

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 attribute_id has no description in either place. The phrase 'for a user attribute' hints that attribute_id identifies the attribute, but no format, source (admin_list_user_attributes), or constraint is given, so the description 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.

Purpose4/5

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

States a specific verb and resource: 'Get all user assignments for a user attribute.' An agent can distinguish this from the team/tenant variants in the sibling list because the scope word 'users' is present, 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?

There is no when-to-use guidance, no mention of when to prefer admin_get_user_attribute_teams or admin_get_user_attribute_tenants, and no prerequisites (e.g. admin scope required). 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_account_typesAdmin List Account TypesA
Read-only

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

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON 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 covered by structured data. The description adds only the synonym 'license types' and the org-level scope, with no mention of pagination or result size for what may be a tenant-wide enumeration.

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 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 need not explain return values, and the annotations carry the safety profile. The only gap is the absence of any note on scope or result volume for an org-wide listing.

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; the baseline for a parameterless tool applies.

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 disambiguates the term with the parenthetical '(license types)'. No sibling tool covers account/license types, so there is nothing to differentiate against, but the purpose is unmistakable.

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

Usage 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, prerequisites, or alternatives. It does not note that the call is org-scoped and returns the full unfiltered set, so an agent gets no guidance beyond the literal verb.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON 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 IpsB
Read-only

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

ParametersJSON Schema
NameRequiredDescriptionDefault
page_sizeNo
page_tokenNo

Output Schema

ParametersJSON 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=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds the org scope and the v3alpha version tag, which are useful, but says nothing about pagination behavior or auth requirements for an admin endpoint.

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 filler. Nothing is wasted, though it is arguably too short for an admin endpoint.

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 annotations carry the safety profile. What is missing is pagination guidance for a paged list tool; otherwise the agent has enough to invoke it correctly.

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

Parameters3/5

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

Schema coverage is 0%, so both parameters are undocumented in structured form, and the description does not compensate. However, page_size and page_token are conventional pagination names an agent can interpret without further text, so this lands at a baseline 3 rather than lower.

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 (IP allowlist entries) scoped to the organization, and the '(v3alpha)' marker signals the API surface. It is clearly distinguishable from admin_add_allowed_ips and admin_remove_allowed_ips, though it does not name 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 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 mutation siblings that would be alternatives for changing the allowlist. The read-only intent is inferable from the verb, but the description provides no explicit routing.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON 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).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON 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 open-world profile is covered. The description adds only the clarifying gloss 'custom data integrations'; it says nothing about pagination, result volume, or auth requirements, so it adds modest value beyond structured data.

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 short sentence with the verb and resource front-loaded and zero filler. Nothing could be trimmed 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 handling return values and annotations covering safety, the description need only identify the resource, which it does. The only residual gap is any hint about the scope/volume of the listing, which is minor for a parameterless 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?

The tool takes zero parameters, so per the baseline there is nothing for the description to disambiguate; the schema is trivially complete. No penalty beyond the default ceiling for a no-param 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 and resource: 'List all API connectors', with a helpful parenthetical clarifying that these are custom data integrations. It is distinguishable from siblings like admin_get_api_connector (singular retrieval) and datasets_list_connections, though it does not explicitly call out those distinctions.

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 'List all' implies an unfiltered enumeration, which is mild usage context, but there is no statement of when to use this versus admin_get_api_connector or the connection-related dataset tools, and no mention of prerequisites or scope.

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 DocumentsC
Read-only

List documents in a deployment policy.

ParametersJSON Schema
NameRequiredDescriptionDefault
policy_idYes

Output Schema

ParametersJSON 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 covered. The description adds nothing further — no pagination, ordering, or scope of 'documents' — so it contributes essentially no behavioral context beyond the structured 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?

A single front-loaded sentence with zero filler, which is structurally clean. It is arguably clipped to the point of under-specification 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?

An output schema exists so return values need not be explained, but for a list tool nothing is said about pagination, result limits, or what constitutes a 'document' in a deployment policy. Given the dense admin sibling namespace, the definition is too thin to call with confidence.

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 documents nothing about policy_id. The description only implies that the id refers to a deployment policy; it does not state whether it is an id or name, where to obtain it, or the expected format.

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 (documents in a deployment policy), which is enough to tell it apart from most workbooks/datasets siblings. However, it does not distinguish itself from its closest sibling admin_add_deployment_documents, so the read-vs-write contrast 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?

There is no when-to-use or when-not-to-use guidance and no mention of alternatives such as admin_get_deployment or admin_add_deployment_documents. The agent must infer from the name alone that this retrieves the document set attached to a policy.

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 DeploymentsB
Read-only

List all deployment policies.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON 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=true and destructiveHint=false, so the safety profile is covered. The description adds nothing beyond the bare action - no note on scope (tenant-wide vs org-wide), pagination, or how many policies are returned, despite openWorldHint suggesting results extend beyond a closed set.

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 five-word sentence, front-loaded with the verb. It is efficiently sized, though its brevity reflects under-specification as much as discipline.

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, the word 'all' leaves pagination and scope unanswered for a zero-param list tool, which is the minimum viable level of completeness.

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, so per the rubric the baseline is 4. There is nothing parameter-wise for the description to document 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?

States a specific verb (List) and resource (deployment policies), which distinguishes it from admin_get_deployment, admin_create_deployment, and admin_archive_deployment. It does not, however, clarify the plural ambiguity or differentiate it from the capability-named list_all_* siblings elsewhere in the toolset.

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 admin_get_deployment for a single policy or the deployment-document listers. An agent gets the basic action but no selection criteria 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_grantsAdmin List GrantsC
Read-only

List grants for a specific file/workbook/data model by inodeId. Required: inodeId.

ParametersJSON Schema
NameRequiredDescriptionDefault
inode_idYes

Output Schema

ParametersJSON 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=true, openWorldHint=true, and destructiveHint=false, so the safety profile is clear. The description adds no behavioral context beyond what annotations provide—no mention of pagination, auth requirements, or output format. With annotations covering the basics, this is adequate but not enriching.

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 concise sentence that front-loads the key information. It is efficient and not padded, though the 'Required: inodeId' part is somewhat redundant given 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?

Given the tool's complexity (1 parameter, no schema coverage) and the presence of an output schema (which reduces the need to describe returns), the description is still insufficient. It lacks usage context, parameter details, and differentiation from similar grant-listing tools. More information is needed 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%, meaning the single parameter (inode_id) is completely undocumented in the schema. The description only repeats that inode_id is required, providing no additional semantics such as format, valid values, or how to obtain it. 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.

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 (grants) and specifies the identifier type (inodeId). However, it does not explicitly differentiate itself from sibling tools like workbooks_list_workbook_grants or datasets_list_connection_grants, leaving ambiguity about which grant-related tool to use in which context.

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 grant-listing siblings (e.g., workbooks_list_workbook_grants, workspace_list_workspace_grants, datasets_list_connection_grants), the agent must guess which one applies. The note 'Required: inodeId' is a parameter constraint, not usage guidance.

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 MembersB
Read-only

List all members in the organization. Pass summary_only=True for concise token-efficient response.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
summary_onlyNo

Output Schema

ParametersJSON 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 readOnlyHint=true, destructiveHint=false, and openWorldHint=true, so the safety profile is fully covered by structured data. The description adds one genuine behavioral fact beyond that — summary_only yields a concise, token-efficient response — but says nothing about pagination (the limit default of 200) or result size against an unbounded org. 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.

Conciseness5/5

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

Two short sentences, the core purpose front-loaded and the parameter tip second. Zero filler; 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-value explanation is not required, and annotations cover safety. What is missing is pagination semantics for limit and any disambiguation from admin_list_all_members, which leaves the agent guessing on the two things the description could have clarified.

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 parameter burden. It gives actionable meaning for summary_only ("concise token-efficient response"), which is a real improvement over an undescribed boolean, but it says nothing at all about limit — its pagination role, max value, or what happens at the default of 200.

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"), so the operation itself is unambiguous. However, it never distinguishes itself from the near-identical sibling admin_list_all_members, which an agent would struggle to choose between; clear but no 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 exclusions, and no mention of the competing admin_list_all_members or admin_get_member tools. The only quasi-guidance is a parameter tip about summary_only, which is not the same as routing advice.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
member_idYes

Output Schema

ParametersJSON 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=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond the name: it does not mention pagination behavior, result ordering, or what happens if the member does not exist.

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 operation and resource, with zero filler. It is efficient, though its brevity is part of what leaves the gaps noted above.

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 annotations cover safety. The remaining gaps are the member_id semantics and the lack of any routing against the inverse team-members listing tool, leaving 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 for the single member_id parameter. It never states whether member_id is an internal ID versus an email or external identifier — a distinction that matters given the many admin member tools that consume member 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?

The description states a specific verb and resource ('List teams a member belongs to'), making the direction of the relationship unambiguous versus the inverse sibling admin_list_team_members. It does not, however, explicitly name that sibling or otherwise differentiate itself from admin_list_teams.

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 phrasing — this is clearly the way to enumerate a member's team memberships — but there is no explicit when-to-use statement, no mention of the inverse tool admin_list_team_members, and no prerequisite or auth guidance.

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 AgentsB
Read-only

List all workbook agents across the organization.

ParametersJSON Schema
NameRequiredDescriptionDefault
page_sizeNo
page_tokenNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3/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 behavioral beyond scope: it does not mention pagination behavior, result-size limits, permission requirements, or ordering, effectively restating the title.

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 scope front-loaded and no filler. It is tight, though the tightness comes at the cost of the missing detail rather than earned brevity.

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 two-parameter list tool that is much of the job, but the pagination parameters remain unexplained in both schema and description, leaving a real 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 page_size and page_token, so the description must compensate and does not. Saying 'all' arguably misleads about the paginated nature of the call, and no default, maximum, or token semantics are 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?

The description gives a specific verb ('List'), a clear resource ('workbook agents'), and a scope ('across the organization') that distinguishes it from the near-identically named sibling workbooks_list_workbook_agents. It stops short of explicitly naming that sibling, so the differentiation must be inferred from the word 'org'.

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 org-wide scope implicitly signals when to reach for this tool rather than the per-workbook listing variant, but no alternative is named and no conditions, prerequisites, or exclusions are stated. Usage is implied only.

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

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
event_typeNo

Output Schema

ParametersJSON 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 MembersC
Read-only

List members of a team.

ParametersJSON Schema
NameRequiredDescriptionDefault
team_idYes

Output Schema

ParametersJSON 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 provide readOnlyHint=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds no further behavioral context such as pagination, permissions, or result limits, so it does little beyond the annotations.

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

Conciseness4/5

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

The description is a single, front-loaded sentence with no wasted words. It is appropriately terse, though that terseness reflects the overall lack of detail rather than strong structure.

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

Completeness3/5

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

For a simple one-parameter read tool with an output schema and annotations covering safety, the description is minimally sufficient to invoke it. It is still incomplete on when to use it over close siblings and on the meaning/format of team_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%, so the description must compensate for the undocumented team_id parameter. 'Of a team' weakly implies that team_id identifies the team, but it gives no format, required-status, 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?

The description states a clear verb and resource: 'List members of a team.' This distinguishes it from most siblings, and the team-scoped resource is explicit. It does not, however, explicitly contrast with close alternatives like admin_list_members or admin_list_member_teams.

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 or prerequisites. The name implies a listing operation, but the description itself offers no routing help versus siblings such as admin_list_members.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
summary_onlyNo

Output Schema

ParametersJSON 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 readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered without description help. The description adds the useful behavioral note that summary_only yields a token-efficient response, but says nothing about pagination, the meaning of the 200 default limit, or result size.

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, zero filler. Nothing is wasted or 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 not be described. Still, an agent lacks the limit semantics and any routing signal against the sibling admin_list_all_teams, which are real gaps for a list tool with two undocumented parameters.

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

Parameters3/5

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

Schema description coverage is 0%, so the description must carry parameter meaning. It explains summary_only well ('concise token-efficient response') but says nothing about limit, leaving half of the two parameters undocumented anywhere.

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'), so the operation is immediately clear. However, it does nothing to distinguish itself from the near-identical sibling admin_list_all_teams, which an agent could easily pick by mistake.

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_all_teams or admin_list_team_members. The only conditional advice given concerns a parameter value, not tool selection.

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).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON 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, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds only the multi-tenant scoping note; it says nothing about pagination behavior or result size, which matters given the existence of a paginated sibling.

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 short sentence with no waste and the scoping qualifier front-loaded. 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. However, the description omits any routing hint versus admin_list_tenants_paginated, and says nothing about result volume, which is the main thing an agent needs to decide between the two.

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 the description adds no parameter detail, which is correct here.

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 (tenant organizations), with a parenthetical clarifying scope for multi-tenant deployments. It does not distinguish itself from the sibling admin_list_tenants_paginated, which is a near-identical resource listing.

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 name and the 'multi-tenant deployments' note, but there is no explicit when-to-use guidance and no mention of the alternative admin_list_tenants_paginated, which an agent would plausibly need to choose between.

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 PaginatedB
Read-only

List all tenants using cursor-based pagination (nextPageToken model).

Unlike offset-based pagination, tenants use cursor tokens. Returns the complete list of all tenant organizations.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON 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 cover the safety profile (readOnlyHint=true, destructiveHint=false, openWorldHint=true). The description adds a real behavioral fact beyond them: pagination is cursor/nextPageToken based rather than offset based. Against that, 'Returns the complete list of all tenant organizations' sits awkwardly with a paginated tool and no page-size, limit, or continuation guidance 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.

Conciseness3/5

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

Three sentences where two would do: 'List all tenants using cursor-based pagination' and 'Unlike offset-based pagination, tenants use cursor tokens' restate the same fact. The trailing 'Returns the complete list of all tenant organizations' is largely redundant with 'List all tenants.'

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 input parameters and an output schema present, the description only needs to frame what the tool returns and how it is paged — which it does. The pagination framing is adequate, though the 'complete list' phrasing slightly muddies how paging is meant to be consumed.

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

Parameters4/5

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

There are zero parameters and 100% schema coverage, so the baseline is 4. The description introduces terminology (nextPageToken) that the agent will encounter in the response, which is a small useful addition over the empty input 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?

Specific verb+resource (list tenants) with the pagination mechanism called out, which is the distinguishing feature of this tool. However, it never names its obvious sibling admin_list_tenants, so the agent must infer from the name suffix alone whether this is the preferred variant.

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 statement 'tenants use cursor tokens' explains the mechanism but not when to pick this tool over admin_list_tenants. There is no explicit when-to-use, no exclusion, and no named alternative, so routing is left to inference 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_translationsAdmin List TranslationsB
Read-only

List organization translation files.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/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 no behavior beyond that: no pagination/result-size behavior, no scoping semantics, no auth requirements. It essentially restates the resource name.

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 short sentence with the action verb front-loaded and zero filler. Nothing is wasted, though nothing is elaborated either.

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 input parameters, annotations covering the safety profile, and an output schema that documents the return shape, the description carries little additional burden. It is adequate, though a note on scope (org vs tenant) would have closed the 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?

The tool takes zero parameters, so there is nothing for the description to disambiguate; the schema is closed (additionalProperties: false) and fully described. Baseline for a no-parameter tool is 4.

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 ('List') plus a specific resource ('organization translation files'), which lets an agent distinguish it from the other admin_list_* siblings (deployments, tenants, members). It stops short of explaining what a 'translation file' is in this product, so the resource is named but not fully characterized.

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 prerequisite/permission notes, and no indication of whether results are org-wide or tenant-scoped. 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.

admin_list_user_attributesAdmin List User AttributesA
Read-only

List all user attributes (used for row-level security and dynamic parameters).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON 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 profile is covered. The description adds the semantic context that attributes drive row-level security and dynamic parameters, but says nothing about scope, volume, or ordering of the returned list.

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 action first and the explanatory parenthetical after; 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?

An output schema exists, so return values need not be described, and the tool is a zero-parameter list operation. The description is essentially complete for this complexity, though a note on what the returned attribute set covers would fully close it.

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 schema has nothing to document and the baseline of 4 applies. The description adds no parameter meaning, but none is needed.

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 a clarifying parenthetical about what the attributes are used for (row-level security, dynamic parameters). It distinguishes itself from write-oriented siblings like admin_create_user_attribute and admin_set_user_attribute_for_teams, though it does not explicitly name 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?

Usage is only implied by 'List all' and the parenthetical use case; there is no explicit statement of when to call this versus the per-user/team/tenant attribute getters such as admin_get_user_attribute_users. Adequate but leaves the agent to infer the distinction.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailYes
team_idsNo
last_nameYes
first_nameYes
member_typeNoviewer

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNo
entry_idsYes

Output Schema

ParametersJSON 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_reset_org_email_brandingAdmin Reset Org Email BrandingA
Destructive

Reset the organization email branding settings back to defaults.

Destructive operation. Requires confirm=True.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNo

Output Schema

ParametersJSON 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_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"}]

ParametersJSON Schema
NameRequiredDescriptionDefault
assignmentsYes
attribute_idYes

Output Schema

ParametersJSON 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"}]

ParametersJSON Schema
NameRequiredDescriptionDefault
assignmentsYes
attribute_idYes

Output Schema

ParametersJSON 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_update_memberAdmin Update MemberC

Update member properties (firstName, lastName, memberType, isActive, etc.).

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYes
member_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNo
setting_nameYes
setting_valueYes

Output Schema

ParametersJSON 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_team_membersAdmin Update Team MembersC

Add or remove members from a team. Provide lists of member IDs.

ParametersJSON Schema
NameRequiredDescriptionDefault
addNo
removeNo
team_idYes

Output Schema

ParametersJSON 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_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"]

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNo
team_idsYes
attribute_idYes

Output Schema

ParametersJSON 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"]

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNo
attribute_idYes
tenant_org_idsYes

Output Schema

ParametersJSON 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 sigma_set_user_attribute_for_users instead (direct POST to /v2/user-attributes/{id}/users not yet exposed as a dedicated tool — use sigma_create_grant with a raw body as a workaround).

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNo
user_idsYes
attribute_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.5/5.0
Behavior4/5

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

The annotations already declare destructiveHint=true and openWorldHint=true, covering the safety profile. The description adds critical missing context by stating 'Requires confirm=True', which is not indicated in the annotations and is essential for correct invocation. It also provides a workaround using another tool, which is useful behavioral guidance.

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 action and the confirm requirement, followed by parameter details and alternatives. It is slightly verbose in the parenthetical about the workaround, but every sentence serves a purpose.

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

Completeness4/5

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

Given the tool is a destructive mutation with high impact, the description provides essential safety guidance (confirm), parameter examples, and cross-references for alternatives. The only minor gap is that it does not mention authentication or rate limits, but these are less critical here.

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 schema coverage at 0%, the description must compensate. It does so by describing 'user_ids' and providing an example, and it explicitly mentions the required 'confirm' parameter and its value. It does not describe 'attribute_id' explicitly, but the context makes its purpose clear.

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 (revoke) and resource (user attribute assignment) for a specific scope (users), which is precise. It goes beyond the generic name and clarifies the confusion with the sibling 'set' tools by naming 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 Guidelines5/5

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

Explicitly states it revokes rather than assigns, and directs to 'sigma_set_user_attribute_for_users' for assignment. It also provides a workaround for a missing tool, fully equipping the agent with available alternatives.

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).

ParametersJSON Schema
NameRequiredDescriptionDefault
grant_typeYes
grantee_idYes
permissionYes
connection_idYes

Output Schema

ParametersJSON 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_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.

ParametersJSON Schema
NameRequiredDescriptionDefault
dry_runNo

Output Schema

ParametersJSON 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_data_modelDatasets Create Data ModelB

Create a data model from a JSON code representation. Must include name, folderId, schemaVersion, and pages with elements.

ParametersJSON Schema
NameRequiredDescriptionDefault
specYes

Output Schema

ParametersJSON 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_connection_path_grantDatasets Delete Connection Path GrantB
Destructive

Delete a grant from a connection path. DESTRUCTIVE. Requires confirm=True.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNo
grant_idYes
connection_path_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
connection_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
data_model_idYes

Output Schema

ParametersJSON 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_specDatasets Get Data Model SpecB
Read-only

Get the full code representation (JSON spec) of a data model — tables, columns, metrics, relationships.

ParametersJSON Schema
NameRequiredDescriptionDefault
data_model_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON 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 TableC
Read-only

List columns for a warehouse table by its tableId.

ParametersJSON Schema
NameRequiredDescriptionDefault
table_idYes

Output Schema

ParametersJSON 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 and destructiveHint=false, so safety is covered, but the description adds nothing beyond that — no indication of whether table_id must come from a prior sync/list call, how large result sets behave, or what the response shape is. For a one-line definition there is 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?

One short, front-loaded sentence with no filler — the lookup key is stated immediately. Brevity here shades into under-specification rather than padding, but structurally it is efficient.

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 core action is clear. What is missing is the parameter's provenance/format and any routing versus the column-listing siblings, which a single-parameter tool of this type could reasonably supply.

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 the single required parameter. It only restates the name ('by its tableId') without saying where a valid tableId comes from, its format, or whether it must already be synced.

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 columns for a warehouse table') plus the lookup key, which is a clear purpose. It implicitly scopes to warehouse tables rather than data-model or workbook columns, but it never names the close siblings datasets_list_data_model_columns or elements_get_element_columns, so the agent must infer the boundary.

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. With siblings like datasets_list_data_model_columns and datasets_get_data_model_spec in the same namespace, an 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_connection_grantsDatasets List Connection GrantsC
Read-only

List permission grants on a connection.

ParametersJSON Schema
NameRequiredDescriptionDefault
connection_idYes

Output Schema

ParametersJSON 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 safety is covered. The description adds nothing beyond that: no mention of pagination, result shape, permission requirements, or what 'grant on a connection' includes (path grants?) relative to the sibling delete_connection_path_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?

A single front-loaded sentence with no waste. It is efficient, though so terse that the brevity shades into under-specification rather than crisp 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, and the read-only annotation covers the safety profile. Still, for a grants-listing tool sitting among several similar grant tools, the description omits the parameter's meaning and any scoping/pagination context, leaving it only minimally adequate.

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 lone parameter connection_id has no schema-level description. The description says 'on a connection' but never explains the expected identifier format (ID vs name, scoping) so an agent must guess how to populate 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?

Clear verb (List) and resource (permission grants on a connection), so the agent knows exactly what comes back. It does not differentiate itself from sibling grant readers such as workspace_list_workspace_grants or workbooks_list_workbook_grants, 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 indication of when to call this versus datasets_add_connection_grant, datasets_delete_connection_path_grant, or the other *_list_*_grants siblings. The description states what it does but gives zero routing guidance or prerequisites.

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 ConnectionsB
Read-only

List all connections in the Sigma organization. Pass summary_only=True for concise token-efficient response.

ParametersJSON Schema
NameRequiredDescriptionDefault
summary_onlyNo

Output Schema

ParametersJSON 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 and scope profile is covered. The description does add one piece of behavioral value not in the annotations: that summary_only yields a concise, token-efficient response, which matters for a potentially large org-wide listing. It says nothing about pagination or result size limits, 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?

Two short sentences with no filler; the purpose is front-loaded and the parameter tip follows. 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 structure need not be described, and the tool has a single optional parameter. The description covers purpose and the parameter's effect, leaving only pagination or result-size expectations unstated for what is an org-wide listing.

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 only the name, type and default of summary_only. The description compensates partially by explaining the effect of setting it to True (concise, token-efficient response), but does not describe what the full response contains or when the verbose form is needed.

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") plus the scope ("in the Sigma organization"), which is unambiguous on its own. It does not name or distinguish itself from near siblings such as datasets_get_connection or datasets_list_connection_grants, so the agent must infer the boundary from the names 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 or when-not-to-use guidance, and no alternative is named. The only routing hint is implicit in "all connections" versus the singular get_connection sibling. An agent gets no explicit signal about when this list is preferable to the grants or per-connection tools.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
data_model_idYes

Output Schema

ParametersJSON 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, covering the safety profile. The description adds useful scope by saying it lists columns across all elements rather than for one element, but it does not discuss pagination or result size.

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 that states the action and scope with no wasted words.

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

Completeness3/5

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

For a simple list tool with an output schema and safety annotations, the description is minimally adequate. It omits parameter details and usage guidance, but the output schema already covers return values and the annotations cover safety.

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 schema has one required parameter with 0% description coverage. The description only implies that data_model_id identifies the data model, but it does not explain the expected identifier format or source, 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 columns, scoped to all elements in a data model. This clearly distinguishes it from listing elements or listing columns for a single table, though it does not explicitly name a sibling 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 explicit guidance on when to use this tool versus alternatives such as datasets_list_data_model_elements or datasets_list_columns_for_table. The usage is only implicit from 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_list_data_model_elementsDatasets List Data Model ElementsC
Read-only

List elements in a data model.

ParametersJSON Schema
NameRequiredDescriptionDefault
data_model_idYes

Output Schema

ParametersJSON 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 structurally. The description adds nothing beyond that - no scoping, no pagination behavior, no note on what an 'element' is - so it earns little credit even against the lowered annotation-covered bar.

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 is appropriately sized and front-loaded with the verb, but the brevity reflects under-specification rather than discipline - key distinctions are 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 explained, but the description leaves 'elements' undefined and says nothing about scoping or result size. For a tool sitting among many similar list operations, this is too thin to call correctly with confidence.

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 full burden and fails to define the parameter's format or origin. It adds no meaning beyond the parameter name itself.

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 (List) and resource (elements in a data model), which is more than a tautology. However, 'elements' is vague and undefined, and the description does nothing to separate this from close siblings like datasets_list_data_model_columns or datasets_list_data_model_lineage.

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 despite many sibling list tools. An agent gets no signal about when this tool is preferable to datasets_list_data_model_columns or datasets_get_data_model_spec.

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 LineageC
Read-only

List lineage for a data model.

ParametersJSON Schema
NameRequiredDescriptionDefault
data_model_idYes

Output Schema

ParametersJSON 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 contributes nothing additional: no mention of lineage direction (upstream vs downstream), depth, scope, or pagination behavior, which are the distinguishing behavioral facts for a lineage 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?

A single short sentence that is front-loaded and free of filler. Its brevity is appropriate in form, though the content is under-specified rather than genuinely concise-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 needn't be described, but for a lineage query the description should at least indicate what lineage means here (upstream/downstream, column-level vs table-level) and identify the input identifier. Neither is present, so the definition is only marginally adequate for 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% and there is one required parameter (data_model_id) whose meaning, format, and constraints are documented nowhere. The description does not compensate by explaining what the identifier is or where it comes from, leaving the single parameter essentially 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 parses as a verb ('List') plus resource ('lineage for a data model'), so the purpose is identifiable, but it adds essentially nothing beyond the tool name 'datasets_list_data_model_lineage'. It also gives no differentiation from the parallel lineage tools (workbooks_list_workbook_lineage, workbooks_list_report_lineage) or from datasets_list_data_model_elements/columns, beyond the implied resource type.

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 the related lineage tools, nor any prerequisites mentioned (e.g., whether the data model must exist or be synced). The agent must infer the use case 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.

datasets_list_data_modelsDatasets List Data ModelsB
Read-only

List all data models in the organization. Pass summary_only=True for concise token-efficient response.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
summary_onlyNo

Output Schema

ParametersJSON 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 this is a safe, open-world read with no destructive effect. The description adds that summary_only yields a smaller payload, which is useful return-shape context, but it omits pagination behavior and any org-scope caveats beyond 'in the 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?

Two sentences, zero filler, with the core action front-loaded before the optimization hint. Slightly under-specified rather than over-long, but structurally sound.

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, but the description leaves the critical ambiguity with datasets_list_all_data_models unresolved and does not cover the limit parameter. Adequate for a simple list tool but not fully self-sufficient.

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

Parameters3/5

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

Schema coverage is 0%, so the description carries the burden; it explains summary_only's purpose ('concise token-efficient response') but says nothing about limit's semantics, defaults, or pagination behavior. With one of two undocumented params covered, this is 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 and resource — 'List all data models in the organization' — and adds the summary_only optimization. However, it does not distinguish itself from the close sibling datasets_list_all_data_models, leaving the agent to guess which list tool 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?

No when-to-use context, no prerequisites, and no routing between this tool and datasets_list_all_data_models or datasets_list_data_model_elements. The only guidance given is how to invoke a parameter, not when to select this tool.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYes
data_model_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
report_idYes
source_mappingNo
connection_mappingNo

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
schemaYes
databaseYes
connection_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNo
connection_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
tag_nameYes
data_model_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
connection_idYes

Output Schema

ParametersJSON 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).

ParametersJSON Schema
NameRequiredDescriptionDefault
specYes
data_model_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYes

Output Schema

ParametersJSON 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_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.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON 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

ParametersJSON Schema
NameRequiredDescriptionDefault
page_slugYes

Output Schema

ParametersJSON 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 ColumnsC
Read-only

List columns for a specific element in a workbook.

ParametersJSON Schema
NameRequiredDescriptionDefault
element_idYes
workbook_idYes

Output Schema

ParametersJSON 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=true, destructiveHint=false, and openWorldHint=true. The description adds no behavioral context beyond restating that this is a listing operation, such as permissions, pagination, or scope limitations.

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

Conciseness5/5

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

The description is a single front-loaded sentence with no filler. For a simple read tool, this is appropriately sized and easy 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?

The tool is simple, read-only, and has an output schema, reducing the description's burden. However, it still omits parameter semantics and usage guidance, leaving the definition minimally adequate rather than 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 must explain workbook_id and element_id. It only vaguely implies 'a specific element in a workbook' and does not clarify ID formats, requiredness, or how the element is identified.

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 and resource: 'List columns' for 'a specific element in a workbook.' It distinguishes the element-scoped resource from workbook-level column listing siblings, though it does not explicitly name an alternative 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?

It gives no explicit when-to-use guidance, prerequisites, or alternatives. The intended usage is only implied by the purpose statement itself.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
element_idYes
workbook_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
job_idYes
workbook_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
policy_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON 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_materialization_schedulesElements List Materialization SchedulesC
Read-only

List materialization schedules for a workbook.

ParametersJSON Schema
NameRequiredDescriptionDefault
workbook_idYes

Output Schema

ParametersJSON 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 covered. The description adds nothing beyond that baseline: no pagination behavior, no ordering, no indication of what a 'materialization schedule' contains versus a regular schedule.

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 the key scope up front and no wasted words, so it is structurally sound. The brevity crosses into under-specification given the ambiguity with a near-identical sibling.

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 detail is not required from the description, and the tool takes only one simple parameter. Even so, the definition leaves the distinction from 'workbooks_list_workbook_schedules' unresolved, which is the main ambiguity an agent would 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 the single workbook_id parameter, so the description carries the burden. 'For a workbook' merely restates what the parameter name already implies and gives no format, ID source, or validity constraints.

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 materialization schedules') and scopes it to a workbook, so an agent knows this is a read that returns schedules. It does not, however, distinguish itself from the sibling 'workbooks_list_workbook_schedules', which appears to return the same class of object for 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?

There is no when-to-use guidance, no note on prerequisites, and no mention of alternatives. The only implied usage is 'you have a workbook_id and want its schedules', which the caller could infer 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_list_source_swap_policiesElements List Source Swap PoliciesA
Read-only

List all source swap policies (rules for automatic source swapping on deployment).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON 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 covered. The description adds domain context (policies are rules for automatic source swapping on deployment) but says nothing about pagination, result volume, or auth requirements.

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 a clarifying definition; every clause earns its place and 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 zero-parameter list tool with an output schema (so return shape needn't be described) and annotations covering safety, the description is nearly complete. Only the relationship to sibling get/create 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 there is nothing for the description to disambiguate. The baseline of 4 for a parameterless tool is appropriate here.

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 all") and resource ("source swap policies"), and the parenthetical defines what a policy is. The plural/enumerating verb distinguishes it from the singular get_source_swap_policy and from create_source_swap_policy, 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?

The description gives no when-to-use guidance, no condition that selects it over get_source_swap_policy or create_source_swap_policy, and no prerequisites. Usage is only implied by the verb "List all".

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
workbook_idYes

Output Schema

ParametersJSON 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, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds that results include formulas and types, which is mild return-content context, but nothing about volume, pagination or how the cross-element aggregation behaves.

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, zero padding, and the scoping qualifier 'across all elements' is front-loaded where it matters.

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; the description supplies the aggregation scope and payload hint. Only the routing guidance against sibling column tools 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 workbook_id parameter, but the parameter is self-evident from its name and the description's reference to 'a workbook'. The description adds no format or sourcing detail 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 (list) and a precise resource scope: columns across all elements in a workbook. This implicitly separates it from sibling elements_get_element_columns (single element), 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 'across all elements' scope; there is no statement of when to reach for this versus elements_get_element_columns or elements_list_workbook_elements, and no preconditions are given.

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 ControlsB
Read-only

List control elements (filters, parameters) in a workbook.

ParametersJSON Schema
NameRequiredDescriptionDefault
workbook_idYes

Output Schema

ParametersJSON 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=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds only domain context (what a control element is); it says nothing about pagination, result volume, or any auth/scope constraints beyond what the annotations imply.

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 imperative sentence with zero filler; the scoping term 'control elements' arrives early. It is efficiently sized, though its brevity is also what leaves the sibling-routing gap unaddressed.

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 one-parameter read-only tool with an output schema and annotations, the essentials are present. However, given how many near-identical element-listing siblings exist, the description is not complete enough to reliably route an agent to this tool over elements_list_workbook_elements or elements_list_workbook_page_elements.

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 workbook_id parameter, but the description's phrase 'in a workbook' implicitly anchors the input to a workbook. With one self-evident identifier and no enums, the description does enough to link the parameter to purpose without adding format details.

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 ('List') plus a precise resource ('control elements (filters, parameters) in a workbook'), and the parenthetical defines the domain term 'control element', which separates it from sibling listers like elements_list_workbook_columns or elements_list_workbook_sources. It does not explicitly name which sibling to prefer, 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 never states when to use this tool versus the crowded family of alternatives (elements_list_workbook_elements, elements_list_workbook_page_elements, elements_list_workbook_queries). An agent must infer the distinction from the phrase 'filters, parameters' alone, with no exclusions or routing guidance.

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 ElementsB
Read-only

List all elements (tables, charts, controls, etc.) in a workbook.

ParametersJSON Schema
NameRequiredDescriptionDefault
workbook_idYes

Output Schema

ParametersJSON 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=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. Beyond that the description adds essentially nothing behavioral: no pagination/result-size notes, no auth or permission requirements. The only added value is the parenthetical list of element kinds, which is minimal.

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 or redundancy. Every word contributes to defining the operation and its 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?

The tool is simple and an output schema exists, so return-value detail is rightly absent. However, for a tool with many near-duplicate siblings, the description omits how results are scoped/paginated and offers no parameter guidance, leaving the agent with a merely adequate picture.

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 workbook_id parameter, so the description must compensate and does not. It never clarifies whether the value is an ID vs name, its format, or where to obtain it; only the phrase 'in a workbook' loosely implies what the parameter 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 clear verb and resource ('List all elements ... in a workbook') and enumerates example element types, so the agent understands the scope is the full element inventory rather than one category. It does not, however, name or contrast with the many sibling list tools (e.g., elements_list_workbook_controls, elements_list_workbook_page_elements), leaving differentiation to 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 only implied: the word 'all' hints this is the broad inventory call versus the type-scoped siblings (controls, queries, columns) or the page-scoped variant. There is no explicit when-to-use statement, no prerequisites, and no named alternative for narrower listings.

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 ElementsB
Read-only

List elements on a specific page of a workbook.

ParametersJSON Schema
NameRequiredDescriptionDefault
page_idYes
workbook_idYes

Output Schema

ParametersJSON 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 covered. The description adds only the page-scoping constraint; it says nothing about pagination, result size, or ordering beyond what the output schema would carry. Modest added value on top of rich 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, front-loaded sentence with no wasted words. It is efficient, though extremely terse for a tool with undocumented parameters.

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 present, return-value explanation is not needed, and annotations cover safety. But for a 2-param tool with 0% schema description coverage, the description is too thin to be fully self-sufficient; an agent gets no guidance on param meaning or on how this differs from the many sibling list 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 schema does not document what workbook_id or page_id mean or their format. The description mentions the page/workbook concept implicitly, but adds no ID format, sourcing, or constraint details. Baseline-appropriate 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 states a specific verb (List) and resource (elements on a specific page of a workbook), which is clear. However, it does not differentiate from the closely-named sibling elements_list_workbook_elements, which presumably lists all elements across a workbook rather than one page. The distinction is implied but not made 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?

The phrase 'on a specific page' implies you need a page context, and the name implies a narrower scope than elements_list_workbook_elements, but the description never states when to use this versus listing all workbook elements or listing report elements. Usage is mildly 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.

elements_list_workbook_queriesElements List Workbook QueriesC
Read-only

List generated SQL queries for all elements in a workbook.

ParametersJSON Schema
NameRequiredDescriptionDefault
workbook_idYes

Output Schema

ParametersJSON 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=true, destructiveHint=false, openWorldHint=true, so the safety profile is covered. The description adds no further behavioral context (e.g., whether the query text is returned verbatim, whether it reflects materialized state, or how it differs from element-level query retrieval), so it contributes almost 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.

Conciseness4/5

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

A single tight sentence with the resource and scope front-loaded and no filler. It is appropriately sized, though it is arguably too terse for the surrounding sibling ambiguity.

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 safety. For a simple list tool this is minimally adequate, but the ambiguity with sibling query-listing tools and the undocumented parameter leave it short of complete.

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

Parameters3/5

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

Schema coverage is 0%, but there is only one self-evident required parameter (workbook_id). The description implies the workbook scoping but adds no format, type, or identification detail beyond what the parameter name conveys. Baseline 3 for a single 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+resource: lists generated SQL queries scoped to a workbook. This is distinguishable from elements_get_element_query (single element) and workbooks_list_report_queries (report scope), though it does not explicitly name or contrast 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?

No when-to-use or when-not-to-use guidance. The sibling set contains closely related tools (elements_get_element_query, elements_list_workbook_elements, workbooks_list_report_queries), yet the description never tells the agent which condition selects this tool over those.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
workbook_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
element_idYes
workbook_idYes
timeout_secondsNo

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
element_idYes
workbook_idYes

Output Schema

ParametersJSON 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

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
template_idYes
source_mappingNo
connection_mappingNo

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
workbook_idYes
source_mappingNo
connection_mappingNo

Output Schema

ParametersJSON 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.

workbooks_accept_shared_templateWorkbooks Accept Shared TemplateC

Accept a pending template share from another organization.

ParametersJSON Schema
NameRequiredDescriptionDefault
share_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYes
workbook_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYes
workbook_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
workbook_idYes
destination_folder_idNo

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
member_idYes
workbook_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYes

Output Schema

ParametersJSON 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_scheduleWorkbooks Create Report ScheduleC

Create a scheduled export for a report.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYes
report_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
folder_idYes
descriptionNo

Output Schema

ParametersJSON 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'.

ParametersJSON Schema
NameRequiredDescriptionDefault
source_idNo
embed_typeNopublic
source_typeNoworkbook
workbook_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
folder_idYes
template_idYes

Output Schema

ParametersJSON 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_workbook_scheduleWorkbooks Delete Workbook ScheduleA
Destructive

Delete a scheduled export. Requires confirm=True.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNo
schedule_idYes
workbook_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
folder_idYes
template_idYes
connection_mappingNo

Output Schema

ParametersJSON 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).

ParametersJSON Schema
NameRequiredDescriptionDefault
query_idYes
max_bytesNo

Output Schema

ParametersJSON 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).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
report_idYes
destination_folder_idYes

Output Schema

ParametersJSON 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_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.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
workbook_idYes
destination_folder_idNo

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNocsv
layoutNoportrait
max_bytesNo
element_idNo
parametersNo
workbook_idYes
timeout_secondsNo

Output Schema

ParametersJSON 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'.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNopdf
report_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNopdf
layoutNoportrait
element_idNo
workbook_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
report_idYes

Output Schema

ParametersJSON 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_templateWorkbooks Get TemplateC
Read-only

Get template details.

ParametersJSON Schema
NameRequiredDescriptionDefault
template_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
workbook_idYes

Output Schema

ParametersJSON 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 TagsC
Read-only

List tags on a workbook.

ParametersJSON Schema
NameRequiredDescriptionDefault
workbook_idYes

Output Schema

ParametersJSON 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 further about behavior, such as pagination, ordering, or what a missing workbook yields, leaving the behavioral burden entirely on 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?

A single front-loaded sentence with no filler, which is proportionate to a trivial read operation. It is efficient, though borderline too terse to convey anything beyond the name.

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

Completeness3/5

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

For a simple read tool with an output schema, the minimal description is close to sufficient, and annotations carry the safety profile. The unresolved gap is the undocumented required workbook_id parameter, which the description could easily have addressed.

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 (workbook_id) is undocumented in both schema and description. The description never mentions that the workbook must be identified by 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 states a specific verb ('List') and resource ('tags on a workbook'), so an agent knows exactly what it does. It does not, however, distinguish itself from closely related siblings like workbooks_tag_workbook or workbooks_remove_workbook_tag, which would be useful given how many tag-related tools exist.

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 workbooks_tag_workbook, workbooks_remove_workbook_tag, or workspace_list_tags. No prerequisites, no exclusions, and no context about when a caller would want a workbook's tags.

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 HistoryC
Read-only

Get version history for a workbook.

ParametersJSON Schema
NameRequiredDescriptionDefault
workbook_idYes

Output Schema

ParametersJSON 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=true, destructiveHint=false and openWorldHint=true, so the safety profile is fully covered by structured data. The description adds nothing behavioral on top of that — no pagination behavior, no ordering/recency of versions, no note on how many versions are returned — so it earns little credit against the already-low bar.

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 with zero padding and the resource front-loaded. It is efficient, though the brevity here 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.

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 carry the safety profile. What remains missing is routing context against the restore/version siblings and any note on result volume or pagination for a version-history endpoint.

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 does not explain workbook_id. The description also says nothing about it, but with a single self-evidently named required parameter the meaning is recoverable from the name, 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?

The description states a specific verb ('Get') and resource ('version history for a workbook'), so the agent knows exactly what is retrieved. However, it does nothing to distinguish itself from the closely related sibling workbooks_restore_workbook_version, nor from workbooks_get_workbook, leaving the boundary 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 statement of prerequisites (e.g. that workbook_id must be a workbook the caller can access), and no mention of the alternative restore_workbook_version tool. 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_grant_workbook_accessWorkbooks Grant Workbook AccessB
Idempotent

Grant access to a workbook. grant_type: 'member' or 'team'. permission: 'view', 'explore', 'edit'.

ParametersJSON Schema
NameRequiredDescriptionDefault
grant_typeYes
grantee_idYes
permissionYes
workbook_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON 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_elementsWorkbooks List Report ElementsC
Read-only

List elements in a report.

ParametersJSON Schema
NameRequiredDescriptionDefault
report_idYes

Output Schema

ParametersJSON 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 structurally. The description adds nothing beyond that: no pagination behavior, no scoping/filtering semantics, no note on what an 'element' is or how results are ordered. It contributes no behavioral context the annotations don't already supply.

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 the brevity reflects under-specification rather than efficiency — the sentence does not carry enough information to be useful.

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 need not be described), the definition is incomplete for the task: no sibling disambiguation among the many report-scoped list tools, and a required parameter with 0% schema coverage that the description never explains.

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 report_id, so the description carries the full burden of explaining it. 'In a report' only weakly implies the identifier's role and gives no format, source, or retrieval hint, leaving the parameter effectively 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 names a verb (List) and a resource (elements in a report), so the basic purpose is conveyed. However, it is essentially a restatement of the tool name, and 'elements' is never defined relative to sibling report sub-resources such as workbooks_list_report_sources, workbooks_list_report_queries, or workbooks_list_report_lineage, so an agent cannot disambiguate 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 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 or alternatives, and no indication of how this differs from the many other report-listing siblings. The agent must infer everything 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_list_report_lineageWorkbooks List Report LineageC
Read-only

List lineage for a report.

ParametersJSON Schema
NameRequiredDescriptionDefault
report_idYes

Output Schema

ParametersJSON 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 covered. The description adds no behavioral context of its own – nothing about what lineage means, its depth, or how it is scoped – so it contributes essentially nothing 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.

Conciseness3/5

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

A single short sentence with no wasted words, but it is terse to the point of under-specification rather than genuinely economical. Front-loading is fine; the issue is minimal 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?

Complexity is low (one required param) and an output schema exists, so return values need not be explained. Still, the description gives no context on what a report's lineage contains, leaving the agent able to call it but not fully informed about the result.

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 parameter, report_id, and schema description coverage is 0%, so the schema documents nothing. The description also says nothing about what report_id refers to or where to obtain it, 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?

States a specific verb (List) and resource (lineage for a report), so the agent knows exactly what it retrieves. It does not, however, distinguish itself from the closely named sibling workbooks_list_workbook_lineage or datasets_list_data_model_lineage, leaving the report/workbook boundary to be inferred 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?

The description offers no when-to-use guidance, no prerequisites, and no mention of the alternative lineage tools. Usage is only loosely implied by the phrase 'for a report'.

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 QueriesC
Read-only

List SQL queries in a report.

ParametersJSON Schema
NameRequiredDescriptionDefault
report_idYes

Output Schema

ParametersJSON 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=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that—no return format, pagination, authorization requirements, or other behavioral context—so it does not earn a higher score despite the lower bar.

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 short sentence that is front-loaded with the verb and resource. There is no filler, redundancy, or trailing detail, making it maximally efficient.

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 simple read-only tool with an output schema and annotations, the description is minimally adequate: it says what is listed and where. However, it omits usage guidance and parameter semantics, leaving gaps that an agent might need for confident 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% and the sole parameter, report_id, is undocumented in the schema. The description only repeats the word 'report' from the tool's context, adding no format, example, or identifier semantics beyond what the schema already implies.

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 (SQL queries in a report), making the tool's function immediately clear. It implicitly distinguishes itself from the sibling workbook-query tool by scoping to reports, but does not explicitly name alternatives or reinforce 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 guidance on when to use this tool versus alternatives such as workbooks_list_report_elements, workbooks_list_report_sources, or elements_list_workbook_queries. Usage is only inferable from the purpose statement, with no prerequisites or exclusions provided.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo

Output Schema

ParametersJSON 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 the org-wide scope, but says nothing about pagination despite the limit parameter, nor about result volume or ordering. With annotations carrying the safety burden, 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.

Conciseness4/5

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

A single short sentence with the resource and scope front-loaded and zero filler. It is efficient, though its brevity is partly under-specification rather than tight writing.

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, which relieves much of the burden. Still missing are pagination behavior tied to the limit parameter and any disambiguation from workbooks_list_all_reports, both of which an agent needs to call 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?

Schema description coverage is 0% for the single 'limit' parameter, so the description carries the burden and fails: it never mentions pagination, the default of 200, or what the limit caps. The schema gives only type and default, so the agent gets no meaning beyond that.

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 (reports) with the scope 'in the organization', so an agent knows this is an org-wide listing. However, it does nothing to distinguish itself from the very similar sibling workbooks_list_all_reports, leaving the agent to guess which 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 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 workbooks_list_all_reports, workbooks_get_report, or the many report-scoped listers (workbooks_list_report_sources, workbooks_list_report_elements). There are no 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.

workbooks_list_report_schedulesWorkbooks List Report SchedulesB
Read-only

List scheduled exports for a report.

ParametersJSON Schema
NameRequiredDescriptionDefault
report_idYes

Output Schema

ParametersJSON 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=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered without the description. The description adds the useful scoping detail that results are schedule/export entries tied to a report, but says nothing about pagination, ordering, or result volume. With annotations carrying the behavioral load, 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 seven-word sentence with no filler and the resource front-loaded after the verb. It is efficient, though it is arguably under-specified rather than optimally concise given the gaps in usage and parameter 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. For a one-parameter list tool the description is minimally adequate, but it omits pagination or volume expectations that matter for a list operation in an open-world system.

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 report_id has no description, but the phrase 'for a report' minimally implies that report_id identifies the target report. That is the extent of the added meaning; nothing about format, expected ID shape, or behavior on an unknown ID is provided.

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 ('scheduled exports for a report'), which cleanly separates it from workbook-level siblings like workbooks_list_workbook_schedules and from the mutation sibling workbooks_create_report_schedule. It does not explicitly name those siblings, so 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?

Contains no when-to-use guidance, no prerequisites, and no reference to alternative tools such as workbooks_list_workbook_schedules or workbooks_list_report_sources. The agent must infer that this is the report-scoped schedule listing.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
report_idYes

Output Schema

ParametersJSON 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_shared_templatesWorkbooks List Shared TemplatesA
Read-only

List templates shared with your organization from other orgs.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON 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, destructiveHint=false and openWorldHint=true, so the safety and cross-org nature are largely covered. The description adds only the 'from other orgs' scope nuance, saying nothing about pagination, auth requirements, or result volume.

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 that states the resource and scope with no filler. It earns its place, though it is minimal enough that it could carry one more clause of guidance without 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 not be described, and a 0-param read-only list needs little more. The scope statement plus annotations make the definition essentially self-sufficient, with only routing guidance 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; there is no parameter semantics for the description to clarify 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?

Clear verb+resource ('List templates') with a scope qualifier ('shared with your organization from other orgs') that separates it from workbooks_list_templates. It does not explicitly name the sibling, but the cross-org scope framing gives an agent enough to distinguish 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 'shared from other orgs' phrasing implies when this tool applies versus the general template list, but there is no explicit when-to-use statement and no named alternative (e.g. workbooks_list_templates, workbooks_accept_shared_template). 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.

workbooks_list_templatesWorkbooks List TemplatesB
Read-only

List all templates in the organization.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo

Output Schema

ParametersJSON 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 and destructiveHint=false, so the safety profile is covered. The description adds the organization-wide scope, which is real context, but discloses nothing about pagination or the limit default of 200, which matters for a list endpoint that may truncate 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?

A single front-loaded sentence with zero filler; nothing is padded. It is efficient, though it is efficient at the cost of the detail the tool actually needs.

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 read-only annotations cover safety. What remains missing is any routing signal against the many template siblings and any behavior for the undocumented limit parameter, leaving the definition 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?

There is one parameter (limit, default 200) and schema description coverage is 0%, so the description carries the burden of explaining it — and says nothing. Max-result behavior, pagination, and whether the default caps results are all 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 (List) and resource (templates) and scopes it to 'the organization', which is genuinely useful. However, it never distinguishes itself from the near-identical sibling workbooks_list_shared_templates, leaving the agent to guess which list is the right 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 when-to-use guidance, no prerequisites, and no named alternative despite several adjacent template tools (get_template, list_shared_templates, create_workbook_from_template, save_template_from_workbook). The only context is the implicit org-wide scope.

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 AgentsB
Read-only

List AI agents defined in a specific workbook (optionally filtering by version tag).

ParametersJSON Schema
NameRequiredDescriptionDefault
workbook_idYes
version_tag_nameNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3/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 almost nothing behavioral beyond that — no note on scoping rules, permissions, result size, or what an 'agent' object represents here.

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 well-formed sentence with the resource stated first and the optional filter in a trailing parenthetical. It is efficient and front-loaded, though it is arguably too terse for a tool with zero schema 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 described, and this is a simple two-parameter read. Still, the required workbook_id is undocumented in both schema and description, leaving a gap for an identifier whose format an agent cannot infer.

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 two parameters rely entirely on narrative. The description hints that version_tag_name is an optional filter, but says nothing about workbook_id's expected form (ID vs name), nor the version tag's syntax or matching behavior.

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 (AI agents defined in a specific workbook), which distinguishes it from workbooks_run_workbook_agent and admin_list_org_workbook_agents. It does not name those siblings explicitly, but the workbook-scoped framing makes the target set 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 tagging implies the intended filtering use case, so usage is inferable. However, it never states when to reach for this tool versus the org-level agent listing or the run-agent tool, and gives no preconditions or exclusions.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
workbook_idYes

Output Schema

ParametersJSON 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 and destructiveHint=false, so the safety profile is covered. The description adds useful domain context by defining bookmarks as saved filter states, but says nothing about pagination, ordering, or result scope.

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

Conciseness5/5

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

A single tight sentence with the resource and its definition front-loaded; every clause earns its place and 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 simple single-parameter list tool with an output schema covering return values, the description is essentially complete. Only minor pagination/scope detail 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% and the description adds no meaning for workbook_id. The single parameter name is self-explanatory, so a minimum-viable 3 is appropriate, 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.

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 (bookmarks) and adds a clarifying parenthetical defining bookmarks as saved filter states. It is clearly distinguishable from the sibling workbooks_add_workbook_bookmark, though it does not explicitly name 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?

Usage is only implied by the name and verb – an agent can infer this retrieves existing bookmarks for a workbook, but there is no explicit when-to-use guidance or reference to the add_bookmark alternative for creating them.

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 EmbedsC
Read-only

List embed configurations for a workbook.

ParametersJSON Schema
NameRequiredDescriptionDefault
workbook_idYes

Output Schema

ParametersJSON 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 structurally. The description adds no behavioral context of its own — no note on pagination, whether embedding must be enabled, or any authorization requirement for reading embed configs.

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; the verb and resource land immediately. Its brevity is efficient, though it edges toward under-specification rather than genuine 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?

For a simple read tool with an output schema and annotations covering safety, the description is minimally viable. It omits any routing guidance relative to workbooks_create_workbook_embed, which is the main completeness gap given the large sibling set.

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 workbook_id parameter, so the schema supplies no semantics. The description does not compensate by stating the expected identifier format (ID vs. name/path) or whether embeds are scoped to a workbook or an individual page.

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 (embed configurations) scoped to a workbook, which distinguishes it from the write-side sibling workbooks_create_workbook_embed. It does not, however, explicitly contrast itself with any sibling or note that it is scoped per 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?

No when-to-use guidance, no prerequisites, and no mention of alternatives such as workbooks_create_workbook_embed for creating embeds or workbooks_get_workbook for workbook-level metadata. The agent must infer the usage 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.

workbooks_list_workbook_grantsWorkbooks List Workbook GrantsC
Read-only

List permission grants on a workbook.

ParametersJSON Schema
NameRequiredDescriptionDefault
workbook_idYes

Output Schema

ParametersJSON 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 cover the safety profile (readOnlyHint=true, destructiveHint=false), so the bar is lower, but the description adds no behavioral context at all: no indication of whether results are paginated, whether inherited/workspace grants are included, or what the grant listing is scoped to. It purely restates 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?

A single front-loaded sentence with no filler or repetition. It is appropriately terse for the amount of information conveyed, though the terseness is partly a symptom of under-specification rather than efficiency.

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 annotations cover the read-only safety profile. However, for a permission-listing tool sitting among several grant-related siblings, the description omits scope, pagination, and alternative-tool routing, leaving it 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% for the single workbook_id parameter, and the description does not compensate by explaining identifier format or how to obtain it. The parameter is inferable from its name, which keeps this above a 1, but no meaning is added 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 gives a specific verb and resource ('List permission grants on a workbook'), which is unambiguous and matches the tool name. It does not, however, distinguish itself from the closely related sibling workbooks_grant_workbook_access (the write counterpart) or workspace_list_workspace_grants, leaving sibling disambiguation 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 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 workbooks_grant_workbook_access, admin_list_grants, or workspace_list_workspace_grants. Nothing states prerequisites, scope (workbook-level vs inherited workspace grants), or exclusions.

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 LineageC
Read-only

List data lineage for a workbook.

ParametersJSON Schema
NameRequiredDescriptionDefault
workbook_idYes

Output Schema

ParametersJSON 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=true, openWorldHint=true, and destructiveHint=false, so the safety profile is covered. The description adds nothing beyond that – no indication of lineage direction (upstream vs downstream), depth, or whether the workbook must exist, so it does not earn credit above the annotation baseline.

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 zero waste, but it is under-specified rather than genuinely concise – the brevity costs 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-value explanation is unnecessary, and annotations cover safety for this simple one-parameter read. Still, for a lineage tool the description never says what kind of lineage graph is returned, leaving it minimally adequate.

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

Parameters3/5

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

Schema description coverage is 0% for the single string parameter, so the description carries the burden; 'for a workbook' only loosely maps workbook_id to a workbook identifier. It adds marginal meaning but no format, ID-source, or required-ness 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 (list) and resource (data lineage) scoped to a workbook, so an agent knows exactly what it returns. It does not distinguish itself from the lineage siblings (workbooks_list_report_lineage, datasets_list_data_model_lineage), though the name's 'workbook' prefix carries that 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 guidance on when to use this over the other lineage tools, no prerequisites, and no exclusions. Usage is only implied by the resource name.

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 PagesC
Read-only

List pages in a workbook.

ParametersJSON Schema
NameRequiredDescriptionDefault
workbook_idYes

Output Schema

ParametersJSON 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=true, destructiveHint=false, and openWorldHint=true, so the safety profile is covered. The description adds nothing beyond that: no note on pagination, ordering, or what a page record contains, so it contributes no behavioral context of its own.

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 clean, front-loaded sentence with no filler. It is efficient, though arguably under-specified rather than maximally informative.

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 tool is a simple one-parameter read. Still, given the dense sibling set it omits any routing hint toward elements_list_workbook_page_elements or how pages relate to workbook contents.

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 only refers obliquely to "a workbook." The single workbook_id parameter is self-evident from its name, so the gap is minor, but the description offers no added semantic detail 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 (List) and resource (pages in a workbook), so the operation is immediately clear. However, it never distinguishes itself from related siblings such as elements_list_workbook_page_elements or workbooks_get_workbook, which an agent may need to disambiguate.

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. The agent is left to infer that this is the entry point for enumerating pages before drilling into elements.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
summary_onlyNo

Output Schema

ParametersJSON 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, openWorldHint=true, and destructiveHint=false, so safety is covered. The description adds the token-efficiency behavior of summary_only, which is useful. However, it doesn't mention pagination behavior, default limiting (limit=200), or output shape.

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, front-loaded sentences with no filler. The primary action is stated first, and the optional parameter tip follows — efficient and well-structured.

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

Completeness3/5

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

An output schema exists so return values need not be explained. But with 0% schema coverage on parameters and no differentiation from sibling list tools, the description is minimally adequate. It omits the limit parameter's semantics and pagination behavior.

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 both parameters (limit, summary_only) are undocumented in the schema. The description explains summary_only's purpose ('concise token-efficient response') but says nothing about limit's role, default, or range, leaving one of two parameters semantically unclear.

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 workbooks in the organization. However, it does not distinguish itself from closely-named siblings like workbooks_list_all_workbooks, workbooks_list_workbooks_shared_with_member, or workbooks_list_templates, leaving the agent to guess 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 Guidelines3/5

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

The description hints at usage via the summary_only tip for token efficiency, but gives no explicit when-to-use or when-not-to-use guidance versus the many sibling list tools (list_all_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_workbook_schedulesWorkbooks List Workbook SchedulesB
Read-only

List scheduled exports for a workbook.

ParametersJSON Schema
NameRequiredDescriptionDefault
workbook_idYes

Output Schema

ParametersJSON 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 only the clarification that 'schedules' means 'scheduled exports', with no pagination, ordering, or permission context beyond that.

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 resource and scope come first. It is efficient, though arguably too terse for the information an agent needs.

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 read-only safety profile. What remains missing is how to supply workbook_id and how this differs from workbooks_list_report_schedules, leaving the definition only minimally adequate.

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 workbook_id is undocumented in the schema. The description only implies workbook scoping ('for a workbook') and gives no hint on ID format or where to obtain it, 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?

Clear specific verb+resource: 'List scheduled exports for a workbook.' An agent can identify the operation, and the sibling names (add/delete_workbook_schedule) make the read variant distinct. It stops short of explicitly contrasting itself with workbooks_list_report_schedules or the sibling schedule mutators.

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 named alternatives. The agent must infer that this is the read counterpart to add_workbook_schedule/delete_workbook_schedule and that report-level schedules are covered by a different tool.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
member_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
tag_nameYes
tag_colorNocyan
workbook_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
dry_runNo
new_owner_emailYes
old_owner_emailYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior4/5

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

Annotations flag this as a non-read-only (readOnlyHint=false) but non-destructive mutation; the description adds real behavioral value beyond that by disclosing the internal steps (email resolution, finding owned workbooks, PATCH /v2/files/{id}) and, crucially, that dry_run defaults to true and only reports without changing anything. It does not, however, state the blast radius (all workbooks, irreversibility of the transfer, or required auth level), which matters for a bulk write.

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 the core action front-loaded, then mechanics, then the safety-relevant dry_run default. Nothing is redundant and no filler 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?

An output schema exists, so return-value documentation is unnecessary, and the description covers mechanism plus the dry_run safety valve completely enough to invoke the tool correctly. It omits failure modes (missing email, permission errors) and the scale of what gets transferred, which would matter for a bulk ownership change.

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 parameter burden. It explains old_owner_email/new_owner_email are resolved by email and clarifies dry_run's default and effect ('reports what would change without making changes'), which is genuinely more than the bare schema. It does not fully specify edge cases such as invalid/unmatched emails.

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 with scope ('Transfer all workbooks from one member to another'), which is unambiguous and distinguishable from the neighboring copy tool (workbooks_copy_workbook_to_member) since it is a full ownership handoff rather than a duplicate. The follow-on sentence clarifies the mechanism (ownership reassignment, not duplication).

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 through the dry_run default ('reports what would change without making changes'), which is useful context for a bulk mutation. However, it never states when to prefer this over siblings like workbooks_copy_workbook_to_member or workbooks_grant_workbook_access, nor any prerequisites (e.g. admin/permission requirements).

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
tag_idYes
confirmNo
workbook_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
versionYes
workbook_idYes

Output Schema

ParametersJSON 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).

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNo
agent_idYes
messagesYes
metadataNo
max_turnsNo
workbook_idYes
response_formatNo
version_tag_nameNo
max_output_tokensNo

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
folder_idYes
workbook_idYes

Output Schema

ParametersJSON 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_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.

ParametersJSON Schema
NameRequiredDescriptionDefault
tag_nameYes
workbook_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNo
contentsYes
report_idYes
document_versionYes

Output Schema

ParametersJSON 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_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.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNo
contentsYes
workbook_idYes
document_versionYes

Output Schema

ParametersJSON 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_verify_report_specWorkbooks Verify Report SpecB
Read-only

Verify a report code representation specification without saving.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
documentYes
folder_idYes
descriptionNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3/5.0
Behavior3/5

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

'Without saving' is consistent with readOnlyHint=true and destructiveHint=false, and usefully confirms the side-effect-free nature of the call. However, it adds nothing beyond what the annotations already declare — no mention of what a failed verification produces, whether it can error on invalid specs, or any auth/rate 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 tight sentence with no filler, and the no-save constraint is placed where it will be read. It is efficiently sized, though the jargon makes it less immediately informative than it could 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 not be described, which relieves some burden. Still, for a validation tool whose whole value is reporting whether a spec is valid, the description says nothing about what validity means or how failures surface, and it leaves the nested document contract undefined.

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 four parameters, three of which are required, and the description supplies no meaning for any of them. In particular the nested 'document' object and its expected shape — the crux of a 'spec' — are 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 ('Verify') and a specific resource ('report code representation specification'), and the 'report' qualifier differentiates it from the sibling workbooks_verify_workbook_spec. The phrase 'code representation specification' is internal jargon that an agent cannot fully decode, but the verb+resource pairing 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?

The only usage signal is 'without saving,' which hints at a dry-run but never states when this tool should be chosen over workbooks_create_report or workbooks_verify_workbook_spec. No prerequisites, no exclusion conditions, and no named alternatives are given.

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 SpecB
Read-only

Verify a workbook code representation specification without saving.

Validates schema structure, syntax, and element layout.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
documentYes
folder_idYes
descriptionNo

Output Schema

ParametersJSON 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=true and destructiveHint=false, so the non-mutating profile is covered. The description reinforces this with "without saving" and adds the concrete validation targets (schema, syntax, element layout), but says nothing about failure behavior or what a failed spec looks like.

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 dry-run qualifier and validation scope front-loaded; no filler. Brevity is a virtue here, though the second sentence is doing all the substantive work while the parameter gaps remain.

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. However, with 0% parameter coverage and a nested document object, an agent still lacks what each input should contain, which is the main incompleteness.

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 four parameters, including a nested 'document' object, yet the description gives no parameter-level meaning. The phrase "code representation specification" loosely hints that 'document' carries the spec, but name, folder_id, and description are entirely unexplained and the description 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.

Purpose4/5

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

Specific verb (verify) plus resource (workbook code representation specification) with an explicit dry-run qualifier ("without saving") and the validation scope (schema structure, syntax, element layout). It is distinguishable from the parallel workbooks_verify_report_spec, but it never names or contrasts 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 phrase "without saving" implies a dry-run preflight before create/update, which is useful implicit guidance, but there is no explicit when-to-use statement, no prerequisites, and no mention of the sibling workbooks_verify_report_spec or when to prefer it over workbooks_create_workbook.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
parent_idYes

Output Schema

ParametersJSON 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').

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
colorNocyan

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNo
inode_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
tag_idYes
confirmNo

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNo
workspace_idYes

Output Schema

ParametersJSON 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNo
grant_idYes
workspace_idYes

Output Schema

ParametersJSON 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_get_workspaceWorkspace Get WorkspaceC
Read-only

Get workspace details.

ParametersJSON Schema
NameRequiredDescriptionDefault
workspace_idYes

Output Schema

ParametersJSON 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).

ParametersJSON Schema
NameRequiredDescriptionDefault
grant_typeYes
grantee_idYes
permissionYes
workspace_idYes

Output Schema

ParametersJSON 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'.

ParametersJSON Schema
NameRequiredDescriptionDefault
parent_idNo
type_filterNo

Output Schema

ParametersJSON 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_filesWorkspace List FilesB
Read-only

List files/folders. Optionally filter by parentId or type ('workbook', 'folder', 'data-model', 'template').

ParametersJSON Schema
NameRequiredDescriptionDefault
parent_idNo
type_filterNo

Output Schema

ParametersJSON 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 covered and an output schema exists for return shape. The description adds the filterable facets and their accepted values, but says nothing about scope (which workspace the listing covers), pagination, or result ordering — modest added value above 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.

Conciseness5/5

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

Two tight sentences with zero filler: the operation first, then the optional narrowing filters. 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?

Adequate for a simple read-only lister whose annotations and output schema cover safety and returns. It is still incomplete on two things an agent would need: how this differs from 'workspace_list_all_files' and what the listing is scoped to when no parent_id is given.

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 enum is declared, so the description carries the full burden — and it largely does, naming both the parentId filter and the type filter and supplying the four valid type values ('workbook', 'folder', 'data-model', 'template'). It misses only the default/root-level behavior when parent_id is omitted, and uses 'parentId' where the schema key is 'parent_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 files/folders') and enumerates the filterable dimensions, so the operation itself is unambiguous. However, it never distinguishes this tool from the close sibling 'workspace_list_all_files', leaving the agent to infer scope from the tool 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?

The description only describes optional filters; it gives no when-to-use guidance, no prerequisites, and no mention of the obvious alternative 'workspace_list_all_files'. An agent has no stated basis for choosing between the two listing tools.

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 TagsB
Read-only

List all tags in the organization. Supports pagination via page token.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo
limitNo

Output Schema

ParametersJSON 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 and destructiveHint=false, so the safety profile is covered without the description. The description adds that results are paginated, which is genuinely useful, but it says nothing about ordering, page size behavior, or org-vs-workspace scoping nuance.

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 purpose. No padding or repetition. It is terse to the point of under-specification, 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 annotations cover safety. What is missing is the meaning of the 'limit' parameter and a clearer mapping of 'page token' to the 'page' argument — small but real gaps for a two-parameter listing 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 both parameters, so the description carries the full burden. It gestures at pagination ('page token') but that phrasing does not match the actual parameter name 'page', and the 'limit' parameter with its default of 200 is never mentioned at all.

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: 'List all tags in the organization' states exactly what it returns and at what scope. It is distinguishable from workspace_create_tag and workspace_delete_tag by verb, 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?

There is no guidance on when to use this versus workspace_create_tag/workspace_delete_tag or the workbook-level tag tools, and no exclusions or prerequisites. The only contextual hint is the pagination note, which describes mechanics rather than selection criteria.

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 GrantsB
Read-only

List permission grants on a workspace. Supports pagination via page token.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo
limitNo
workspace_idYes

Output Schema

ParametersJSON 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 only that the operation is paginated via page token, which is useful but thin; it says nothing about grant types returned (user vs group), authorization requirements, or result 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?

Two efficient sentences with the core action front-loaded and pagination support noted. No wasted words, though the brevity contributes to the semantic gaps 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?

An output schema exists, so return values need not be described. Still, for a grant-listing tool with 0% schema description coverage, the definition omits required-parameter emphasis and any mention of what kinds of grants or principals are returned, leaving the agent with gaps before invoking.

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 must carry the burden, and it largely does not. It hints at a page-token parameter but omits that workspace_id is required and that limit defaults to 200, leaving two of three parameters semantically 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?

Clear verb+resource: 'List permission grants on a workspace.' This tells the agent exactly what is retrieved. However, it does not differentiate from close siblings such as workspace_grant_workspace_access or admin_list_grants, so an agent must infer the boundary.

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., admin_list_grants for org-wide grants, or workspace_grant_workspace_access to create grants). No prerequisites or prerequisites around workspace_id are stated.

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 WorkspacesB
Read-only

List all workspaces. Supports pagination via page token.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo
limitNo

Output Schema

ParametersJSON 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 externally. The description adds only that pagination is supported, which is modest extra context, and it does not describe ordering, result volume, or the page-token lifecycle.

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 compact sentences with the core purpose front-loaded and no filler. It is efficient, though the second sentence is too thin to be fully load-bearing.

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. However, for a paginated list tool with 0% parameter documentation, the description leaves the agent guessing about pagination mechanics and result limits, which is the minimum-viable level rather than 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 burden. It mentions "page token" (roughly the 'page' parameter) but does not explain the token format, whether it is opaque, or what the 'limit' parameter (default 200) does or its bounds. Only a vague hint at one of two 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?

"List all workspaces" gives a specific verb and resource, and among the siblings it is the only tool that enumerates workspaces (the others are get/create/delete workspace or list other resources like files, tags, grants). It is clear but does not explicitly distinguish itself from related listing tools such as workspace_get_workspace or the *list_all_* variants.

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 context, no prerequisites, and no alternatives (e.g. workspace_get_workspace for a single workspace). 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.

workspace_update_fileWorkspace Update FileC

Update file properties (name, parentId for moving).

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyYes
inode_idYes

Output Schema

ParametersJSON 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.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 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
  2. 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
  3. 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 172 tools

Disambiguation2/5

Heavy duplication: list_workbooks vs list_all_workbooks, list_reports vs list_all_reports, list_members vs list_all_members, list_teams vs list_all_teams, and list_tenants vs list_tenants_paginated create near-identical pairs. Grant tools are scattered across workbooks_, workspace_, datasets_, and admin_ prefixes with overlapping semantics, and update_user_attribute_for_teams vs set_user_attribute_for_teams vs delete_user_attribute_for_team are hard to tell apart.

Naming Consistency4/5

Names consistently use snake_case with a module prefix (workbooks_, datasets_, elements_, workspace_, admin_) plus verb_noun, which is predictable and readable. Minor deviations exist (e.g. workbooks_run_workbook_agent, admin_api_capabilities, arbitrary choice between workbooks_ and elements_ for workbook element tools).

Tool Count1/5

172 tools is an extreme mismatch for any server scope, far beyond the 3-15 sweet spot. The surface is bloated with pagination variants, redundant list tools, and granular admin operations that should be consolidated or split into separate servers.

Completeness4/5

Coverage is remarkably broad: workbooks, reports, templates, data models, connections, elements, workspaces, tags, deployments, tenants, teams, user attributes, IP allowlists, and webhooks. A few gaps are self-documented, e.g. the direct POST to assign user attributes for users is not exposed and must be worked around.

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,258 PyPI
    60
    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