Skip to main content
Glama
clidey

whodb-cli

Official
by clidey

WhoDB

MCP Toplist

A lightweight, self-hosted workspace for your databases

Release workflow Release version Release date Total downloads Docker size

Commits per month Last commit Contributors Closed issues Closed PRs

License GitHub stars Go TypeScript

Available on

Docker Windows macOS Snap CLI

Quick start · Documentation · Live demo · Community

WhoDB gives you one place to explore your databases, edit data, run queries, and understand how a schema fits together. It runs in the browser, is easy to self-host, and is available as a desktop app or terminal CLI too.

Use it when you want to inspect a local database, help a teammate explore unfamiliar data, or work without installing a heavyweight database client. AI features are optional: connect Ollama, OpenAI, Anthropic, LM Studio, or another OpenAI-compatible provider if you want to ask questions in plain English.

Related MCP server: supabase-mcp

Quick start

Run WhoDB with Docker:

docker run --rm -it -p 8080:8080 clidey/whodb

Then open http://localhost:8080 and enter your database connection details.

Want to look around first? Try the live demo or watch the video walkthrough.

What you can do

  • Browse and edit data in a spreadsheet-style grid with sorting, filtering, pagination, and inline editing.

  • Understand a schema visually with an interactive graph of tables and relationships.

  • Work through queries in a scratchpad with multiple cells, autocomplete, history, and results kept alongside each query.

  • Move data in and out with imports, exports, and mock-data generation for development and testing.

  • Ask questions in plain English using a local or hosted AI provider that you choose.

  • Work from your terminal through the WhoDB CLI and its MCP server.

Supported databases

WhoDB Community supports:

  • PostgreSQL, CockroachDB, YugabyteDB, and QuestDB

  • MySQL, MariaDB, and TiDB

  • SQLite and DuckDB

  • MongoDB and FerretDB

  • Redis, Valkey, and Dragonfly

  • Elasticsearch and OpenSearch

  • ClickHouse and Memcached

Support varies by database because not every system has the same concepts or capabilities. The connection screen shows the options available for each source.

Installation options

Docker with persistent sessions

The one-line Docker command is ideal for trying WhoDB. To keep encrypted login sessions when the container is replaced, first generate a key and save it somewhere secure:

openssl rand -hex 32

Then mount /data and reuse that key whenever you start the container:

docker run -it -p 8080:8080 \
  -v whodb-data:/data \
  -e WHODB_ENCRYPTION_KEY=your_saved_64_character_hex_key \
  clidey/whodb

Keep that key somewhere safe. Changing it invalidates existing sessions. If WhoDB is served through an HTTPS reverse proxy, also set WHODB_SECURE=true so browsers only send the session cookie over HTTPS.

See the documentation for Docker Compose, connection profiles, SSL, AI providers, and other configuration options.

Desktop

CLI and MCP server

The CLI includes an interactive terminal UI and an MCP server for AI tools:

# macOS and Linux
curl -fsSL https://raw.githubusercontent.com/clidey/whodb/main/cli/install/install.sh | bash

# or install with npm
npm install -g @clidey/whodb
whodb             # open the terminal UI
whodb mcp serve   # start the MCP server

See the CLI guide for connection examples and the full command reference.

AI providers

You can add a hosted AI provider directly from WhoDB—no backend configuration or restart is required. Open Chat, choose Add Provider from the provider menu, then select OpenAI, Anthropic, or Gemini and enter your API key. WhoDB will fetch the available models from that provider.

Ollama and LM Studio are available as local options in WhoDB Community. By default, the backend looks for Ollama at localhost:11434 and LM Studio at localhost:1234/v1, with local addresses adjusted automatically for Docker and WSL. Use WHODB_OLLAMA_HOST, WHODB_OLLAMA_PORT, or WHODB_LMSTUDIO_BASE_URL only when those defaults are not suitable for your setup.

Optional backend provider configuration

Environment variables let deployment administrators declare providers when the server starts. This is useful for preconfiguring OpenAI or Anthropic, changing provider endpoints, or adding an OpenAI-compatible service for everyone using that deployment:

  • WHODB_OPENAI_* for OpenAI

  • WHODB_ANTHROPIC_* for Anthropic

  • WHODB_OLLAMA_* for Ollama connection settings

  • WHODB_LMSTUDIO_* for LM Studio connection settings

  • WHODB_AI_GENERIC_<ID>_* for OpenAI-compatible providers

See the installation guide for the complete environment variable list and the AI provider guide for setup examples.

WhoDB Community and WhoDB Platform

This repository contains WhoDB Community, the Apache-2.0-licensed database workspace described above. It is free to self-host and is the best place to start if you want to explore and work with databases.

WhoDB Platform is the commercial, self-hosted edition for organizations that need shared projects, more data sources, SSO, fine-grained access controls, audit logs, pipelines, reporting, and internal apps. You can read the WhoDB overview or compare plans on the pricing page.

Development

WhoDB has a Go backend and a React/TypeScript frontend. For local development, run them in separate terminals.

Requirements:

  • Go

  • Node.js and pnpm

Start the backend:

cd core
go run ./cmd/whodb

Start the frontend:

cd frontend
pnpm install
pnpm start

The frontend opens at http://localhost:3000 and talks to the backend on port 8080. See the CE build and run guide for generation and build commands.

Contributing

Bug reports, feature ideas, documentation improvements, and code contributions are all welcome.

More screenshots

Query scratchpad

Add and edit records

Build filters visually

Export data

Support

WhoDB is licensed under the Apache License 2.0.

If WhoDB saves you time, consider giving the project a star.

Available Tools

156 tools
whodb_mcp_setupA
Destructive

Start here for self-contained WhoDB MCP guidance and setup, without skills or shell access. inspect returns settings/schema/choices; preview validates a patch without saving; apply saves only a token-bound, user-approved preview; verify checks active targets. Restart after changes. Never send credentials.

NameRequiredDescriptionDefault
patchNoCredential-free settings patch for preview only; discover schema with inspect
actionYesinspect, preview, apply, or verify; begin with inspect
approvedNoSet true only after the user approves the exact configuration preview
confirmation_tokenNoToken from the exact preview approved by the user; apply only

Output Schema

NameRequiredDescription

No output parameters

TDQS

A4.1/5.0
Behavior5/5

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

Beyond the annotations (destructiveHint=true, openWorldHint=true, idempotentHint=false), the description explains per-action behavior: inspect reads settings/schema/choices, preview validates without saving, apply persists only a token-bound user-approved preview, verify checks active targets. It also adds operational behavior (restart after changes) and a security constraint (never send credentials).

Agents need to know what a tool does to the world before 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 dense but efficiently front-loads the main purpose before detailing each action. Semicolon-separated action clauses are compact, though the single paragraph packs multiple concepts together rather than using clearer structure.

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

Completeness5/5

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

With an output schema present, return-value documentation is not needed, and the annotations cover the tool's safety profile. The description supplies the workflow, action semantics, approval/token requirements, restart need, and security constraint, making it complete 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 100%, and the schema already defines action, patch, approved, and confirmation_token in detail. The description reinforces the action flow and approval/token usage but adds little syntactic or semantic meaning beyond the schema, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 specifies a setup and guidance resource ('self-contained WhoDB MCP guidance and setup') and enumerates the four actions, giving a clear verb+resource. It does not explicitly differentiate itself from the many whodb_platform_* siblings by name, but the 'start here' framing and action breakdown make the purpose identifiable.

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

Usage Guidelines4/5

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

It provides clear workflow guidance: begin with inspect, preview before apply, apply only after user approval, restart after changes, and never send credentials. It does not name alternative tools or explicit exclusions beyond 'without skills or shell access', but the sequencing and guardrails substantially reduce misuse risk.

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

whodb_platform_actionA
Destructive

Run a hosted platform resource action through the selected project.

Supported actions include transform run/cancel_run, file upload/rename/move/promote_to_dataset/restore/purge, folder rename/move/restore/purge, function deploy/redeploy/execute/start_run/generate_test_input, function_run cancel, ontology add_records/execute_behavior/share/unshare/reembed/purge_data, dataset purge_data, project restore/purge, app restore/purge/generate/cancel_generation/file operations, object restore/purge/version restore, package installation and add_changelog/add_media/review, and organization administration including service accounts (create_service_account, create_service_account_key, revoke_service_account_key, delete_service_account) and teams. Read whodb://platform/schema for every action and its payload shape. Some actions create, move, deploy, or otherwise mutate hosted resources. Pass id and payload_json as required by the action. For file/upload, payload_json requires file_path and may include folderId. Default mode returns a confirmation token; do not call whodb_platform_confirm until the user approves the preview. Permission checks are enforced by the hosted platform. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idNoResource id for update, delete, or action operations
actionNoAction name for whodb_platform_action, for example deploy, run, rename, move, promote_to_dataset
payloadNoStructured mutation payload. Do not include projectId or the target id; the selected workspace and id are injected by the CLI.
resourceYesResource type, for example secret, ai_provider, ontology, dataset, transform, folder, file, function, source_object
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
payload_jsonNoLegacy JSON object payload. Prefer payload; projectId and id are filled from selected workspace/id when appropriate.
idempotency_keyNoStable caller-provided key. Repeating a successful write with the same key will not execute it again.

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, readOnlyHint=false, idempotentHint=false, and openWorldHint=true, so the safety profile is covered. The description adds genuinely new behavioral context: the preview/confirmation-token gate, the requirement to obtain user approval before confirming, the warning that some actions mutate hosted resources, and platform-enforced permission checks. It does not describe the shape of the returned confirmation token or action result.

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

Conciseness4/5

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

The purpose is front-loaded and each subsequent sentence carries operative information: supported actions, the schema resource to consult, the confirm gate, and workspace targeting. The dense action enumeration is long, but for a catch-all dispatcher it materially helps an agent decide whether the action exists here rather than being pure 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 seven-parameter dispatch tool with no output schema, the description covers the essentials: what actions exist, where to find payload shapes, the id/payload calling convention, the two-step confirm workflow, permission enforcement, and per-call workspace targeting. The main gap is the absence of return-value or continuation detail (e.g., how the confirmation token is used), though the sibling whodb_platform_confirm partly compensates.

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

Parameters3/5

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

Schema description coverage is 100%, so all seven parameters are already documented, making 3 the baseline. The description adds one concrete detail beyond the schema (for file/upload, payload_json requires file_path and may include folderId), but it also tells callers to 'Pass id and payload_json' while the schema marks payload_json as legacy and says to prefer payload — a mild inconsistency that offsets the added 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 opens with a clear verb+resource ('Run a hosted platform resource action through the selected project') and then enumerates concrete action names across resource types, so an agent can confirm whether an action is routed through this tool. It stops short of differentiating from dedicated siblings like whodb_platform_create, whodb_platform_delete, whodb_platform_update, or whodb_platform_restore, which cover overlapping operations.

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

Usage Guidelines4/5

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

It gives real workflow sequencing: read whodb://platform/schema for payload shapes, default mode returns a confirmation token, and whodb_platform_confirm must not be called until the user approves the preview. It also notes that permission checks are enforced server-side. What is missing is any explicit statement of when to prefer the dedicated create/delete/update/restore tools over this generic dispatcher.

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

whodb_platform_active_versionA
Read-onlyIdempotent

Read the active production version for one versioned object. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idYesObject id
fieldsNoOptional top-level output fields
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
object_typeYesVersionable object type: app, function, transform, dataset, or ontology

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds a useful behavioral detail — the workspace override is scoped to this call and leaves defaults untouched. It does not disclose what is returned when no active version exists or any access 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?

Two compact sentences, front-loaded with the core action and followed by the targeting caveat. No filler and nothing that could be trimmed 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?

For a read-only tool with full schema coverage and no output schema, the description covers the action and scoping adequately. It leaves open what the returned version payload looks like and how a missing active version is surfaced, which an agent would benefit from knowing.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents id, fields, object_type, and the nested workspace object. The description's mention of workspace targeting without changing defaults is already present in the schema's own text, so it adds little beyond the structured fields. Baseline 3 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 (read) and resource (active production version of one versioned object), which is enough to distinguish it from listing siblings like whodb_platform_object_versions. However, the description never references those siblings by name, so the differentiation is implicit 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?

It explains the per-call workspace targeting mechanic (host/org/project without changing defaults), which is partial usage context. It gives no when-to-use vs alternatives guidance, e.g. versus whodb_platform_object_versions or whodb_platform_project_active_versions, and no prerequisites or failure conditions.

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

whodb_platform_add_ontology_recordA
Destructive

Add one row to a hosted ontology backing table.

Values are keyed by ontology property. Default mode returns a confirmation token; do not call whodb_platform_confirm until the user approves the preview. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
valuesYesRecord values keyed by ontology property
entity_idYesOntology id
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
update_columnsNoOntology properties to update; required for update

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, idempotentHint=false and readOnlyHint=false, so the safety profile is covered. The description adds non-obvious behavior beyond that: the two-step preview/confirmation-token flow and the rule that confirm is gated on user approval, which is real 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 core action before the confirmation workflow and workspace targeting. No filler, though the workspace sentence overlaps material the schema already states.

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 mutating tool with full annotation coverage and 100% schema description coverage, the description fills the key gaps: the preview/confirm gate and default-vs-per-call targeting. The unmentioned update_columns parameter is adequately explained by the schema, so nothing critical 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 100%, including the workspace sub-object and its default-semantics notes, so the schema already carries parameter meaning. The description's restatement that values are keyed by property and that workspace targets per-call without changing defaults mostly echoes structured data, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 one row to a hosted ontology backing table.' Clear enough for an agent to identify the operation, but it does not explicitly differentiate from the sibling whodb_platform_add_ontology_records (bulk-add), leaving that distinction to 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 Guidelines4/5

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

Gives concrete workflow guidance: default mode returns a confirmation token and confirm must not be called until the user approves the preview, plus the condition for per-call workspace targeting. It does not name the singular-vs-bulk alternative explicitly, so a routing 5 is not warranted.

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

whodb_platform_add_ontology_recordsA
Destructive

Add many rows to a hosted ontology in one call.

rows are plain objects keyed by ontology property. Pass idempotency_key so a retried call never inserts duplicates. Default mode returns a confirmation token; do not call whodb_platform_confirm until the user approves the preview. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
rowsYesRows as objects keyed by ontology property
entity_idYesOntology id
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
idempotency_keyNoClient-chosen key so a retried call does not insert the rows twice

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, openWorldHint=true and idempotentHint=false, so the safety profile is covered. The description adds real value beyond that: the default preview/confirmation-token flow with the confirm gate, the retry-safety semantics of idempotency_key, and the fact that workspace targeting does not mutate session defaults.

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

Conciseness4/5

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

Four short sentences with the core action front-loaded and no filler. Dense but each sentence carries a distinct instruction (shape of rows, idempotency, confirm gate, workspace override).

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

Completeness4/5

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

No output schema exists, and the description compensates by explaining that the default mode returns a confirmation token, plus the idempotency and targeting behavior. Covers what an agent needs to call it correctly, though it omits any hint on batch-size limits or partial-failure 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 description coverage is 100%, so the baseline is 3. The description largely restates the schema ('rows are plain objects keyed by ontology property', idempotency_key avoids double inserts) and only adds the minor nuance that workspace is per-call without changing defaults, which the schema already states.

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 ('Add many rows to a hosted ontology') and scopes it with 'in one call', which cleanly separates it from the singular sibling whodb_platform_add_ontology_record. An agent can tell which tool to reach for without opening either 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 conditional guidance on when to pass idempotency_key and gates the follow-up call ('do not call whodb_platform_confirm until the user approves the preview'). It implies bulk use via 'many rows ... in one call' but never explicitly names the single-row sibling as the alternative, so selection guidance is contextual rather than explicit.

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

whodb_platform_ai_provider_modelsA
Read-onlyIdempotent

List model names available from one hosted AI provider. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields to include
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
provider_idYesHosted AI provider id

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety/read profile is covered. The description adds that per-call workspace targeting does not mutate defaults, which is genuine behavioral context, though it partly duplicates the schema note on host. Nothing is said about pagination, result limits, or auth requirements, so a 3 is fair.

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

Conciseness5/5

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

Two compact sentences with zero filler: the read purpose is front-loaded, followed immediately by the per-call targeting behavior. Every clause carries information.

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

Completeness4/5

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

For a simple read-only listing tool with full schema coverage and annotations that encode the safety profile, the description covers purpose and workspace targeting adequately. It could be slightly more complete by indicating what a model name/value looks like or that a provider_id must be obtained first, but no output schema exists and none is strictly needed.

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

Parameters3/5

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

Schema description coverage is 100%, and the nested workspace object (host/org/project) is fully documented in the schema itself, including the note that host does not change the default. The description adds no syntax or constraint detail beyond the schema, so the baseline 3 applies. It does not clarify provider_id accepted 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?

States a specific verb+resource ('List model names') scoped to 'one hosted AI provider', which is enough to separate it from the sibling whodb_platform_ai_providers. It stops short of explicitly naming that sibling as the provider-listing alternative, so it is clear but not sibling-differentiating.

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

Usage Guidelines3/5

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

The sentence 'Accepts workspace {host, org, project} for per-call targeting without changing defaults' describes parameter behavior rather than when to pick this tool. Usage is only implied: an agent infers it should first resolve a provider_id (likely via whodb_platform_ai_providers) and then list models. No exclusions or alternatives are given.

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

whodb_platform_ai_providersA
Read-onlyIdempotent

List hosted AI provider metadata in the selected project. Use name and type filters when known.

This tool never returns provider API keys. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
nameNoOptional case-insensitive name substring filter for list tools
typeNoOptional type filter, for example provider type, transform trigger mode, or function language
limitNoMaximum list items to return; use offset to continue
fieldsNoTop-level output fields to include. Prefer only fields needed now; call again with more fields if needed.
offsetNoNumber of matching list items to skip
searchNoOptional case-insensitive search term; currently aliases name for list tools
statusNoOptional status filter for resources that expose status
deployedNoOptional function deployment filter: true or false
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
schema_modeNoOptional dataset schema mode filter

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already establish readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description nonetheless adds two genuinely useful behavioral facts beyond them: the guarantee that provider API keys are never returned (a security/return-shape boundary worth stating), and that passing workspace targets only that call without mutating session defaults. It stops short of describing result shape or pagination 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?

Three short sentences, no filler, and the core action is front-loaded before the filter hint and the caveats. Each sentence carries a distinct load: purpose, filter guidance, secret-exclusion plus targeting semantics.

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 10 optional parameters, a nested workspace object and no output schema, the description covers the two things an agent could get wrong: it will not leak API keys, and workspace overrides are per-call only. It omits pagination/fields behavior, which matters for a list tool with limit/offset, but the core call-time contract is present.

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

Parameters3/5

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

Schema description coverage is 100%, so every one of the 10 parameters is already documented in the schema and the baseline is 3. The description echoes the name/type filters and the workspace targeting but adds no syntax, format, or defaulting detail the schema does not already contain.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 hosted AI provider metadata in the selected project." An agent knows exactly what it gets back in kind (provider metadata, not models or keys). It does not, however, differentiate itself from the adjacent sibling whodb_platform_ai_provider_models, which is the one tool an agent is most likely to 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 Guidelines3/5

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

"Use name and type filters when known" is the only usage steering, and it addresses filter usage rather than tool selection. There is no stated condition for choosing this over whodb_platform_ai_provider_models, nor any exclusion or prerequisite. Usage is implied by the purpose statement but never made explicit.

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

whodb_platform_appB
Read-onlyIdempotent

Inspect one hosted app, including its generated definition. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idNoApp id for detail, files, or version view
envNoOptional app environment for the current view
fieldsNoOptional top-level output fields
versionNoApp version for a version view
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds that workspace targeting is per-call and leaves session defaults untouched, which is meaningful behavioral context, but it says nothing about what the 'generated definition' contains or how the detail/files/version views differ.

Agents need to know what a tool does to the world before 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 zero filler, and the core purpose is front-loaded before the workspace note. The second sentence is arguably the weaker half since it duplicates schema content, but nothing is padded.

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 zero-required-parameter, read-only inspection tool with no output schema, the description covers the main case adequately and correctly points at the workspace/session-default resolution chain. It leaves gaps around the multiple view modes hinted at in the id parameter ('detail, files, or version view') and the optional 'fields' output projection, which the description never mentions.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3; every parameter including the nested workspace object is documented in the schema itself. The description's workspace sentence largely restates the schema's own workspace description ('Optional target for this call only. Omit to use the session default...'), adding no syntax or format detail beyond 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?

States a specific verb and resource: 'Inspect one hosted app, including its generated definition.' This clearly separates it from the plural listing sibling whodb_platform_apps. It does not distinguish it from near-neighbors like whodb_platform_app_view, whodb_platform_app_version_view, or whodb_platform_app_files, which the schema's 'detail, files, or version view' phrasing suggests overlap with.

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 second sentence explains per-call workspace targeting, which is parameter guidance rather than tool-selection guidance. No when-to-use or when-not-to-use conditions are given, and no sibling (e.g. apps for listing, app_version_view for version history) is named as an alternative, so usage is only implied by the verb 'Inspect one'.

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

whodb_platform_app_componentA
Read-onlyIdempotent

Look up exact usage for one app component category returned by whodb_platform_app_components. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
nameNoExact component or SDK category; required for lookup tools
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds one useful behavioral note — the workspace argument applies per call 'without changing defaults' — which clarifies it does not mutate session state the way whodb_platform_session_use does. No detail on missing-name behavior or whether the lookup is case-sensitive.

Agents need to know what a tool does to the world before 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 purpose leads and the scoping caveat follows. The second sentence largely duplicates what the workspace schema description already states, which is the only small inefficiency.

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

Completeness4/5

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

For a simple read-only lookup with full schema coverage, full annotations, and no output schema, the essentials are present — what it retrieves, the required category source, and how to target a workspace. The one remaining gap is that 'exact usage' is never unpacked, so the agent cannot anticipate the returned 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 100% and the nested workspace object is already fully documented, including that it is per-call only and how to discover targets. The description restates {host, org, project} and the no-default-change rule, which the schema already conveys, so it adds little beyond the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ('look up') and resource ('exact usage for one app component category'), and explicitly ties it to the plural sibling whodb_platform_app_components, so an agent can distinguish list-vs-detail without opening a schema. The phrase 'exact usage' remains a bit abstract about what is actually returned, keeping it below a 5.

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

Usage Guidelines3/5

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

Referencing the sibling as the source of the category implies a list-then-detail workflow, which is genuine implicit guidance. However, there is no explicit statement of when to prefer this over whodb_platform_app_sdk, whodb_platform_app_sdks, or the singular whodb_platform_app, and no note on what to do if the name is unknown.

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

whodb_platform_app_componentsA
Read-onlyIdempotent

List exact app component documentation categories from the hosted builder. Call before using unfamiliar component types. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
nameNoExact component or SDK category; required for lookup tools
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

A3.6/5.0
Behavior3/5

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

Annotations declare readOnlyHint=true, idempotentHint=true, and openWorldHint=true, covering the safety and idempotency profile. The description adds that workspace targeting is per-call without changing defaults, which is useful behavioral context beyond annotations, but doesn't describe output structure, pagination, 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?

Three concise sentences, front-loaded with purpose, followed by usage guidance and a parameter note. No waste, well-structured.

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

Completeness4/5

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

Covers purpose, a usage trigger, and per-call workspace behavior. For a read-only list tool with rich annotations and full schema coverage, this is nearly complete. Missing minor details like output shape (no output schema, but list tools typically return arrays) or 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 description coverage is 100%, so the schema fully documents both parameters including the nested workspace object. The description's note about workspace being per-call targeting without changing defaults adds slightly beyond the schema but is largely redundant. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 exact app component documentation categories from the hosted builder.' This is distinguishable from siblings like whodb_platform_app_component (singular) and whodb_platform_app_components. However, it doesn't explicitly contrast with those siblings, keeping it from a 5.

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

Usage Guidelines3/5

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

Provides one conditional guideline: 'Call before using unfamiliar component types.' This implies usage context but gives no explicit when-not-to-use, no mention of singular sibling tool whodb_platform_app_component as an alternative, and no prerequisites.

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

whodb_platform_app_filesA
Read-onlyIdempotent

List the draft files of one hosted app: app.json, shared files, and every page, read one page per request so large apps fit. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idNoApp id for detail, files, or version view
envNoOptional app environment for the current view
fieldsNoOptional top-level output fields
versionNoApp version for a version view
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds real behavioral context beyond them: results are paginated one page per request, and the workspace argument applies per-call "without changing defaults" (i.e. non-mutating session state).

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

Conciseness4/5

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

Two sentences, front-loaded with purpose followed by the pagination and workspace caveats. No filler sentences, though the workspace sentence is slightly tangential to the core listing behavior.

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

Completeness4/5

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

For a read-only listing tool with no output schema, the description supplies the useful essentials: what gets returned (app.json, shared files, pages) and how results are chunked. It stops short of describing ordering or how to know the full page set is exhausted, but nothing critical for a correct call 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 100%, so every parameter (id, env, fields, version, workspace.*) is already documented, establishing the baseline of 3. The description adds only a light nuance about workspace being per-call and non-persistent, which the schema largely already conveys.

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

Purpose4/5

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

States a specific verb ("List") and resource ("draft files of one hosted app") and enumerates the contents: app.json, shared files, and every page. This distinguishes it from generic file listing tools, but it never names the closest sibling, whodb_platform_app_page_files, or contrasts with app_version_view, leaving the agent to 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 Guidelines3/5

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

The phrase "read one page per request so large apps fit" implies a paginated usage pattern for large apps, which is useful context. However there is no explicit when-to-use/when-not guidance and no named alternative for the related but distinct app_page_files or version-view tools.

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

whodb_platform_app_logic_graphB
Read-onlyIdempotent

Map a hosted draft's page events, scripts, bindings, state, navigation, overlays, and function contract issues using the in-app builder audit. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idYesApp id in the selected project
pageNoOptional page name; omit to map every page
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

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, idempotentHint=true, and openWorldHint=true, so the safety profile is covered. The description adds that this operates on a 'hosted draft' via an 'in-app builder audit', which usefully implies a non-mutating inspection of draft content. It adds no depth on cost, latency, or limits, so a 3 is right given annotation coverage.

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

Conciseness4/5

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

Two sentences, front-loaded with the capability and followed by the workspace note. The enumerated output areas are dense but earn their place as scope definition. Minor redundancy with the schema's workspace wording 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?

With no output schema, the description usefully enumerates what the map surfaces (events, scripts, bindings, state, navigation, overlays, function contract issues), giving the agent a sense of the return scope. Combined with annotations covering read-only safety and schema covering all params, the definition is adequately complete, though selection guidance versus siblings 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 100%, so id, page, and workspace are fully documented in the schema, including that workspace is per-call only. The description repeats the workspace targeting idea ('for per-call targeting without changing defaults'), which the schema already states. No syntax or format detail is added, so the baseline 3 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 ('Map') and a concrete resource set (a hosted draft's page events, scripts, bindings, state, navigation, overlays, and function contract issues) via the in-app builder audit. This is far more specific than a tautology, and the niche 'logic graph' concept is legible from the enumerated dimensions. It does not differentiate from the many neighboring app/graph tools (app_view, resource_graph), keeping it out of 5 territory.

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 named alternative among the dense sibling set (e.g. whodb_platform_app_view, whodb_platform_workspace_map, whodb_platform_resource_graph). The only usage-adjacent sentence concerns workspace targeting, not tool selection. An agent must infer context from the description alone.

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

whodb_platform_app_page_filesB
Read-onlyIdempotent

Read the generated files for one page of a hosted app. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idYesApp id
envNoOptional app environment
pageYesPage name from whodb_platform_app_views
fieldsNoOptional top-level output fields to include
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

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, idempotentHint=true, and openWorldHint=true, so safety is covered. The description adds one useful behavioral note — workspace targeting is per-call and does not change session defaults — but says nothing about the volume, format, or content of the returned files.

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

Conciseness4/5

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

Two sentences, front-loaded with the purpose and followed by the workspace behavior. 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?

There is no output schema, so the description should ideally describe what 'generated files' actually returns (paths? contents? a manifest?), but it leaves that to inference. It is adequate for a read tool whose annotations cover safety, but not fully complete for the agent.

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

Parameters3/5

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

Schema coverage is 100%, so the schema documents all five parameters including the nested workspace object. The description adds a semantic nuance ('without changing defaults') about how the workspace param behaves, but this is a baseline addition on top of already-complete schema docs.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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: 'Read the generated files for one page of a hosted app.' The 'for one page' scoping differentiates it from the broader whodb_platform_app_files sibling, though it doesn't name that sibling explicitly. An agent can distinguish the granularity without opening either 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?

No when-to-use guidance or conditions for choosing this over whodb_platform_app_files, whodb_platform_app_views, or the various app view tools. The only routing hint ('Page name from whodb_platform_app_views') lives in the parameter schema, not the description.

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

whodb_platform_appsB
Read-onlyIdempotent

List hosted ontology-powered apps in the selected project. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
nameNoOptional case-insensitive name substring filter for list tools
typeNoOptional type filter, for example provider type, transform trigger mode, or function language
limitNoMaximum list items to return; use offset to continue
fieldsNoTop-level output fields to include. Prefer only fields needed now; call again with more fields if needed.
offsetNoNumber of matching list items to skip
searchNoOptional case-insensitive search term; currently aliases name for list tools
statusNoOptional status filter for resources that expose status
deployedNoOptional function deployment filter: true or false
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
schema_modeNoOptional dataset schema mode filter

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, idempotentHint=true, and openWorldHint=true, so safety and repeatability are covered. The description adds useful scope context by noting per-call workspace targeting without changing defaults, but it does not discuss pagination behavior or result characteristics beyond what the schema implies.

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

Conciseness5/5

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

Two compact sentences, front-loaded with the core action and followed by the key targeting caveat. There is no wasted text.

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

Completeness4/5

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

For a read-only list tool with fully described parameters and no output schema, the description provides enough context to call it correctly, including the project scope and per-call workspace behavior. It could still mention pagination/filtering behavior or return-shape expectations more explicitly.

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

Parameters3/5

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

Schema description coverage is 100%, so all parameters, including nested workspace fields, are already documented in the schema. The description briefly mentions the workspace shape and per-call behavior, but adds little semantics beyond the structured parameter descriptions, so baseline 3 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?

The description states a specific verb and resource ("List hosted ontology-powered apps") and scopes it to the selected project. It is clear enough to distinguish this as a list operation, but it does not explicitly differentiate from nearby app-related siblings such as whodb_platform_app or whodb_platform_app_views.

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

Usage Guidelines2/5

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

It explains that workspace targeting is per-call and does not change defaults, but it gives no guidance on when to use this tool versus alternatives. There are no exclusions or decision rules for choosing between this and sibling app-listing/view tools.

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

whodb_platform_app_screenshotA
Read-onlyIdempotent

Capture a rendered app page at desktop, mobile, or tablet size after optional actions or JavaScript. Returns a WebP image, visible text, diagnostics, and an optional interaction trace on compatible runtimes. Hosted writes are blocked. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
appYesApp ID or exact name in the selected project
envNopublished (default) or dev
tabNoOptional visible tab or button label to open before capture
pageNoOptional page returned by whodb_platform_app_views
traceNoRequest an interaction trace from a compatible hosted app runtime
widthNoViewport width, default 1440
heightNoViewport height, default 900
mobileNoEmulate a touch-enabled mobile browser; default viewport 390x844 unless width or height is set
scriptNoOptional JavaScript expression or IIFE evaluated inside the app frame after actions
tabletNoEmulate a touch-enabled tablet browser; default viewport 820x1180 unless width or height is set
actionsNoOrdered actions inside the app frame: click, fill, press, wait_for, or wait
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
orientationNoOptional viewport orientation: portrait or landscape; rotates the device preset

Output Schema

NameRequiredDescription
appNo
envNo
tabNo
pageNo
errorNo
scopeNo
traceNo
widthNo
app_idNo
heightNo
mobileNo
tabletNo
recoveryNo
mime_typeNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
request_idNo
diagnosticsYes
orientationNo
visible_textNo
checks_passedYes
suggested_toolsNo
script_result_jsonNo

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/openWorld, and the description adds real behavioral context: it discloses the returned artifacts (WebP, text, diagnostics, optional trace), the runtime compatibility caveat for traces, and that hosted writes are blocked. It stops short of explaining failure modes or pagination/diagnostics semantics, so not a full 5.

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

Conciseness4/5

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

Front-loaded with the core purpose, then returns and targeting constraints in compact sentences. Dense but each clause carries information; only slight redundancy with the annotation title text.

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

Completeness4/5

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

With 13 params, nested workspace, an output schema, and full annotations, the description covers the essentials an agent needs (device presets, actions/script, targeting, blocked writes). Missing only explicit guidance on when a trace is available or how diagnostics should be interpreted.

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

Parameters3/5

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

Schema coverage is 100%, so both the flat fields and the nested workspace object are already documented. The description reiterates workspace targeting and defaults but adds little syntactic detail beyond the schema, which is the expected baseline when the schema does the heavy lifting.

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 (capture) plus resource (rendered app page) and the distinguishing capabilities (device sizes, post-actions/JS, returned artifacts). An agent can tell this apart from read-only siblings like whodb_platform_app_views or whodb_platform_app_view, which merely list or fetch views.

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 context (rendering a page with optional actions before capture) and the workspace field points to discovery tools, but it never explicitly says when to use this versus app_view/app_views, nor any prerequisite or exclusion conditions. 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.

whodb_platform_app_sdkA
Read-onlyIdempotent

Look up exact app SDK usage for one category returned by whodb_platform_app_sdks. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
nameNoExact component or SDK category; required for lookup tools
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, covering the safety profile, and the title duplicates the description verbatim. The description's one addition — that workspace targeting applies 'without changing defaults' — is genuinely useful session-state context, but it is also stated in the schema for the workspace object, so it adds little beyond what structured data already provides. No behavior around missing categories, auth requirements, or result shape 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?

Two tight sentences with zero filler; the core purpose is front-loaded and the secondary workspace-targeting note follows. The inline {host, org, project} shorthand is compact rather than 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 zero-required-parameter, read-only lookup with no output schema, the description covers the workflow origin of the input and how to target a workspace without side effects, which is close to enough. It stops short of describing what the returned 'usage' contains or what happens when the category name doesn't resolve, which is the only meaningful remaining gap.

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

Parameters3/5

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

Schema description coverage is 100% and the nested workspace object documents host/org/project plus the resolution order (session default set by whodb_platform_session_use, then saved defaults), so the schema carries the burden. The description's restatement of the workspace shape and 'without changing defaults' is a useful summary but adds no syntax or format detail beyond the schema, so baseline 3 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 ('look up') and resource ('app SDK usage') scoped to a single category, and explicitly ties itself to the sibling 'whodb_platform_app_sdks' as the source of valid categories, which cleanly separates the singular detail tool from the plural list tool. Slight deduction because 'SDK usage' is ambiguous — it could mean usage documentation, usage examples, or usage statistics — so the agent still doesn't know exactly what payload to expect.

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

Usage Guidelines4/5

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

The description establishes a clear two-step workflow: enumerate categories with whodb_platform_app_sdks, then look up exact usage for one of them here. It gives no explicit when-not-to-use or named alternative beyond the list tool, but for a narrow detail-lookup tool the context is sufficient to route correctly.

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

whodb_platform_app_sdksA
Read-onlyIdempotent

List exact app SDK documentation categories from the hosted builder. Call before writing data or function integration code. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
nameNoExact component or SDK category; required for lookup tools
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint. The description adds genuinely new behavior beyond those: the data comes from a "hosted builder" and workspace targeting is per-call only, "without changing defaults" — a useful scoping detail an agent would otherwise have to guess.

Agents need to know what a tool does to the world before 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 purpose, followed by the when-to-use and the scoping note. No filler, though the workspace targeting sentence could be slightly tighter.

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 read-only list tool with annotations covering safety and no output schema to explain, so the description carries sufficient weight. It could say more about result content or what happens when the optional `name` filter is absent, but nothing critical is missing 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 coverage is 100%, so both parameters are already documented in the schema. The description restates the workspace shape without adding new semantics (e.g. what a valid SDK category name looks like, or behavior when `name` is omitted despite it not being schema-required). Baseline 3 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 exact app SDK documentation categories from the hosted builder." Clear what it returns, though it never explicitly distinguishes itself from the singular sibling whodb_platform_app_sdk, leaving the list-vs-lookup distinction 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 Guidelines4/5

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

"Call before writing data or function integration code" gives a clear trigger condition, which is more than most list tools offer. It stops short of naming the alternative tool (app_sdk) or saying when NOT to call it, so it isn't full when/when-not guidance.

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

whodb_platform_app_version_viewB
Read-onlyIdempotent

Read a promoted hosted app version. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idNoApp id for detail, files, or version view
envNoOptional app environment for the current view
fieldsNoOptional top-level output fields
versionNoApp version for a version view
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds the per-call targeting nuance: workspace does not change session defaults. Useful, but no info on pagination, return shape, or what 'promoted' vs draft means.

Agents need to know what a tool does to the world before 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, front-loaded with the action and scoping constraint. No waste, though very short for a five-parameter, nested-object 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?

Given 5 params, nested workspace object, and no output schema, the description is thin. It resolves the workspace targeting question but leaves the core 'which version/id/env combination' and sibling differentiation to the schema, which is adequate but not strong.

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

Parameters3/5

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

Schema description coverage is 100%, so baseline 3 applies. The description confirms the workspace object is per-call only and that it overrides session defaults set by whodb_platform_session_use, which is additive context, but it does not explain id vs version vs env semantics 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+resource: reading a promoted hosted app version. Clear enough on its own, but 'promoted' and its distinction from siblings like whodb_platform_app_views, whodb_platform_app_view, and whodb_platform_active_version is not explained, so an agent must guess which app-view 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, when-not-to-use, or alternative naming. The crowded sibling set (app_view, app_views, app_files, app_components, object_versions, active_version) means an agent gets no routing signal. The only guidance is implicit in the workspace text about defaults.

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

whodb_platform_app_viewC
Read-onlyIdempotent

Read the current hosted app view and generated files. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idNoApp id for detail, files, or version view
envNoOptional app environment for the current view
fieldsNoOptional top-level output fields
versionNoApp version for a version view
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

C2.6/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, and the description adds nothing beyond them: its first sentence is a verbatim restatement of the annotation title, and its second repeats the workspace semantics already in the schema. No mention of result shape, pagination, or what "generated files" means in practice.

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

Conciseness4/5

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

Two short sentences, no filler words, and the read scope is front-loaded before the targeting note. It is efficient, though the second sentence is low-value duplication rather than earned content.

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?

No output schema exists and no annotations explain return behavior, so the description must clarify what a "view" yields (rendered output, metadata, file list?) and how id/env/version select among them. Given the dense app_* sibling cluster and a nested workspace object, the definition leaves the agent guessing.

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

Parameters3/5

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

Schema description coverage is 100% across all five parameters (id, env, fields, version, workspace and its nested host/org/project), so the schema carries the full burden. The description's only parameter sentence restates the workspace object, adding no syntax or precedence detail beyond what the schema already documents, so baseline 3 applies.

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 ("Read") and an object ("current hosted app view and generated files"), so it is not a tautology. However, "view" is left undefined even though the sibling list contains whodb_platform_app, whodb_platform_app_views, whodb_platform_app_version_view, whodb_platform_app_files and whodb_platform_app_screenshot; an agent cannot tell which of these returns what.

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 tool versus the many app-related siblings, nor any precondition such as needing an app id or a session host. The only guidance present (per-call workspace targeting) duplicates the input schema rather than adding selection logic.

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

whodb_platform_app_viewsA
Read-onlyIdempotent

List pages in a hosted app by ID or exact name. Use a returned page with whodb_platform_app_screenshot. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
appYesApp ID or exact name in the selected project
envNopublished (default) or dev
tabNoOptional visible tab or button label to open before capture
pageNoOptional page returned by whodb_platform_app_views
traceNoRequest an interaction trace from a compatible hosted app runtime
widthNoViewport width, default 1440
heightNoViewport height, default 900
mobileNoEmulate a touch-enabled mobile browser; default viewport 390x844 unless width or height is set
scriptNoOptional JavaScript expression or IIFE evaluated inside the app frame after actions
tabletNoEmulate a touch-enabled tablet browser; default viewport 820x1180 unless width or height is set
actionsNoOrdered actions inside the app frame: click, fill, press, wait_for, or wait
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
orientationNoOptional viewport orientation: portrait or landscape; rotates the device preset

Output Schema

NameRequiredDescription
appNo
envNo
errorNo
scopeNo
viewsNo
app_idNo
recoveryNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
request_idNo
suggested_toolsNo

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, and openWorld behavior. The description adds that workspace targeting is per-call and does not change defaults, which is useful, but it does not explain the many capture/interaction parameters visible in the schema.

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

Conciseness5/5

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

Three concise sentences with no filler. The core listing purpose is front-loaded, followed by the next-step tool reference and the workspace targeting detail.

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

Completeness3/5

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

The output schema, annotations, and full schema descriptions cover much of the burden. However, the description is very short relative to a 13-parameter schema that includes action, script, trace, viewport, and device-emulation options, leaving some ambiguity about whether this tool only lists pages or also captures/interacts with app views.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all parameters. The description only restates the app identifier and workspace object concepts, adding little beyond what the schema provides.

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

Purpose4/5

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

States a specific verb and resource: list pages in a hosted app by ID or exact name. It distinguishes itself from whodb_platform_app_screenshot by directing the agent to pass a returned page there, though it does not explicitly differentiate itself from the singular whodb_platform_app_view or whodb_platform_apps.

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 clear next-step context: use a returned page with whodb_platform_app_screenshot. It also explains per-call workspace targeting without changing defaults. It stops short of explicit when-not-to-use guidance or naming all relevant alternatives.

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

whodb_platform_build_planA
Read-onlyIdempotent

Return an end-to-end hosted platform build plan for a user goal.

Use this before coordinating a cross-resource workflow. It plans scope, ingest, persist, model, automate, runtime support, and governance phases using existing WhoDB platform terminology. It is read-only and never creates confirmation tokens. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
goalYesUser goal or desired app/data workflow to plan against.
fieldsNoTop-level output fields to include, for example phases, prerequisites, warnings.
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
omit_filesNoOmit root folder file and folder summaries. Defaults to false.
omit_lineageNoOmit project lineage summary. Defaults to false.

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already carry readOnlyHint=true, idempotentHint=true and openWorldHint=true, so the safety profile is largely covered. The description adds genuinely new behavioral context by stating it 'never creates confirmation tokens,' which tells the agent this planning tool will not hand off to the confirm/pending flow that other mutating siblings use.

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

Conciseness4/5

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

Four sentences, front-loaded with the primary purpose before the usage trigger and behavioral notes. Minimal waste, though 'It is read-only' partially duplicates the readOnlyHint annotation.

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

Completeness4/5

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

For a read-only planning tool with no output schema, the description is nearly complete: it explains scope, when to call it, its safety profile, and the phases planned. It could say more about the shape of the returned plan, but the enumerated phases largely cover what an agent needs.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents goal, fields, workspace, omit_files and omit_lineage. The description only restates the workspace targeting behavior ('for per-call targeting without changing defaults') that the schema already explains, and adds nothing about the fields/omit_* parameters; baseline 3 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: 'Return an end-to-end hosted platform build plan for a user goal,' and enumerates the phases (scope, ingest, persist, model, automate, runtime support, governance) it covers. It reads as clearly distinct from a bundle-import or workflow plan, though it never explicitly contrasts itself against the plan-like siblings such as whodb_platform_write_plan or whodb_platform_workflow_plan.

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 before coordinating a cross-resource workflow' gives a concrete when-to-use trigger. No exclusions or named alternatives are provided, so the agent must infer the boundary against the other planning tools, but the positioning statement is clear.

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

whodb_platform_bundle_diffA
Read-onlyIdempotent

Compare a project bundle against the selected hosted project.

Pass bundle_json from whodb_platform_bundle_export or the CLI resources export command. This is read-only and returns create/skip actions. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
prefixNoOptional prefix added to imported resource names
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
bundle_jsonYesProject bundle JSON from whodb_platform_bundle_export or resources export
rename_conflictsNoCreate unique names for resources that conflict with existing resources
overwrite_conflictsNoUpdate resources that conflict with existing resources

Output Schema

NameRequiredDescription
planNo
errorNo
scopeNo
countsNo
commandsNo
recoveryNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
setup_statusNo
suggested_toolsNo

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint. The description adds useful behavior beyond those annotations: it returns create/skip actions and per-call workspace targeting does not change defaults.

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 definition is three short sentences with the main comparison purpose front-loaded, followed by the input source and workspace targeting behavior. Every sentence adds useful information.

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

Completeness5/5

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

With a full schema, output schema, and rich annotations, the description provides enough context for correct invocation. It covers the input source, read-only diff behavior, return action shape, and workspace scoping without duplicating schema details.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3. The description adds value by naming bundle_json as coming from bundle_export or the CLI resources export command and by clarifying that workspace targeting is per-call without changing defaults.

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

Purpose5/5

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

The description uses a specific verb and resource: "Compare a project bundle against the selected hosted project." It also clarifies the read-only diff behavior by stating that it returns create/skip actions, which distinguishes it from mutation-oriented siblings such as bundle import or workflow apply.

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

Usage Guidelines4/5

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

The description explains where the bundle_json input comes from (bundle_export or CLI resources export) and clarifies that the workspace object targets a project for that call only. It does not explicitly name the import/apply alternative or state when not to use diff, 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.

whodb_platform_bundle_exportA
Read-onlyIdempotent

Export selected hosted project metadata as a portable bundle.

The bundle includes metadata for secrets, datasets, ontologies, transforms, functions, folders, and files. Secret values are never exported. File content is only exported when include_files is true and is capped by max_file_bytes. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
include_filesNoInclude previewable uploaded file content up to max_file_bytes per file
max_file_bytesNoMaximum bytes to include per uploaded file when include_files is true

Output Schema

NameRequiredDescription
errorNo
scopeNo
bundleNo
countsNo
commandsNo
recoveryNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
setup_statusNo
suggested_toolsNo

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already cover readOnly/idempotent/openWorld, and the description adds real behavioral context beyond them: secret values are never exported, file content is only included when include_files is true, and it is capped by max_file_bytes. It does not describe output shape or size, but the presence of an output schema reduces that burden.

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

Conciseness4/5

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

Four short sentences with the purpose front-loaded and no filler. The final sentences largely restate schema parameter descriptions, which is slight redundancy but not wasteful.

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

Completeness5/5

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

For a three-parameter export tool with an output schema and full annotation coverage, the description supplies what is needed: what gets exported, what never gets exported, when file content is included, and how targeting works. Nothing an agent needs to invoke it correctly is missing.

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

Parameters3/5

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

Schema description coverage is 100%, and the nested workspace object is fully documented in the schema, including the resolution order of session default then process/saved defaults. The description restates the include_files/max_file_bytes gating rather than adding syntax or format details, so baseline 3 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?

The description uses a specific verb and resource: "Export selected hosted project metadata as a portable bundle," and enumerates the resource classes included (secrets, datasets, ontologies, transforms, functions, folders, files). It does not explicitly point to siblings like whodb_platform_bundle_import or whodb_platform_bundle_diff, so differentiation relies on the tool name.

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

Usage Guidelines3/5

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

The description says the workspace arg allows per-call targeting without changing defaults, which implies usage, but it never states when an agent should choose this over bundle_diff, bundle_import, or clone. There is no explicit when/when-not guidance or prerequisites.

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

whodb_platform_bundle_importA
Destructive

Import a project bundle into the selected hosted project.

Use whodb_platform_bundle_import_plan first when possible. Default mode returns a confirmation token; do not call whodb_platform_confirm until the user approves the import preview. Supports prefix, rename_conflicts, and overwrite_conflicts. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
prefixNoOptional prefix added to imported resource names
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
bundle_jsonYesProject bundle JSON from whodb_platform_bundle_export or resources export
rename_conflictsNoCreate unique names for resources that conflict with existing resources
overwrite_conflictsNoUpdate resources that conflict with existing resources

Output Schema

NameRequiredDescription
errorNo
scopeNo
statusNo
warningNo
commandsNo
recoveryNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
result_jsonNo
setup_statusNo
suggested_toolsNo
confirmation_tokenNo
confirmation_actionNo
confirmation_expiryNo
confirmation_previewNo
idempotency_replayedNo
confirmation_requiredNo

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, idempotentHint=false, and openWorldHint=true, so the bar is lower. The description still adds non-obvious behavior: default mode is a preview that returns a confirmation token, and confirm must wait for user approval. It does not describe what happens on conflict by default or the failure mode when rename_conflicts and overwrite_conflicts are both set, which keeps it from a 5.

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

Conciseness4/5

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

Four short sentences, front-loaded with purpose then the plan/confirm workflow, then the option list and workspace targeting. Nothing is wasted, though the parameter enumeration in sentence four is largely 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?

For a destructive, multi-option, nested-workspace mutation with an output schema and rich annotations, the description covers the critical workflow: preview default, confirmation token, user approval gate, and target resolution. The only omission is conflict-resolution precedence, which the agent must infer from the schema.

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

Parameters3/5

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

Schema description coverage is 100%, so all five parameters, including the nested workspace fields, are already documented in structured data. The description only restates them ("Supports prefix, rename_conflicts, and overwrite_conflicts", workspace targeting "without changing defaults") without adding format, mutual-exclusivity, or interaction semantics.

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 ("Import a project bundle into the selected hosted project") and implicitly distinguishes itself from the sibling read-only operations whodb_platform_bundle_export and whodb_platform_bundle_diff. An agent can tell it apart from whodb_platform_bundle_import_plan, which it explicitly names as a predecessor.

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?

Gives explicit sequencing rules: "Use whodb_platform_bundle_import_plan first when possible" and "do not call whodb_platform_confirm until the user approves the import preview." It names the alternatives (plan, confirm) and the condition that gates each, leaving little to inference.

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

whodb_platform_bundle_import_planA
Read-onlyIdempotent

Plan how a project bundle would import into the selected hosted project.

This MCP tool is intentionally plan-only. Use the CLI resources import --yes command for execution after review. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
prefixNoOptional prefix added to imported resource names
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
bundle_jsonYesProject bundle JSON from whodb_platform_bundle_export or resources export
rename_conflictsNoCreate unique names for resources that conflict with existing resources
overwrite_conflictsNoUpdate resources that conflict with existing resources

Output Schema

NameRequiredDescription
planNo
errorNo
scopeNo
countsNo
commandsNo
recoveryNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
setup_statusNo
suggested_toolsNo

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered; the description still adds real value by stating the tool never mutates and by telling the agent how execution is actually performed. It does not describe what the plan output contains, but an output schema exists to carry that.

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

Conciseness5/5

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

Three tight sentences: purpose first, then the plan-only constraint, then the execution path and targeting note. No filler, and the most decision-relevant fact (plan-only) is front-loaded.

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

Completeness4/5

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

An output schema exists so return format need not be explained, and the description covers the plan/execute split and per-call workspace targeting. The only gap is that it doesn't distinguish itself from the sibling bundle_import tool an agent will also see in the list.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents bundle_json, prefix, rename_conflicts, overwrite_conflicts, and the nested workspace object. The description only restates the workspace targeting behavior already captured in the schema, adding no syntax or precedence detail beyond 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?

States a specific verb and resource ('Plan how a project bundle would import') plus the explicit scope limitation ('intentionally plan-only'), which clearly separates it from an executing import. It does not name the sibling whodb_platform_bundle_import, even though that tool's presence makes the distinction worth spelling out.

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 when-to-use (plan, review) and a when-not/alternative (execution happens via the CLI 'resources import --yes' command). The routing is clear, but it points to a CLI command rather than clarifying the relationship to the very similar MCP sibling, leaving some ambiguity an agent may stumble on.

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

whodb_platform_change_impactA
Read-onlyIdempotent

Analyze direct graph impact for a planned change.

Pass resource, id, and optional action before update, delete, deploy, run, move, or promotion work. It returns directly connected resources and recommended reads; it does not execute any change. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idYesResource id
actionNoOptional planned action, for example update, delete, run, deploy, promote_to_dataset
fieldsNoTop-level output fields to include, for example target, affected, warnings.
resourceYesResource type, for example dataset, ontology, function, transform, file, source, secret, ai_provider
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
omit_filesNoOmit root folder file and folder nodes. Defaults to false.
omit_lineageNoOmit hosted lineage edges. Defaults to false.

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint; the description adds that it "does not execute any change" and describes its output shape ("directly connected resources and recommended reads") plus that workspace targeting is per-call and does not change defaults. That is genuine context beyond the annotation set.

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

Conciseness4/5

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

Three tight sentences, front-loaded with the purpose, then how to call it, then usage/return behavior. No filler, though the workspace sentence is slightly dense with brace notation.

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

Completeness4/5

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

No output schema exists, so the description carries the burden and does state what is returned and that no change is executed. It covers usage timing and targeting adequately; minor gaps remain around pagination or result limits, but nothing critical 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 100%, so the schema already documents all 7 parameters, including action examples and the workspace object. The description reinforces the core resource/id/action triple and the workspace non-persistence behavior but adds little that the schema lacks, matching the baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ("Analyze direct graph impact") and scopes it to "directly connected resources." An agent can tell it is an impact-analysis read, but it does not explicitly differentiate itself from adjacent siblings like whodb_platform_deletion_impact or whodb_platform_ontology_reference_impact.

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 clear timing guidance: "pass resource, id, and optional action before update, delete, deploy, run, move, or promotion work." This tells the agent when to reach for it, but names no alternative tools or exclusion conditions.

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

whodb_platform_cloneA
Destructive

Clone a hosted dataset, ontology, transform, or function in the selected project.

Default mode returns a confirmation token; do not call whodb_platform_confirm until the user approves the preview. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
sourceYesSource resource id, name, or api name
new_nameYesNew resource name or ontology api name/display name
resourceYesResource to clone: dataset, ontology, transform, or function
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

Output Schema

NameRequiredDescription
errorNo
scopeNo
statusNo
warningNo
commandsNo
recoveryNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
result_jsonNo
setup_statusNo
suggested_toolsNo
confirmation_tokenNo
confirmation_actionNo
confirmation_expiryNo
confirmation_previewNo
idempotency_replayedNo
confirmation_requiredNo

TDQS

A4/5.0
Behavior4/5

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

Annotations already flag destructiveHint=true, idempotentHint=false and openWorldHint=true; the description adds the crucial two-step preview/confirm gating, which materially changes how an agent should behave. It also clarifies that the workspace parameter is scoped to a single call. It does not say what the clone copies (permissions, versions, dependents) or how name collisions are handled.

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

Conciseness5/5

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

Two sentences, no filler: the capability and scope come first, then the confirm-gating rule and the workspace-targeting caveat. Every clause conveys actionable information.

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

Completeness4/5

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

For a destructive, non-idempotent mutation with a nested workspace object, the description covers the safety workflow and per-call targeting, and an output schema exists so return values need no explanation. What remains unstated is which artifacts come along with a clone and any preconditions on the source resource.

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

Parameters3/5

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

Schema description coverage is 100%, so resource, source, new_name and the nested workspace object are all documented in the schema itself. The description's note that workspace accepts {host, org, project} without altering defaults largely restates the schema's 'Optional target for this call only' wording, so it adds only marginal value. Baseline 3 applies when the schema carries the 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 (clone) and enumerates the exact resource types it operates on (dataset, ontology, transform, function) within the selected project. This implicitly separates it from the create/update/delete siblings, though it never names an alternative such as whodb_platform_create_dataset or whodb_platform_create to draw the boundary explicitly.

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 concrete workflow guidance: the default call returns a confirmation token and whodb_platform_confirm must not be invoked until the user approves the preview. It also explains that workspace targeting is per-call and does not change defaults. No guidance is offered on when to clone versus create a fresh resource, which would complete the picture.

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

whodb_platform_confirmA
Destructive

Confirm and execute a pending hosted WhoDB platform write.

Use the confirmation_token returned by hosted platform write tools. Tokens expire after 5 minutes. Only call this after the user has approved the pending write preview. The token does not independently prove human approval: the MCP host must enforce approval if that guarantee is required. For uploads, review the full local source path and destination; the file is read at execution time, not snapshotted when the preview is created. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
tokenYesConfirmation token from a previous whodb_query or hosted platform write response
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

Output Schema

NameRequiredDescription
rowsYes
errorNo
scopeNo
columnsYes
messageNo
commandsNo
recoveryNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
column_typesNo
setup_statusNo
suggested_toolsNo

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already declare non-readonly, destructive, non-idempotent, open-world behavior, and the description goes further by disclosing token expiry, the fact that the token is not proof of human approval, and that uploads read the file at execution time rather than from a snapshot — a real TOCTOU caveat that changes how an agent should behave.

Agents need to know what a tool does to the world before 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 preconditions, then caveats — a sensible order with no filler. Some sentences carry multiple clauses (approval caveat plus upload caveat), which makes it dense but not wasteful.

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 an output schema exists, the description need not explain return values, and it covers what is left: sequencing after a write preview, token lifetime, approval semantics, and per-call workspace targeting with a pointer to host/org/project discovery tools. Nothing needed to invoke it safely is missing.

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

Parameters4/5

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

Schema coverage is 100%, so the heavy lifting is done structurally. The description still adds meaning beyond the schema: it clarifies where the token comes from and that it is time-limited, and confirms the workspace block is per-call targeting that does not change session defaults.

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: 'Confirm and execute a pending hosted WhoDB platform write.' This clearly distinguishes it from whodb_platform_pending (which lists pending writes) and whodb_platform_write_plan (which plans them), so an agent can pick the right tool without inspecting schemas.

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

Usage Guidelines5/5

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

Explicitly names the trigger ('Use the confirmation_token returned by hosted platform write tools'), the precondition ('Only call this after the user has approved the pending write preview'), and a hard timing constraint ('Tokens expire after 5 minutes'). The when-to-call and the sequencing relative to write tools are fully specified.

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

whodb_platform_createA
Destructive

Create a hosted platform resource through the selected project.

Supported resources: secret, ai_provider, ontology, ontology_fast_lookup, ontology_reference, dataset, transform, folder, function, app, package, lineage_provider, source_object. Pass payload_json as a JSON object matching the hosted platform mutation input. The selected projectId is injected automatically when applicable. Default mode returns a confirmation token; do not call whodb_platform_confirm until the user approves the preview. Permission checks are enforced by the hosted platform. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idNoResource id for update, delete, or action operations
actionNoAction name for whodb_platform_action, for example deploy, run, rename, move, promote_to_dataset
payloadNoStructured mutation payload. Do not include projectId or the target id; the selected workspace and id are injected by the CLI.
resourceYesResource type, for example secret, ai_provider, ontology, dataset, transform, folder, file, function, source_object
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
payload_jsonNoLegacy JSON object payload. Prefer payload; projectId and id are filled from selected workspace/id when appropriate.
idempotency_keyNoStable caller-provided key. Repeating a successful write with the same key will not execute it again.

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, destructiveHint=true, openWorldHint=true and idempotentHint=false. The description adds real value beyond those: the default confirmation-token preview flow, the requirement to obtain user approval before confirming, that permission checks are enforced server-side, and that projectId/id are injected. It doesn't explain what the create actually returns post-confirmation, but it is well 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.

Conciseness4/5

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

Front-loaded with the core action, followed by the resource list and then operational constraints. It is dense but each sentence carries information; the resource enumeration is long but genuinely useful. 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 mutation tool with no output schema, the description covers the critical preview/confirm lifecycle, permission enforcement, and default-workspace injection. It leaves desired but non-critical gaps (error behavior on resource-type mismatch, what the confirmed call returns), yet nothing essential for a correct invocation 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 100%, so the schema already documents id, action, payload, resource, workspace, payload_json, and idempotency_key. The description adds only the auto-injection note, and it emphasizes the legacy payload_json field ("Pass payload_json as a JSON object") even though the schema says to prefer payload, which is mildly confusing rather than 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+resource ("Create a hosted platform resource") and enumerates the supported resource types, which is genuinely informative. It doesn't differentiate itself from dedicated siblings like whodb_platform_create_dataset, whodb_platform_create_ontology_fast_lookup, or whodb_platform_source_create, which overlap logically, so an agent can't tell from the text alone which to pick.

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

Usage Guidelines3/5

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

Gives the preview/confirm workflow ("do not call whodb_platform_confirm until the user approves") and notes that projectId is auto-injected, which is contextual usage help. However it never states when to use this generic create over the specialized create_* siblings, so the primary routing decision is left to inference.

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

whodb_platform_create_datasetA
Destructive

Create a hosted dataset through the selected project.

Use this typed wrapper for normal dataset creation instead of raw whodb_platform_create when possible. Default mode returns a confirmation token; do not call whodb_platform_confirm until the user approves the preview. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
nameYesDataset name
columnsNoManual schema columns
source_idNoOptional hosted source id for source-backed datasets
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
descriptionNoOptional dataset description
schema_modeNoDataset schema mode, for example manual
source_object_refNoOptional source object ref as kind:path, for example Collection:Spam, binding the dataset to one table/object on the source

TDQS

A4.9/5.0
Behavior5/5

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

Annotations declare the tool is destructive and non-idempotent, but the description adds the critical non-obvious behavior: the default mode returns a confirmation token and a preview must be user-approved before calling whodb_platform_confirm. It also discloses that workspace targeting is per-call only and does not change defaults, which annotations cannot convey.

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

Conciseness5/5

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

Four tightly-written sentences, front-loaded with the purpose, then the sibling routing, then the confirm-token safety note, then the workspace semantics. No filler and every sentence carries actionable information.

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

Completeness5/5

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

For a destructive creation tool with 7 params, no output schema and nested workspace, the description covers purpose, alternative routing, the confirm-preview safety workflow, and per-call workspace scoping. Everything an agent needs to invoke it correctly is present.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3 and the schema documents name, columns, source_id, workspace, schema_mode, etc. The description adds a useful cross-parameter interaction that the schema does not: workspace is 'for per-call targeting without changing defaults', clarifying scope semantics beyond the per-field descriptions.

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

Purpose5/5

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

The description opens with a specific verb+resource: 'Create a hosted dataset through the selected project', clearly distinguishing it from siblings like whodb_platform_datasets (list) or whodb_platform_dataset (fetch). It also explicitly positions the tool against the raw whodb_platform_create sibling.

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

Usage Guidelines5/5

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

It says when to use this over the generic whodb_platform_create ('Use this typed wrapper for normal dataset creation instead of raw whodb_platform_create when possible'), and gives an explicit workflow exclusion: don't call whodb_platform_confirm until the user approves the preview. This is exactly the routing guidance an agent needs.

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

whodb_platform_create_ontology_fast_lookupA
Destructive

Create a fast lookup for one hosted ontology.

Pass ontology property names in fields. Default mode returns a confirmation token; do not call whodb_platform_confirm until the user approves the preview. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsYesOntology properties to include in the lookup
reasonNoOptional reason for the lookup
entity_idYesOntology id
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, openWorldHint=true, and idempotentHint=false. The description adds important workflow context: a confirmation token is returned and the confirm tool should only be called after user approval. This is valuable beyond annotations, though it doesn't detail what gets destroyed 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?

The description is concise with three sentences, front-loading the main action. It is efficient, though the phrase 'for one hosted ontology' could be tightened.

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 mutation nature, no output schema, and full schema descriptions, the description provides necessary workflow context about confirmation. It is nearly complete, missing only explicit permission requirements or side effects of creating a fast lookup.

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

Parameters3/5

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

Schema description coverage is 100%, so parameters are fully documented in the schema. The description mentions 'Pass ontology property names in fields' and explains workspace targeting, but it does not add syntax or format details beyond what the schema provides. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 fast lookup for one hosted ontology.' It is clear what the tool does, though it does not differentiate from sibling tools like create_ontology_fast_lookup vs other lookup-related tools beyond the 'fast' qualifier.

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

Usage Guidelines4/5

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

It gives clear usage context: default mode returns a confirmation token, do not call confirm until user approves preview. It also explains workspace targeting. However, it does not explicitly state when to use this vs alternatives like delete_ontology_fast_lookup or other creation tools.

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

whodb_platform_data_model_summaryA
Read-onlyIdempotent

Summarize selected-project data-model resources.

Use this before ontology, dataset, or lineage work. It returns sources, datasets, ontologies, graph relationships, modeling gaps, and the read tools an agent should call next. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoTop-level output fields to include, for example nodes, edges, warnings.
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
omit_filesNoOmit root folder file and folder nodes. Defaults to false.
omit_lineageNoOmit hosted lineage edges. Defaults to false.

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the description is not responsible for the safety profile. It still adds real behavior: the enumerated return payload and the fact that per-call workspace targeting does not mutate session defaults. It omits any note on result size, cost, or truncation for what is an aggregate over multiple resource classes.

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

Conciseness4/5

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

Four short sentences ordered purpose → when to use → what you get → parameter note; nothing is buried. The final workspace sentence is largely redundant with the schema and could be dropped without loss.

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-required-param aggregate read with no output schema, the agent learns the content categories, the intended position in a workflow, and the targeting behavior. Because there is no output schema, the description is the only guide to structure, and it names sections but not their shape or how 'fields' filters them.

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

Parameters3/5

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

Schema description coverage is 100%, so all four parameters (fields, workspace.*, omit_files, omit_lineage) are already documented, which sets the baseline at 3. The description restates the workspace {host, org, project} targeting semantics that the schema already explains, adding the 'without changing defaults' nuance but nothing about how 'fields' interacts with the returned sections.

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

Purpose4/5

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

The description pairs a specific verb ('Summarize') with a scoped resource ('selected-project data-model resources') and enumerates exactly what the summary contains (sources, datasets, ontologies, graph relationships, modeling gaps). It is distinguishable from near-neighbors like workspace_summary or project_health by the data-model framing, though it never names a 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 Guidelines4/5

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

'Use this before ontology, dataset, or lineage work' gives a concrete trigger and implicitly routes the agent toward the three tool families it precedes, and the promise of 'read tools an agent should call next' frames it as a starting point. There is no explicit when-not condition, but the positioning is unambiguous.

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

whodb_platform_datasetB
Read-onlyIdempotent

Inspect one hosted dataset by id. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idYesResource id
fieldsNoTop-level output fields to include. Prefer only fields needed now; call again with more fields if needed.
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, so the safety profile is covered. The description adds that the workspace argument enables per-call targeting without changing defaults, which is useful behavioral context, but it does not describe return behavior, error cases, or 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?

Two sentences, front-loaded with purpose then targeting behavior. There is no filler, and each sentence contributes a distinct piece of information.

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

Completeness4/5

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

For a simple read-only inspection tool with rich annotations and full schema coverage, the description gives enough to invoke it correctly. The main remaining gap is that it does not clarify what 'inspect' returns, though the fields parameter and annotations make the output shape reasonably inferable.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents id, fields, and workspace subfields. The description only repeats that the tool accepts an id and a workspace object; it adds no format, constraint, or selection 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?

The description states a specific verb and resource: 'Inspect one hosted dataset by id.' The singular 'one hosted dataset' distinguishes it from list-oriented siblings like whodb_platform_datasets, but it does not explicitly name alternatives or contrast with whodb_platform_dataset_rows.

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

Usage Guidelines2/5

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

There is no explicit when-to-use guidance, no prerequisites, and no named alternatives. The description implies use when you have a dataset id, but it does not say when to prefer this tool over whodb_platform_datasets or whodb_platform_dataset_rows.

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

whodb_platform_dataset_rowsA
Read-onlyIdempotent

Preview rows for one hosted dataset.

Results are capped by the requested limit and the MCP --max-rows setting when provided. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idYesResource id
limitNoMaximum rows to return
fieldsNoOptional top-level output fields to include
offsetNoRow offset
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds genuinely non-obvious behavior: results are capped by both the requested limit and the MCP --max-rows setting, and per-call workspace targeting does not change session defaults. That is real added context beyond the annotations.

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

Conciseness4/5

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

Two sentences with no filler; the purpose is front-loaded and the second sentence carries the two operational facts. Tight and appropriately sized for a simple read tool.

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

Completeness4/5

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

For a read-only preview tool with full schema coverage and no output schema, the definition covers purpose, result capping and targeting scope. It does not describe the row shape returned, but 'preview rows' plus the 100% schema coverage makes that a minor gap.

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

Parameters4/5

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

Schema description coverage is 100%, so the baseline is 3. The description goes slightly beyond the schema by explaining the cap interaction between limit and --max-rows and clarifying that workspace is a one-call override that leaves defaults intact, which the schema's wording only hints at.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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: 'Preview rows for one hosted dataset.' An agent knows exactly what it does. However, it never differentiates itself from close siblings like whodb_platform_source_rows or whodb_platform_ontology_rows, which are the likely confusions for a rows-preview tool.

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 workspace sentence gives implied usage (omit to use session default, pass per-call to target a specific host/org/project). But there is no when-to-use vs alternative guidance, and no mention of when to prefer this over the source_rows or ontology_rows siblings. Usage is inferred, not directed.

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

whodb_platform_datasetsA
Read-onlyIdempotent

List datasets in the selected hosted project. Use name and schema_mode filters when known. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
nameNoOptional case-insensitive name substring filter for list tools
typeNoOptional type filter, for example provider type, transform trigger mode, or function language
limitNoMaximum list items to return; use offset to continue
fieldsNoTop-level output fields to include. Prefer only fields needed now; call again with more fields if needed.
offsetNoNumber of matching list items to skip
searchNoOptional case-insensitive search term; currently aliases name for list tools
statusNoOptional status filter for resources that expose status
deployedNoOptional function deployment filter: true or false
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
schema_modeNoOptional dataset schema mode filter

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds genuinely useful non-annotation context: that the workspace argument targets a single call 'without changing defaults', which clarifies session-state behavior an agent cannot read off the annotations.

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

Conciseness5/5

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

Three short sentences, front-loaded with the core action, then filters, then the targeting mechanism. No filler and nothing buried.

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

Completeness5/5

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

For a read-only list tool with no output schema, the description names the resource, the scoping, the useful filters, and the override mechanism, while annotations carry the safety profile and the schema carries every parameter. Nothing an agent needs to invoke it correctly is missing.

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

Parameters3/5

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

Schema coverage is 100%, so the schema itself documents all ten parameters including the nested workspace object. The description only echoes the name/schema_mode filters and the workspace shape, adding no syntax, default, or pagination nuance beyond the schema. Baseline 3 is appropriate when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ('datasets') scoped to the 'selected hosted project', which an agent can parse immediately. However, it does not distinguish this list tool from the singular sibling whodb_platform_dataset or from whodb_platform_dataset_rows, so an agent must infer the difference 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 Guidelines3/5

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

'Use name and schema_mode filters when known' gives a light hint about when filters are worth attaching, and the workspace sentence explains per-call targeting. But there is no when-not guidance, no mention of alternatives like the singular dataset tool, and no statement of prerequisites (e.g. a selected project must exist).

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

whodb_platform_deleteA
Destructive

Delete a hosted platform resource through the selected project.

Supported resources: secret, ai_provider, ontology, ontology_fast_lookup, ontology_reference, dataset, transform, file, folder, function, app, lineage_provider, source_object. This is destructive. Pass id for normal resources. For source_object, pass payload_json with sourceId, ref, and values. Default mode returns a confirmation token; explain exactly what will be deleted and do not call whodb_platform_confirm until the user approves the preview. Permission checks are enforced by the hosted platform. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idNoResource id for update, delete, or action operations
actionNoAction name for whodb_platform_action, for example deploy, run, rename, move, promote_to_dataset
payloadNoStructured mutation payload. Do not include projectId or the target id; the selected workspace and id are injected by the CLI.
resourceYesResource type, for example secret, ai_provider, ontology, dataset, transform, folder, file, function, source_object
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
payload_jsonNoLegacy JSON object payload. Prefer payload; projectId and id are filled from selected workspace/id when appropriate.
idempotency_keyNoStable caller-provided key. Repeating a successful write with the same key will not execute it again.

TDQS

A4.2/5.0
Behavior5/5

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

Annotations already declare destructiveHint=true and idempotentHint=false, but the description adds substantial behavioral context beyond them: the default mode returns a confirmation token and requires explicit user approval, permission checks are enforced server-side, and workspace targeting is per-call without changing defaults. This is exactly the destructive-operation context an agent needs and cannot get from 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.

Conciseness4/5

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

Front-loaded with the action and resource list, then the destructive warning, then the confirmation protocol. Dense but mostly earned; the resource enumeration is long yet operationally necessary since the enum is not expressed in 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?

For a destructive 7-parameter mutation with no output schema, the description covers the confirm workflow, resource-specific payload routing, permissions, and targeting. It omits whether deletion is soft/recoverable (relevant given the whodb_platform_restore and whodb_platform_deleted_resources siblings) and what the confirmation token looks like.

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

Parameters4/5

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

Schema description coverage is 100%, so the baseline would be 3, but the description adds cross-parameter semantics the schema does not encode: when to use id versus payload_json, and the specific sourceId/ref/values shape required for source_object. The workspace targeting behavior is also clarified relative to session defaults.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 hosted platform resource') and enumerates the supported resource types, which is far more than a tautology. It does not, however, differentiate itself from overlapping siblings like whodb_platform_source_delete, whodb_platform_delete_ontology_fast_lookup, or whodb_platform_project_delete, so an agent must infer which delete entry point applies.

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 clear operative guidance: pass id for normal resources, use payload_json with sourceId/ref/values for source_object, and follow the default preview-then-confirm flow before calling whodb_platform_confirm. It stops short of naming the alternative delete tools or stating exclusions, so it lacks the explicit when-not routing of a 5.

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

whodb_platform_deleted_resourcesA
Read-onlyIdempotent

List restorable hosted resources visible to the signed-in user. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields
team_idNoTeam id for team members
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
resource_idNoResource id
resource_typeNoResource type, for example dataset, app, or function

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnly/openWorld/idempotent, so the safety profile is covered. The description adds the visibility scope ('visible to the signed-in user') and the per-call workspace targeting behavior, but omits anything about pagination, ordering, or what 'restorable' concretely means (retention window, etc.).

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

Conciseness4/5

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

Two tight sentences with the core purpose front-loaded and the targeting caveat second. No filler, though it is terse enough to leave gaps.

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

Completeness4/5

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

For a read-only list tool with no output schema and full schema coverage, the description covers purpose and targeting adequately. It does not describe the returned shape or filtering behavior, but those are minor for this tool class.

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

Parameters3/5

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

Schema coverage is 100%, so the schema documents all five parameters. The description slightly reinforces the workspace targeting semantics, but largely repeats what the schema already spells out, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ... resources') scoped by 'restorable' and 'visible to the signed-in user', which clearly frames it as the listing counterpart to the deletion/restore tools. It does not explicitly name a sibling (e.g. whodb_platform_restore) to route the agent, 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 word 'restorable' implies this is the discovery step before whodb_platform_restore, but no explicit when-to-use, when-not, or alternative is stated. Usage must be inferred.

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

whodb_platform_delete_ontology_fast_lookupA
Destructive

Delete one hosted ontology fast lookup by id.

Default mode returns a confirmation token; do not call whodb_platform_confirm until the user approves the preview. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idYesResource id
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

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, idempotentHint=false and openWorldHint=true, so the safety profile is covered. The description adds non-annotation context: the default mode only previews and returns a confirmation token, and that workspace targeting does not mutate session defaults. It still doesn't say what collateral effects the deletion has or whether it 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 tight sentences, purpose front-loaded, no filler. There is minor overlap with the schema's own workspace description, but nothing wasteful.

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

Completeness4/5

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

No output schema exists, so the description must carry the flow, and it does enough: it explains that the default call yields a token rather than performing the delete and that workspace selection is per-call. It omits what a confirmed deletion actually removes and whether recovery is possible, which matters for a destructive 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 100%, so the schema already documents both 'id' and the nested workspace object. The description restates workspace targeting ('per-call targeting without changing defaults') with no added syntax or format detail beyond what the schema provides.

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

Purpose5/5

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

States a specific verb and resource ('Delete one hosted ontology fast lookup by id'), which cleanly separates it from the sibling create/lookup tools. An agent can identify the target and 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?

Explains the two-step confirm workflow ('default mode returns a confirmation token; do not call whodb_platform_confirm until the user approves'), which is real procedural guidance for this specific tool. It stops short of saying when an agent should not delete or what alternatives exist (e.g. archive/restore), so it falls below a 5.

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

whodb_platform_delete_ontology_recordA
Destructive

Delete one hosted ontology row.

Pass values that identify the row, usually the primary key property. Default mode returns a confirmation token; do not call whodb_platform_confirm until the user approves the preview. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
valuesYesRecord values keyed by ontology property
entity_idYesOntology id
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
update_columnsNoOntology properties to update; required for update

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, idempotentHint=false, and openWorldHint=true. On top of that the description discloses the two-step preview/confirm workflow and that workspace targeting is per-call and does not change defaults – behavior an agent could not infer 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?

Four short sentences with the action front-loaded, followed by the parameter hint and the workflow warning in priority order. No padding, though it could be marginally tighter by merging the values hint into the same sentence as the delete action.

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

Completeness4/5

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

For a destructive single-row delete with full annotation coverage and a complete schema, the description supplies the key missing piece – the preview-then-confirm safety flow. No output schema exists, but the confirmation-token return behavior is stated, so an agent has enough to act correctly.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents values, entity_id, and workspace. The description adds only a light hint that values identify the row and are usually the primary key property, which is marginally beyond the schema and sets the baseline of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 one hosted ontology row") that an agent can distinguish from the add/update siblings. However, it does not name the closer alternatives like whodb_platform_delete_ontology_fast_lookup or whodb_platform_delete, so the differentiation from siblings relies on their names rather than explicit routing.

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 concrete operational guidance: pass row-identifying values (usually the primary key), the default mode returns a confirmation token, and the agent should not call whodb_platform_confirm until the user approves the preview. It stops short of stating when to prefer this over the fast_lookup or generic delete siblings, so no explicit exclusion.

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

whodb_platform_deletion_impactA
Read-onlyIdempotent

Inspect hosted dependents, references, and shared resources before deletion. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields
team_idNoTeam id for team members
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
resource_idNoResource id
resource_typeNoResource type, for example dataset, app, or function

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, idempotentHint=true and openWorldHint=true, so the non-mutating nature is covered structurally. The description adds real value in noting the workspace block is per-call targeting that leaves defaults unchanged, but it does not say what the inspection actually surfaces (dependents lists, blocking conditions, scoping of results).

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 purpose stated first and the parameter nuance second. Nothing needs trimming and nothing is buried.

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

Completeness4/5

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

For a read-only inspection tool with full annotation coverage, no output schema, and fully documented parameters, the description is nearly sufficient — it conveys the intent and the targeting model. The gap is that with no output schema present, the description could briefly characterize what the inspection returns (e.g. blocking dependents vs. advisory references) to help the agent interpret results.

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

Parameters3/5

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

With 100% schema description coverage, the schema already documents all five parameters including the nested workspace object's host/org/project semantics and the session-default cascade. The description's contribution is limited to reinforcing that workspace targeting is scoped to a single call, which the schema already states for the host field — a baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ('Inspect') and a specific resource set ('hosted dependents, references, and shared resources'), plus the temporal context ('before deletion'). It is distinguishable from neighbors like whodb_platform_delete or whodb_platform_restore, though it never names the adjacent read-only impact siblings (change_impact, ontology_reference_impact, share_dependents) that an agent might 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 Guidelines3/5

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

The phrase 'before deletion' implies the usage context — a pre-flight check prior to a destructive call — which is genuinely useful guidance. But it gives no explicit when-not, no prerequisites, and no pointer to the alternative impact/reference tools, so the agent must infer routing.

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

whodb_platform_discover_shared_ontologiesB
Read-onlyIdempotent

List ontologies other projects share that the selected project may reference. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
nameNoOptional case-insensitive name substring filter for list tools
typeNoOptional type filter, for example provider type, transform trigger mode, or function language
limitNoMaximum list items to return; use offset to continue
fieldsNoTop-level output fields to include. Prefer only fields needed now; call again with more fields if needed.
offsetNoNumber of matching list items to skip
searchNoOptional case-insensitive search term; currently aliases name for list tools
statusNoOptional status filter for resources that expose status
deployedNoOptional function deployment filter: true or false
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
schema_modeNoOptional dataset schema mode filter

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint and idempotentHint, so safety and repeatability are covered. The description adds one genuinely useful behavioral detail — that workspace targets a single call without changing the session default — but says nothing about result volume, pagination, or whether sharing visibility is permission-filtered.

Agents need to know what a tool does to the world before 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 purpose front-loaded and no filler. The second sentence is largely redundant with the workspace schema description, which keeps it short of a 5.

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 10-parameter, zero-required, read-only list tool with no output schema and full schema coverage, the description covers the core purpose but omits return shape and pagination expectations (limit/offset exist in the schema but no guidance on using them). Adequate, 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 100%, so the baseline is 3. The description's mention of workspace {host, org, project} for per-call targeting restates what the workspace schema description already says, adding no syntax or precedence detail beyond 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?

States a specific verb and resource ('List ontologies other projects share that the selected project may reference'), which is clear. However, it does not distinguish itself from the very close sibling whodb_platform_shared_ontologies (and shared_by_me/shared_with_me), so an agent cannot tell from the description alone which of these list tools 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?

No when-to-use statement, no exclusions, and no named alternatives despite several near-identical siblings (shared_ontologies, ontologies, shared_by_me, shared_with_me). The only contextual hint is that workspace can target a project per call, which is task mechanics rather than selection guidance.

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

whodb_platform_doctorA
Read-onlyIdempotent

Check hosted WhoDB MCP readiness.

Use this when platform tools fail or before a workflow. It reports login, selected workspace, manifest availability, and actionable warnings. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

Output Schema

NameRequiredDescription
hostNo
emailNo
errorNo
scopeNo
checksYes
org_idNo
commandsNo
org_nameNo
recoveryNo
warningsNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
project_idNo
request_idNo
org_selectorNo
project_nameNo
suggested_toolsNo
platform_versionNo
project_selectorNo
workspace_selectedYes
manifest_protocol_versionNo

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already cover read-only/idempotent/open-world, so the description focuses on the useful extra: it names the categories it inspects (login, selected workspace, manifest availability, actionable warnings) and clarifies the non-destructive nature of per-call targeting ('without changing defaults'). Output schema exists, so return-value detail is not 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?

Four short sentences, front-loaded with purpose then usage then behavior then parameter note. No filler; a slightly tighter single paragraph would earn 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?

Given a single optional parameter, full schema coverage, annotations, and an output schema, the description supplies what is needed: what it inspects, when to call it, and that targeting is per-call only. Missing only a pointer to the nearest alternative diagnostics 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 coverage is 100% and the schema's own workspace description already explains the session-default fallback and points to discovery tools. The description's 'per-call targeting without changing defaults' largely restates that, adding little beyond the schema.

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

Purpose4/5

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

States a specific verb and resource – a readiness/diagnostic check on hosted WhoDB MCP – and enumerates what it reports (login, workspace, manifest, warnings). It is distinguishable from generic siblings like whodb_platform_status or whodb_platform_setup_status only by the word 'MCP', not by any explicit contrast.

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

Usage Guidelines4/5

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

'Use this when platform tools fail or before a workflow' gives clear triggering conditions. It does not say when *not* to use it, nor how it differs from the many adjacent health/status tools (setup_status, runtime_readiness, project_health).

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

whodb_platform_file_inspectA
Read-onlyIdempotent

Inspect one hosted tabular file and infer promote-to-dataset column mappings.

Use this before whodb_platform_action with resource "file" and action "promote_to_dataset". Prefer fields such as ["columns", "columnMapExample", "columnMapFlags"] first. Set include_rows only when sample row values are needed. The suggested mappings are convenience output; the hosted platform still validates promotion writes. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoTop-level output fields to include. Prefer columns and columnMapExample before requesting rows.
file_idYesProject file id
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
sheet_indexNoOptional spreadsheet sheet index
include_rowsNoInclude preview rows. Defaults to false to keep context compact.

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so safety is covered. The description adds a genuinely new behavioral caveat — suggested mappings are advisory and the platform still validates writes — plus that workspace targeting does not mutate session defaults. Return-shape and pagination behavior remain unstated, but the added caveats exceed annotation coverage.

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

Conciseness4/5

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

Purpose is front-loaded in the first sentence and the remaining sentences each carry distinct value (workflow routing, field preference, write-validation caveat, workspace scoping). It is dense but not padded; the density is appropriate for a five-parameter tool.

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

Completeness5/5

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

With read-only annotations carrying the safety profile, full schema coverage on all five parameters, and no output schema to explain, the description covers the remaining needs: what it does, how it fits before promotion, how to choose fields, and that mappings are non-authoritative. Nothing essential for correct invocation is missing.

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

Parameters4/5

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

Schema description coverage is 100%, so the baseline is 3. The description goes beyond it by prescribing field ordering, the conditional use of include_rows ("only when sample row values are needed"), and the per-call non-persistent nature of workspace, which the schema does not emphasize as strongly.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ("Inspect one hosted tabular file") plus the precise output purpose (infer promote-to-dataset column mappings), which separates it from generic preview/list siblings. It stops short of explicitly naming close siblings like whodb_platform_file_preview or whodb_platform_promote_file_to_dataset, so differentiation is inferred from the workflow mention 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 Guidelines4/5

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

Gives explicit timing ("Use this before whodb_platform_action with resource 'file' and action 'promote_to_dataset'") and operational guidance on param selection ("Prefer fields such as [columns, columnMapExample, columnMapFlags] first"). It does not state when NOT to use it (e.g., versus file_preview), leaving one inference gap.

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

whodb_platform_file_previewA
Read-onlyIdempotent

Preview one hosted project file.

Prefer fields such as ["mimeType", "sizeBytes", "isTabular"] before requesting body fields. Request "textContent" or "tabular" only when the file body or rows are needed. Text content is capped in MCP output. Tabular previews are returned as provided by the hosted platform. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoTop-level output fields to include. Prefer metadata first; call again with body fields only if needed.
file_idYesProject file id
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
sheet_indexNoOptional spreadsheet sheet index

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 and idempotent, so the safety profile is covered. The description adds real behavioral context beyond them: text content is capped in MCP output, tabular previews are returned as the hosted platform provides them, and passing workspace affects only this call without changing defaults.

Agents need to know what a tool does to the world before 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 followed by tightly packed, actionable guidance. Each sentence carries weight, though the field-name examples are dense enough to read as a run-on rather than scannable structure.

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

Completeness4/5

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

With no output schema, the description partially compensates by explaining return shapes (capped text content, platform-provided tabular previews). Combined with annotations and a fully documented schema, an agent has enough to call the tool correctly, though return-format specifics remain somewhat abstract.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3. The description goes further by naming concrete field values ('mimeType', 'sizeBytes', 'isTabular', 'textContent', 'tabular') and clarifying the semantics of the nested workspace object as per-call targeting that leaves defaults untouched.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ('Preview one hosted project file'), and 'one' distinguishes it from list-oriented siblings such as whodb_platform_files. It does not, however, differentiate itself from closely related readers like whodb_platform_file_inspect or whodb_platform_tabular_files, 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 Guidelines3/5

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

It gives within-tool sequencing guidance (prefer metadata fields first, request body/row fields only when needed), which is genuinely useful. But it never states when to reach for this tool over file_inspect, file_search, or tabular_files, leaving the sibling choice to inference.

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

whodb_platform_filesA
Read-onlyIdempotent

List folders and files in a hosted project folder.

Omit folder_id to list the project root. Use name, kind, and mime_type filters when known. Prefer fields such as ["files", "folders"] or ["storageUsed"] to request only the folder data needed now. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
kindNoOptional entry kind filter: file or folder
nameNoOptional case-insensitive name substring filter
fieldsNoTop-level output fields to include. Prefer only fields needed now; call again with more fields if needed.
folder_idNoFolder id. Omit for project root.
mime_typeNoOptional file MIME type substring filter
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds real behavioral context in 'per-call targeting without changing defaults' and in hinting at the payload shape ('files', 'folders', 'storageUsed'), but says nothing about pagination, result caps, or what a listing returns for a tool with no output schema.

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

Conciseness4/5

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

Four tight sentences, front-loaded with the core action and root-folder default before filters and fields. Nothing is redundant, though the 'fields such as ... needed now' sentence is slightly clunky.

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 6-parameter tool with a nested workspace object and no output schema, the description covers targeting, filtering, and field selection adequately. It is thin on return shape, pagination, and sibling differentiation (e.g., versus file_search or tabular_files), which leaves an agent with unanswered questions before calling.

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

Parameters4/5

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

Schema coverage is 100%, so a baseline of 3 is warranted, but the description goes beyond the schema by naming concrete field values ('files', 'folders', 'storageUsed') that the generic 'fields' parameter description does not provide, and by explaining the per-call workspace override intent.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 folders and files in a hosted project folder,' which is concrete and scope-aware (hosted project). However, it never distinguishes itself from close siblings like whodb_platform_file_search, whodb_platform_file_inspect, whodb_platform_app_files, or whodb_platform_tabular_files, so an agent cannot easily tell 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 Guidelines3/5

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

It offers practical calling guidance (omit folder_id for the root, apply name/kind/mime_type filters 'when known', prefer narrow fields), which is implied usage for the parameters. It gives no guidance on when to choose this tool over the other file-listing/search siblings, so tool-selection guidance is absent.

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

whodb_platform_functionA
Read-onlyIdempotent

Inspect one ontology function by id.

Prefer fields to request only the details needed now, for example ["id", "name", "description"]. Request heavier fields such as "files" only when source code is needed. Function source file content is capped in MCP output. Secret bindings include secret ids only, never secret values. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idYesResource id
fieldsNoTop-level output fields to include. Prefer only fields needed now; call again with more fields if needed.
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint/idempotentHint/openWorldHint, so the safety profile is covered. The description usefully adds traits the annotations do not: source file content is capped in MCP output, and secret bindings expose secret ids only, never values — both are meaningful expectations for the caller.

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

Conciseness4/5

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

Purpose is front-loaded in a single short line, followed by tightly scoped guidance on fields, caps, secrets, and workspace. Slightly dense in the middle, and the workspace sentence partially duplicates the schema text, but no sentence is clearly wasteful.

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

Completeness4/5

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

With a nested workspace object and no output schema, the description adequately covers targeted invocation, field-selection cost, output capping, and secret redaction. It leaves only minor gaps, such as what identifying forms `id` accepts, but is otherwise complete for a 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?

Schema description coverage is already 100%, so the baseline is 3. The description goes beyond the schema by explaining the trade-off behind `fields` (request only what is needed now; heavier fields like "files" only when source code is required) and by clarifying that `workspace` targets a single call without changing session defaults.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ("Inspect") and a precise resource ("one ontology function by id"), and the word "one" distinguishes it from the plural listing tool whodb_platform_functions. It does not, however, explicitly name or contrast against near-neighbors like whodb_platform_functions, function_runs, or function_wait.

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 "Inspect one ontology function by id" — an agent can infer it is the single-resource read path. But there is no explicit routing guidance versus siblings (e.g., use this only when you already have the id; use whodb_platform_functions to discover ids), and no stated preconditions or exclusions, so it falls short of a 4.

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

whodb_platform_function_runsA
Read-onlyIdempotent

Return one persisted function run by run_id, or list recent runs for one function by function_id. Runs come from the function start_run action; each carries status, output, logs and error. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
limitNoMaximum runs to return
fieldsNoOptional top-level output fields to include
run_idNoFunction run id; returns that one run instead of a list
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
function_idNoFunction id; lists its recent runs

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so safety is covered. The description still adds real value: it discloses where runs originate (start_run), what each record contains (status, output, logs, error), and that the workspace override is scoped per-call without mutating defaults.

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

Conciseness5/5

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

Three tight sentences: behavior first, then data provenance/payload, then the workspace override. Every sentence carries information and nothing is padded.

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

Completeness4/5

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

With no output schema, the description usefully enumerates the returned fields (status, output, logs, error) and explains the session-default resolution for workspace. Minor gaps remain: limit/pagination behavior and the fields projection parameter are only documented in the schema.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3. The description reinforces the run_id ('returns that one run instead of a list') and function_id ('lists its recent runs') semantics, but the workspace targeting wording largely overlaps the schema's own 'Optional target for this call only' and 'Does not change the default host' 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 clear verb+resource ('Return one persisted function run' / 'list recent runs for one function') and clarifies the two selection modes via run_id vs function_id. It does not explicitly differentiate itself from near-neighbors like whodb_platform_function_wait or whodb_platform_functions, so it stops short of a 5.

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

Usage Guidelines3/5

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

Usage is only implied by the run_id/function_id split, and the provenance note ('Runs come from the function start_run action') gives useful context. There is no explicit when-to-use guidance relative to sibling tools such as function_wait (waiting for a run) or functions (listing function definitions), which an agent must infer.

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

whodb_platform_functionsA
Read-onlyIdempotent

List ontology functions in the selected hosted project.

Use name, type, and deployed filters when known; type maps to language for this tool. Prefer fields such as ["id", "name", "description", "isDeployed"] for discovery. Request heavier fields such as "files" only when source code is needed. Function source file content is capped in MCP output. Secret bindings include secret ids only, never secret values. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
nameNoOptional case-insensitive name substring filter for list tools
typeNoOptional type filter, for example provider type, transform trigger mode, or function language
limitNoMaximum list items to return; use offset to continue
fieldsNoTop-level output fields to include. Prefer only fields needed now; call again with more fields if needed.
offsetNoNumber of matching list items to skip
searchNoOptional case-insensitive search term; currently aliases name for list tools
statusNoOptional status filter for resources that expose status
deployedNoOptional function deployment filter: true or false
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
schema_modeNoOptional dataset schema mode filter

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint, idempotentHint, openWorldHint), so credit here goes to the extra disclosure: function source file content is capped in MCP output, and secret bindings expose ids only, never values. Those are genuine behavioral facts an agent cannot get from the annotations. It still doesn't describe pagination behavior for continuing a large list.

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

Conciseness4/5

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

Purpose is front-loaded in the first sentence, followed by filter guidance, field selection advice, and the output/security caveats. Each sentence carries distinct information with little padding, though the closing workspace sentence restates schema content and is somewhat 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 10-parameter, no-required-args, no-output-schema list tool, the description covers scope, filters, field selection trade-offs, output truncation, secret redaction, and per-call workspace targeting. An agent has enough to invoke it correctly; only list continuation behavior 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?

Schema coverage is 100%, so the baseline is 3, but the description adds real semantic value beyond the schema: 'type maps to language for this tool' disambiguates an overloaded parameter, and it names the recommended lightweight field set versus the heavy 'files' field. It doesn't explain offset/limit continuation beyond what the schema already says.

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

Purpose4/5

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

The description states a specific verb and resource with scope: 'List ontology functions in the selected hosted project.' An agent can tell this is a list operation over the function resource. It does not, however, explicitly distinguish itself from the singular sibling whodb_platform_function, leaving that routing to inference.

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

Usage Guidelines3/5

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

'Use name, type, and deployed filters when known' and 'Request heavier fields such as "files" only when source code is needed' give practical guidance on how to drive the parameters. What is missing is tool-level routing: when to call this versus whodb_platform_function or whodb_platform_function_runs, and any stated exclusions.

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

whodb_platform_function_waitA
Read-onlyIdempotent

Wait for a persisted hosted function run to complete, fail or be canceled, then return its output, logs and error. Use the run id returned by the function start_run action and keep the timeout bounded; a run keeps going after a timed-out wait. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields to include
run_idYesFunction run id returned by the start_run action or function_runs tool
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
poll_secondsNoPolling interval, default 2 seconds
timeout_secondsNoMaximum wait time, default 60 seconds

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already cover readOnly, idempotent and openWorld, so the bar is lower, yet the description still adds real value: it discloses that a timed-out wait does not cancel the underlying run, and that the call returns output, logs and error. It does not describe polling/backoff mechanics beyond the parameter defaults, 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?

Three tightly packed sentences with the core behavior front-loaded, followed by invocation guidance and the workspace caveat. No filler, no restatement of the tool name or annotation fields.

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

Completeness4/5

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

For a 5-parameter, nested-object tool with no output schema, the description covers terminal states, return payload (output/logs/error), and timeout behavior, which is what an agent needs to call it correctly. Minor gaps remain around polling defaults and how errors/cancellations are surfaced, but nothing essential is missing.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, but the description adds meaning beyond the schema: run_id provenance (start_run action or function_runs tool), the advice to keep timeout bounded, and the 'per-call targeting without changing defaults' semantics of the workspace object. That is more than the schema alone conveys.

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 and resource ('Wait for a persisted hosted function run') plus the exact terminal conditions (complete, fail, canceled) and what is returned (output, logs, error). This clearly separates it from sibling listing tools like whodb_platform_function_runs and from the analogous whodb_platform_transform_wait, which targets a different resource.

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 clear context for invocation: use the run id returned by the function start_run action, and keep the timeout bounded. It also warns that a run keeps going after a timed-out wait, which is the key operational caveat. It stops short of explicitly naming when to prefer function_runs (poll-free listing) instead, so no true exclusion guidance.

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

whodb_platform_gap_analysisA
Read-onlyIdempotent

Return a goal-aware gap analysis for the selected hosted project.

Use this when the agent needs to explain what is missing before building an app, data product, ontology workflow, transform pipeline, or AI-backed function. It returns ready areas, gaps, suggested tools, and next actions. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
goalNoOptional user goal or desired app/data workflow to analyze gaps against.
fieldsNoTop-level output fields to include, for example gaps, ready, counts, next_actions.
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
omit_filesNoOmit root folder file and folder summaries. Defaults to false.
omit_lineageNoOmit project lineage summary. Defaults to false.

TDQS

A3.9/5.0
Behavior3/5

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

Annotations declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, which cover safety and idempotency. The description adds that it returns ready areas, gaps, suggested tools, and next actions, and explains the workspace fallback behavior. However, it doesn't add much beyond annotations and schema about side effects or limitations. With annotations covering key traits, a 3 is appropriate for moderate 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.

Conciseness5/5

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

Three sentences, front-loaded with the core purpose, then usage context, then parameter clarification. No wasted words; each sentence adds necessary information.

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

Completeness4/5

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

Given no output schema, the description specifies the return fields (ready areas, gaps, suggested tools, next actions) which is helpful. It also covers parameter defaults and targeting. For a read-only analysis tool with rich annotations and 100% schema coverage, this is nearly complete, though a bit more on how it differs from similar siblings could help.

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

Parameters4/5

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

Schema description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds some value by explaining the 'workspace' parameter's default behavior and fallback chain, and mentions that it accepts workspace for per-call targeting without changing defaults. This enriches beyond the schema's parameter descriptions, earning a 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?

States a specific verb+resource: 'Return a goal-aware gap analysis'. The description is clear about what the tool produces (gap analysis) and that it's goal-aware, but does not explicitly differentiate from siblings like whodb_platform_next_actions or whodb_platform_build_plan which likely overlap in purpose.

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

Usage Guidelines4/5

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

Provides a clear when-to-use: 'when the agent needs to explain what is missing before building an app, data product, ontology workflow, transform pipeline, or AI-backed function.' It lists contexts but doesn't name alternative tools to use instead, leaving some ambiguity among the many sibling tools.

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

whodb_platform_hostsA
Read-onlyIdempotent

List saved platform hosts and account metadata without contacting servers. Saved credentials may have expired; status checks the selected login. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

Output Schema

NameRequiredDescription
hostsYes
scopeNo
recoveryNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
request_idNo
suggested_toolsNo

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent, but the description adds genuinely useful behavioral context: no server contact occurs despite openWorldHint=true, and saved credentials may be expired. That offline-vs-live distinction is exactly the kind of thing annotations don't convey.

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

Conciseness4/5

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

Three short sentences, front-loaded with what the tool does before the caveats. The middle sentence ('status checks the selected login') is compact to the point of mild ambiguity, costing a point but nothing is padded.

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

Completeness4/5

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

With an output schema present, return-value detail isn't required, and the single workspace parameter is fully covered by the schema. The description supplies the offline behavior and credential-expiry caveat, leaving little an agent would need beyond this.

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

Parameters3/5

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

Schema description coverage is 100% and the schema already documents workspace host/org/project plus the 'does not change the default host' rule. The description restates the per-call targeting and default-preservation semantics, which is reinforcing rather than additive, so baseline 3 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?

The description states a specific verb and resource ('List saved platform hosts and account metadata') and adds a scope disambiguator ('without contacting servers'). It partly contrasts with the sibling status tool ('status checks the selected login'), though that phrase is slightly ambiguous about whether 'status' means the sibling tool or a returned field.

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

Usage Guidelines4/5

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

It gives a clear usage rationale (browse saved hosts offline) and points at the alternative path when the agent actually needs to verify credentials ('status checks the selected login'). It doesn't explicitly enumerate when not to use it, but the tradeoff is stated plainly.

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

whodb_platform_lineageA
Read-onlyIdempotent

Return lineage around one root node in the selected hosted project. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields to include
root_idYesRoot node id
directionNoOptional lineage direction
max_depthNoOptional maximum graph depth
root_typeYesRoot node type
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds the genuinely useful behavior that a workspace override applies only to this call and leaves defaults untouched. It still says nothing about what the traversal returns, direction semantics, or depth defaults.

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, both front-loaded: purpose first, then the per-call targeting constraint. 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 read-only graph tool the safety side is fully covered by annotations, and there is no output schema to explain. Still, direction and max_depth are left semantically vague (no defaults, no accepted values, no description of returned nodes/edges), which is a meaningful gap for a traversal 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 100%, so the schema already documents all six parameters, including the nested workspace object. The description only restates the workspace {host, org, project} shape and adds no meaning to root_id, root_type, direction, or max_depth beyond the schema's terse labels.

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

Purpose4/5

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

The description uses a specific verb+resource ("Return lineage around one root node") and scopes it to "the selected hosted project," so the agent knows it is a graph-traversal read. However, it never distinguishes itself from close siblings such as whodb_platform_lineage_neighbors, whodb_platform_lineage_providers, or whodb_platform_project_lineage, leaving the reader 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?

It gives a usage hint that workspace targeting is per-call and does not change defaults, which implies this is the way to override project context transiently. But there is no explicit when-to-use/when-not-to-use guidance and no routing to the lineage siblings, so the usage context is only implied.

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

whodb_platform_lineage_neighborsA
Read-onlyIdempotent

Return immediate lineage neighbors for one node in the selected hosted project. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields to include
node_idYesNode id
node_typeYesNode type
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already establish readOnly, idempotent, and open-world behavior. The description adds useful scope ('immediate' neighbors, selected hosted project) and clarifies that workspace overrides do not change defaults, though it omits return shape and pagination details.

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

Conciseness5/5

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

Two tightly written sentences: the first states the action, the second handles workspace targeting. 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 simple read-only lineage lookup, the description covers the core operation and workspace override behavior. With no output schema, it still does not describe the returned neighbor structure or guide choice among sibling lineage tools, leaving clear inferential 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 coverage is 100%, so the schema already documents node_id, node_type, fields, and workspace. The description only summarizes workspace targeting and adds no syntax or meaning beyond the schema descriptions.

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

Purpose4/5

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

The description uses a specific verb ('Return') and resource ('immediate lineage neighbors for one node'), making the operation clear. It does not explicitly name or distinguish itself from sibling lineage tools such as whodb_platform_lineage or whodb_platform_project_lineage, 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?

It gives context for one node and describes per-call workspace targeting with session-default fallback, but offers no when-to-use/when-not guidance or alternatives among the many lineage siblings. Usage is implied rather than explicit.

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

whodb_platform_lineage_providersB
Read-onlyIdempotent

List OpenLineage providers configured for the selected project. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
nameNoOptional case-insensitive name substring filter for list tools
typeNoOptional type filter, for example provider type, transform trigger mode, or function language
limitNoMaximum list items to return; use offset to continue
fieldsNoTop-level output fields to include. Prefer only fields needed now; call again with more fields if needed.
offsetNoNumber of matching list items to skip
searchNoOptional case-insensitive search term; currently aliases name for list tools
statusNoOptional status filter for resources that expose status
deployedNoOptional function deployment filter: true or false
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
schema_modeNoOptional dataset schema mode filter

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, idempotentHint=true and openWorldHint=true, so the safety profile is covered. The description adds a genuine behavioral nuance — that the workspace argument targets a single call 'without changing defaults' — which clarifies non-mutating semantics of session state.

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

Conciseness4/5

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

Two short sentences, front-loaded with the operation and resource, then the targeting caveat. No filler, though the second sentence is only marginally informative given the schema already documents workspace.

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 read-only list tool with no output schema and 100% parameter coverage, the description covers purpose and targeting adequately. It does not address return shape, pagination behavior of the limit/offset pair, or its relationship to sibling lineage tools, leaving some gaps for a tool with ten filters.

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

Parameters3/5

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

Schema description coverage is 100%, so all ten parameters are already documented in the input schema, including the nested workspace object. The description restates the workspace shape but adds no filter syntax or format detail beyond the schema; baseline 3 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 OpenLineage providers' — scoped to the 'selected project', so an agent knows exactly what it returns. It stops short of distinguishing itself from the numerous lineage siblings (whodb_platform_lineage, whodb_platform_lineage_neighbors, whodb_platform_project_lineage), so the boundary must be inferred.

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 says when to reach for this tool versus the other lineage-related tools, nor any prerequisite or exclusion. The only usage-adjacent content is the workspace targeting note, which is about how to target, not when to use.

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

whodb_platform_my_grantsB
Read-onlyIdempotent

List the signed-in user's hosted resource grants. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields
team_idNoTeam id for team members
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
resource_idNoResource id
resource_typeNoResource type, for example dataset, app, or function

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, idempotentHint=true and openWorldHint=true, so the safety profile is covered. The description adds genuine value by clarifying that the workspace target applies to this call only and does not mutate session defaults, but says nothing about scoping, filters, or result size/pagination.

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 purpose front-loaded before the targeting caveat. 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?

Annotations cover safety and the schema fully documents all five parameters, and no output schema exists so return shape need not be described. However, in a sibling set with at least five overlapping access/permissions tools, the description omits the disambiguating context an agent needs to pick this one correctly.

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

Parameters3/5

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

Schema description coverage is 100% and the nested workspace object already documents per-call targeting, the session-default fallback chain, and the org/project/host fields. The description largely restates that behavior, so it adds no meaning beyond the schema; baseline 3 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?

The description names a specific verb and resource: 'List the signed-in user's hosted resource grants.' An agent can tell what the tool returns, but nothing distinguishes it from closely related siblings such as whodb_platform_resource_permissions, whodb_platform_user_resource_access, or whodb_platform_shared_with_me, so sibling differentiation is absent.

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 many other access/permission/resource-listing siblings, and no exclusions or prerequisites. The only usage-adjacent text ('for per-call targeting without changing defaults') describes parameter behavior, not selection guidance.

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

whodb_platform_next_actionsA
Read-onlyIdempotent

Return deterministic suggested next actions for the selected hosted project.

Use this as a deeper action-ranking view after whodb_platform_workspace_summary or whodb_platform_gap_analysis. Suggestions are advisory only; backend permissions and write confirmations still apply. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
goalNoOptional user goal used to keep suggested actions relevant.
fieldsNoTop-level output fields to include, for example actions, warnings, goal.
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
omit_filesNoOmit root folder file and folder summaries. Defaults to false.
function_idNoFor runtime readiness, inspect the latest persisted run of this function without executing it.
omit_lineageNoOmit project lineage summary. Defaults to false.

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint/idempotentHint/openWorldHint, and the description adds real context on top: results are deterministic, advisory only, and backend permissions and write confirmations still apply. It also notes per-call workspace targeting does not change defaults, useful state-management detail. It does not describe the shape or size of the returned action list.

Agents need to know what a tool does to the world before 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 tight sentences, front-loaded with the purpose before the sequencing and caveat. Every sentence carries information; only the workspace sentence duplicates schema 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?

With six parameters (including a nested workspace) and no output schema, the description should say more about what a 'suggested action' contains and how the fields/goal/function_id inputs shape that output. The sequencing and advisory caveats are covered, but the return-value burden falls entirely on an undocumented 'actions' concept.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents goal, fields, function_id, omit_files and omit_lineage in detail. The description adds only the workspace-targeting semantics (per-call, defaults preserved), which largely restates the schema's own workspace description. Baseline 3 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 and resource ('Return deterministic suggested next actions for the selected hosted project'), so the agent knows exactly what it produces. It is differentiated by sequencing from whodb_platform_workspace_summary and whodb_platform_gap_analysis, but never clarifies how it differs from near-name siblings like whodb_platform_pending or whodb_platform_action.

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

Usage Guidelines4/5

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

Gives an explicit trigger and ordering: use it as a 'deeper action-ranking view after' two named siblings. The advisory-only caveat is also stated. There is no when-not guidance (e.g. when a shallower summary is enough), which keeps it below a 5.

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

whodb_platform_object_versionsB
Read-onlyIdempotent

List promoted versions for an app, function, transform, dataset, or ontology. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idYesObject id
fieldsNoOptional top-level output fields
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
object_typeYesVersionable object type: app, function, transform, dataset, or ontology

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description does add one useful behavioral detail – that 'promoted' versions are listed (implying drafts/non-promoted versions are excluded) and that the workspace override is call-scoped and does not mutate defaults. It still says nothing about ordering, limits, or result 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?

Two short sentences with the purpose front-loaded and no filler. The second sentence overlaps the schema's own workspace description, which is the only minor inefficiency.

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 read-only listing tool whose annotations and schema are fully covered, this is close to adequate, but with no output schema the description should say more about what is returned (version identifiers, ordering, whether all versions or a page). Nothing addresses routing to the adjacent version 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 100%, so every parameter (id, fields, object_type, workspace with nested host/org/project) is already documented in the schema. The description's mention that workspace is {host, org, project} and does not change defaults largely restates the schema, so the baseline 3 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 (list) and resource (promoted versions) and enumerates exactly which object types are versionable, so the scope is unambiguous. However, it never distinguishes itself from close siblings like whodb_platform_active_version or whodb_platform_project_active_versions, so an agent must guess which version-listing 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 or when-not-to-use guidance and no named alternative. The only contextual sentence concerns workspace targeting, which is invocation 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.

whodb_platform_ontologiesA
Read-onlyIdempotent

List ontology object types in the selected hosted project. Use name and status filters when known. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
nameNoOptional case-insensitive name substring filter for list tools
typeNoOptional type filter, for example provider type, transform trigger mode, or function language
limitNoMaximum list items to return; use offset to continue
fieldsNoTop-level output fields to include. Prefer only fields needed now; call again with more fields if needed.
offsetNoNumber of matching list items to skip
searchNoOptional case-insensitive search term; currently aliases name for list tools
statusNoOptional status filter for resources that expose status
deployedNoOptional function deployment filter: true or false
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
schema_modeNoOptional dataset schema mode filter

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description's one extra claim - workspace is per-call targeting without changing defaults - largely restates the workspace schema field, and it says nothing about result size, truncation or pagination behavior for a 10-parameter list 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 sentences, front-loaded with the core action and scoping, then filter advice, then targeting note. Little waste, though the final sentence partly duplicates the workspace schema description.

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 100% schema coverage and no output schema, the description covers the essential 'what and where' for a read-only list tool. The main gap is pagination/return-shape context, which the limit/offset params partially imply.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all ten parameters and the baseline is 3. The description only calls out name and status filtering, adding no syntax or format detail beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 (ontology object types) scoped to 'the selected hosted project', which distinguishes it from the shared-ontology siblings like whodb_platform_shared_ontologies and whodb_platform_discover_shared_ontologies. It does not, however, clarify the boundary versus the singular whodb_platform_ontology or whodb_platform_ontology_describe.

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 filter advice ('Use name and status filters when known') but never states when to reach for this versus sibling enumeration tools (whodb_platform_ontology, whodb_platform_shared_ontologies). Usage is implied by the 'list' framing rather than explicitly guided.

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

whodb_platform_ontologyA
Read-onlyIdempotent

Inspect one ontology object type by id. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idYesResource id
fieldsNoTop-level output fields to include. Prefer only fields needed now; call again with more fields if needed.
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent and openWorld, so the safety profile is covered. The description adds a genuine behavioral trait beyond them: the workspace argument is scoped to this call only and 'does not change defaults', meaning the tool has no side effect on session state. Return format and any cost/latency behavior 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.

Conciseness5/5

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

Two sentences, zero filler. The core operation is front-loaded and the targeting caveat follows, which is the correct ordering for an agent scanning for the primary action.

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

Completeness3/5

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

For a read-only single-object inspect this is close to adequate, but with no output schema the description carries the burden of saying what an 'ontology object type' inspection returns and how it differs from ontology_describe or ontologies. Neither is addressed, leaving a real ambiguity in a family of ~150 sibling 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 100%, including the full workspace precedence chain (session_use, then process/saved defaults) and field-selection advice on 'fields'. The description merely restates the workspace shape already documented in the schema, adding no syntax or format detail beyond it, so baseline 3 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 ('Inspect'), a specific resource ('one ontology object type'), and the selector ('by id'), which cleanly separates it from the plural listing sibling whodb_platform_ontologies and from record-level tools. It does not, however, distinguish itself from the superficially similar whodb_platform_ontology_describe, so the differentiation is incomplete.

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 rather than stated: 'one ... by id' tells the agent this is a single-object lookup, and the workspace sentence hints that per-call targeting is the alternative to changing session defaults. There is no explicit when-to-use / when-not-to-use guidance and no named alternative (e.g. session_use or ontology_describe), so the agent must infer routing.

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

whodb_platform_ontology_action_executionsA
Read-onlyIdempotent

List recorded behavior action executions for one record, newest first, including status and result summary. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
limitNoMaximum executions to return (default 20)
fieldsNoOptional top-level output fields to include
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
record_keyYesPrimary key of the record
ontology_idYesOntology id

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/openWorld, so the safety profile is covered. The description adds real value beyond that: result ordering, what the returned rows contain, and the fact that passing a workspace does not alter session defaults. It stops short of noting truncation/pagination behavior beyond the limit param.

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 what is returned and how it is ordered, followed by the targeting caveat. No filler or repetition.

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

Completeness4/5

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

With no output schema, the description carries the return-shape burden and does so ('status and result summary', ordered newest first). Required inputs and workspace resolution are covered by the schema and its pointers to hosts/orgs/projects tools, so only minor gaps (empty-result behavior, limit cap) remain.

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

Parameters3/5

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

Schema description coverage is 100%, so all five parameters are already documented, and the schema itself notes that host 'Does not change the default host.' The description's workspace sentence largely restates that at the tool level, adding little parameter meaning beyond what the schema provides.

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

Purpose5/5

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

States a specific verb and resource ('List recorded behavior action executions for one record'), plus ordering ('newest first') and payload ('status and result summary'). This separates it from sibling execute-style tools like whodb_platform_action and the preview sibling whodb_platform_ontology_action_preview.

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 one record' phrasing implies the two required keys, and the workspace sentence explains per-call targeting versus session defaults. But there is no explicit when-to-use/when-not guidance and no mention of the neighboring preview tool, so usage must be inferred.

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

whodb_platform_ontology_action_previewA
Read-onlyIdempotent

Preview a behavior action without executing it: whether it is allowed, the proposed changes and the events it would emit. Show the preview to the user, then execute with whodb_platform_action execute_behavior. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
actionYesBehavior action apiName
fieldsNoOptional top-level output fields to include
valuesNoAction input values
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
record_keyNoPrimary key of the target record; omit for create-style actions
ontology_idYesOntology id

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, so safety is covered; the description adds real behavioral content by describing what the preview returns (allowance status, proposed changes, emitted events) and the per-call workspace targeting semantics. It does not cover failure modes or limits of the preview, which keeps it below 5.

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

Conciseness5/5

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

Three tight sentences, front-loaded with the core action and its non-execution guarantee, followed by next-step guidance and the targeting note. No filler or repetition of schema boilerplate beyond what is needed for context.

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 output schema, the description carries the return-value burden and does summarize the three things a preview yields, plus the follow-up tool and workspace targeting. It stops short of describing the shape or granularity of the proposed-changes/events payload, so an agent still has some uncertainty about what it will receive.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3. The description's only parameter-level addition is restating that workspace {host, org, project} targets a single call without changing defaults, which the schema already documents; record_key, values and fields get no mention.

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 (preview) plus resource (behavior action), with an explicit negation of what it does not do (without executing it). It also enumerates the preview payload — allowance, proposed changes, emitted events — so the agent can distinguish it from the sibling execution tool without opening the schema.

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

Usage Guidelines5/5

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

States the workflow condition directly: preview, show the result to the user, then execute via whodb_platform_action. The alternative tool is named explicitly, so the preview-then-execute pattern is unambiguous rather than inferred.

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

whodb_platform_ontology_aggregateA
Read-onlyIdempotent

Compute exact SQL aggregates (COUNT, SUM, AVG, MIN, MAX) over one ontology, optionally grouped and filtered.

Pass group_by for one row per group and metrics for the values; omit group_by for a single total row. where uses the same grammar as whodb_platform_ontology_query (for example {"status":"open","amount":{"gte":100}}); a raw platform WhereCondition object is also accepted. Prefer this over whodb_platform_ontology_query when exact totals matter or the entity is large. Results are capped by limit and the MCP --max-rows setting. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idYesOntology id
sortNoResult ordering by group column or metric alias
limitNoMaximum groups to return
whereNoFilter object using the same grammar as whodb_platform_ontology_query: {prop: value}, {prop: {op: value}}, _and/_or lists. Ops: eq, neq, gt, gte, lt, lte, contains, icontains, startswith, in, nin, between, isnull. A raw platform WhereCondition object is also accepted.
fieldsNoOptional top-level output fields to include
offsetNoGroup offset
metricsYesAt least one metric: COUNT, SUM, AVG, MIN, MAX
group_byNoProperties to group by; empty for a single-row total
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/openWorld, so the safety profile is covered. The description adds genuinely useful behavior beyond that: results are capped by limit and the MCP --max-rows setting, and the workspace object targets only this call without changing session defaults. It stops short of describing return shape or error behavior, so not a 5.

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

Conciseness4/5

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

Front-loaded with the core purpose, then scoping, filter grammar, sibling preference, limits, and workspace targeting in a tight sequence. Dense but each sentence carries distinct information; the lightly list-like middle clause 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?

For a 9-parameter tool with nested objects and no output schema, the description covers grouping behavior, filtering grammar, result caps, and workspace targeting well enough to call correctly. Only the exact return/labeling shape is left implicit, so slightly under full 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?

Schema coverage is 100%, so the schema already documents each parameter, giving a baseline of 3. The description goes beyond that by giving a concrete where example ({"status":"open","amount":{"gte":100}}) and clarifying the interplay of group_by and metrics, which encode the tool's row-shaping semantics rather than just restating field 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 and resource ('Compute exact SQL aggregates ... over one ontology') and names the exact operations supported. It is immediately distinguishable from read-oriented siblings like whodb_platform_ontology_query because it emphasizes exact aggregates.

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 tells the agent how to shape the call (group_by for per-group rows, omit for a single total) and names the alternative: 'Prefer this over whodb_platform_ontology_query when exact totals matter or the entity is large.' Both the when and the alternative are stated without inference.

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

whodb_platform_ontology_describeA
Read-onlyIdempotent

Describe ontologies in plain text plus structured entities, fields and relationships. Call this first when answering a data question so property names and links are known. Empty entities describes the whole project. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields to include
entitiesNoOntology apiNames to describe; empty describes every ontology in the project
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
include_inferredNoInclude relationships inferred from data, not just declared links

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds useful behavioral context: empty entities means whole-project scope, and workspace targets override per-call without mutating defaults. It does not mention response size or pagination behavior, keeping it below a 5.

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

Conciseness4/5

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

Four tight sentences with the purpose and the call-first instruction front-loaded, followed by scoping details. No filler, though the workspace sentence is somewhat 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?

For a read-only, zero-required-param describe tool with no output schema, the description covers what is returned, when to call it, and how scoping works. The only gap is that the include_inferred flag's effect is left entirely to the schema.

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

Parameters3/5

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

Schema coverage is 100%, so every parameter is already documented in the schema, establishing a baseline of 3. The description restates the empty-entities semantics and the per-call workspace override (both already in schema text) but says nothing about include_inferred, so it adds little 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 (Describe) and resource (ontologies) and enumerates the shape of the output (plain text plus structured entities, fields, relationships), which meaningfully distinguishes it from the plain list tool whodb_platform_ontologies and the summary tool whodb_platform_data_model_summary. It stops short of naming those siblings explicitly, so an agent still has to infer which sibling to skip.

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?

"Call this first when answering a data question so property names and links are known" gives clear, actionable when-to-use guidance and even establishes an ordering relative to other tools. It does not name a when-not condition or an inferior alternative, so it falls just short of the top band.

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

whodb_platform_ontology_embedding_jobsA
Read-onlyIdempotent

List embedding backfill jobs for one ontology with progress and errors. Use after whodb_platform_action reembed and before whodb_platform_ontology_similar. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idYesResource id
fieldsNoTop-level output fields to include. Prefer only fields needed now; call again with more fields if needed.
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, so the safety profile is covered. The description adds useful behavioral context: jobs include progress and errors, and workspace targeting is per-call without changing session defaults.

Agents need to know what a tool does to the world before 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 three tight sentences, front-loading the core purpose before workflow context and workspace behavior. It is appropriately sized, though the workspace sentence partially repeats structured schema information.

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

Completeness4/5

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

For a read-only list tool with rich annotations and no output schema, the description covers purpose, workflow position, return contents (progress and errors), and per-call targeting. It does not explain pagination or default result limits, but no such gaps are severe enough to prevent 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 100%, so the schema already documents id, fields, and workspace with more detail than the description. The description mentions workspace targeting and that it does not change defaults, but this is largely redundant with the schema's own workspace description.

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

Purpose5/5

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

The first sentence states a specific verb (List), resource (embedding backfill jobs), scope (for one ontology), and the key output attributes (progress and errors). It distinguishes itself from sibling tools by relating to whodb_platform_action reembed and whodb_platform_ontology_similar.

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

Usage Guidelines5/5

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

The description explicitly places the tool in a workflow: use after whodb_platform_action reembed and before whodb_platform_ontology_similar. This gives clear when-to-use guidance relative to specific alternatives.

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

whodb_platform_ontology_fast_lookupsA
Read-onlyIdempotent

List saved fast lookups for one ontology object type. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idYesResource id
fieldsNoTop-level output fields to include. Prefer only fields needed now; call again with more fields if needed.
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered without the description. The only added behavioral note — workspace targeting applies to this call without changing session defaults — largely restates the schema's own workspace description, and nothing is said about result volume or pagination.

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 purpose front-loaded before the workspace caveat. Every clause carries information.

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

Completeness4/5

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

For a simple read-only list tool with full schema coverage and no output schema, the description plus schema covers what an agent needs to invoke it. It could say more about what a fast lookup record contains or whether results are bounded, but nothing required for correct invocation 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 100%, so the baseline is 3. The description adds the useful framing that 'id' scopes to one ontology object type, but it does not clarify the id format or expand on 'fields' beyond the schema's own guidance, and the workspace sentence mirrors the schema verbatim.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 saved fast lookups') plus the scoping unit ('one ontology object type'), which separates it from the create/delete fast-lookup siblings by verb alone. It stops short of explicitly contrasting itself with whodb_platform_ontology_fast_lookup_suggestions or the create/delete pair, so it is clear but not sibling-differentiating.

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 verb 'List' implies read usage and the workspace sentence hints at per-call targeting, but there is no explicit when-to-use guidance, no mention of when to reach for fast_lookup_suggestions or create_ontology_fast_lookup instead, and no stated prerequisites (e.g. the object type must already exist). Usage is implied rather than directed.

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

whodb_platform_ontology_fast_lookup_suggestionsB
Read-onlyIdempotent

List suggested fast lookups for one ontology object type. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idYesResource id
fieldsNoTop-level output fields to include. Prefer only fields needed now; call again with more fields if needed.
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds one useful behavioral nuance — workspace targeting is per-call and does not mutate session defaults — but says nothing about what 'suggested' is derived from or how results are ordered/scoped.

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

Conciseness4/5

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

Two tight sentences with the core action front-loaded and no filler. The second sentence is somewhat redundant with the schema's workspace description, which keeps it from a perfect score.

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 read-only list tool with full schema coverage and no output schema, the essentials are present. What is missing is the meaning of 'suggested' (suggested relative to what, and how a result should be acted on via create_ontology_fast_lookup), which an agent needs to use the output correctly.

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

Parameters3/5

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

Schema description coverage is 100%, so id, fields and the nested workspace object are already fully documented in the schema. The description's workspace sentence largely restates what the schema's workspace description already says, adding no new syntax or constraint beyond the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 (suggested fast lookups) scoped to one ontology object type, so the agent knows it is a read of suggestions rather than records. However, it does not distinguish itself from the closely named sibling whodb_platform_ontology_fast_lookups or explain that creating requires whodb_platform_create_ontology_fast_lookup.

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 one ontology object type' implies the required id is an ontology object type, and the workspace sentence gives per-call targeting context. But there is no explicit when-to-use vs when-not, and no pointer to the alternative tools (ontology_fast_lookups for existing ones, create_ontology_fast_lookup to act on a suggestion).

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

whodb_platform_ontology_queryA
Read-onlyIdempotent

Query ontology rows with filters, search, joins, grouping and metrics. Use this to answer data questions instead of paging through whodb_platform_ontology_rows.

where grammar: {"status":"open"}, {"amount":{"gte":100}}, {"_or":[{"region":"EU"},{"region":"UK"}]}. Operators: eq, neq, gt, gte, lt, lte, contains, icontains, isnull. group_by + metrics (count, count_distinct, sum, avg, min, max) return one row per group. The server scans at most scan_limit rows (default 1000, max 5000) before filtering, so totals on large entities may be partial; use whodb_platform_ontology_aggregate for exact SQL totals. Policy-protected ontologies reject this query; fall back to whodb_platform_ontology_rows. Results are capped by limit and the MCP --max-rows setting. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
sortNoResult ordering
joinsNoJoin other ontologies by matching properties
limitNoMaximum rows to return
whereNoFilter object: {prop: value}, {prop: {op: value}}, or {_and: [...]} / {_or: [...]}. Ops: eq, neq, gt, gte, lt, lte, contains, icontains, isnull.
entityYesOntology apiName (not id). List with whodb_platform_ontologies.
fieldsNoOptional top-level output fields to include
offsetNoRow offset
searchNoFree-text search across searchable properties
metricsNoMetrics to compute, usually with group_by
group_byNoProperties to group by; pair with metrics
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
scan_limitNoRows scanned before filtering (default 1000, max 5000). Raise for large entities; use whodb_platform_ontology_aggregate for exact totals.
search_fieldsNoRestrict search to these properties

TDQS

A4.8/5.0
Behavior5/5

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

Goes well beyond the readOnly/idempotent annotations by disclosing non-obvious execution traits: the server scans at most scan_limit rows before filtering so totals may be partial, policy-protected ontologies reject the query, and results are further capped by the MCP --max-rows setting. These are exactly the behaviors an agent cannot infer from annotations or schema.

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

Conciseness4/5

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

Front-loaded with the purpose and routing decision in the first two sentences, then progressively adds grammar and caveats. Information-dense with almost no filler, though the grammar examples and workspace note make it longer than strictly minimal.

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

Completeness5/5

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

For a 13-parameter, nested-object query tool with no output schema, the description covers the critical gaps: scan/result capping semantics, group-by metric shape, access-control failure mode, and per-call workspace targeting. An agent has everything needed to call it correctly and to know when not to.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, but the description adds value with concrete where-grammar examples ({"amount":{"gte":100}}, {"_or":[...]}) and the note that group_by + metrics return one row per group. It doesn't explain limit/offset interaction or sort aliasing beyond what the schema says, keeping this short of a 5.

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 ('Query ontology rows') plus its capabilities (filters, search, joins, grouping, metrics), and immediately contrasts with the sibling whodb_platform_ontology_rows. An agent can distinguish this query tool from row-paging and from the aggregate tool without opening any schema.

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

Usage Guidelines5/5

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

Gives explicit positive routing ('Use this to answer data questions instead of paging through whodb_platform_ontology_rows'), a named alternative for exact totals (whodb_platform_ontology_aggregate), and a fallback path when policy-protected ontologies reject the query (whodb_platform_ontology_rows). When-to-use, when-not-to-use, and alternatives are all covered.

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

whodb_platform_ontology_record_capabilitiesA
Read-onlyIdempotent

Report which properties the signed-in user can read and write on an ontology record and which behavior actions are allowed, with denial codes. Call before writing or executing actions. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields to include
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
record_keyNoPrimary key of one record; omit for type-level capabilities
ontology_idYesOntology id

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description still adds value beyond them by disclosing the return content (allowed read/write properties, permitted actions, denial codes) even though no output schema exists, though it says nothing about auth prerequisites 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?

Three tight sentences, front-loaded with the report's contents before the usage trigger and the workspace note. Every sentence carries distinct information 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?

Given four parameters, a nested workspace object, no output schema, and rich annotations, the description covers purpose, when to invoke, and per-call targeting adequately. The main omission is that it does not explain what the denial codes signify or the difference in output scope when record_key is omitted, which is left to the schema.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all four parameters, including record_key semantics and workspace targeting. The description's workspace note ("per-call targeting without changing defaults") largely restates the schema's "Optional target for this call only" text, adding no syntax or format detail beyond it.

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

Purpose5/5

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

States a specific verb (Report) and resource (capabilities on an ontology record) and enumerates exactly what is returned: readable/writable properties plus allowed behavior actions with denial codes. This distinguishes it from sibling mutators like whodb_platform_update_ontology_record and whodb_platform_ontology_action by framing it as a pre-flight permission probe.

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?

"Call before writing or executing actions" gives a clear trigger condition that ties it to the write/action siblings. It stops short of naming an explicit alternative (e.g., comparing to whodb_platform_my_grants or resource_permissions) or stating when it can be skipped, but the intended usage window is unambiguous.

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

whodb_platform_ontology_reference_impactB
Read-onlyIdempotent

Count links, apps, functions, transforms and behaviors that depend on one ontology reference before removing it. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idYesResource id
fieldsNoTop-level output fields to include. Prefer only fields needed now; call again with more fields if needed.
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

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, idempotentHint=true and openWorldHint=true, so the safe-read profile is covered structurally. The description adds the pre-removal intent but does not describe what the counts look like, whether results are scoped/limited, or any caveats.

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

Conciseness4/5

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

Two sentences, front-loaded with the core action and following with the workspace targeting note. No filler; each sentence carries information, though the second sentence partially duplicates schema text.

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

Completeness3/5

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

With no output schema, the description does not explain the shape of the returned counts (per-category breakdown vs. total) or any truncation/pagination behavior. For a counting/dependency analysis tool this is a modest gap, but annotations and full schema coverage carry most of the burden.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents id, fields, and the nested workspace object thoroughly. The description's mention of workspace {host, org, project} 'for per-call targeting without changing defaults' largely restates what the schema's workspace description already says, adding little beyond the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 (Count) and an enumerated resource set (links, apps, functions, transforms, behaviors depending on one ontology reference), with the added framing of 'before removing it'. It is clear what the tool computes, though it does not explicitly distinguish itself from sibling impact tools like whodb_platform_deletion_impact or whodb_platform_change_impact.

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 'before removing it' implies a pre-deletion safety-check context, which gives the agent a usage cue. However, no alternative tools are named, and there is no explicit when-not guidance or comparison to the similar change/deletion impact siblings.

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

whodb_platform_ontology_referencesB
Read-onlyIdempotent

List shared ontologies referenced by the selected project and their status. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
nameNoOptional case-insensitive name substring filter for list tools
typeNoOptional type filter, for example provider type, transform trigger mode, or function language
limitNoMaximum list items to return; use offset to continue
fieldsNoTop-level output fields to include. Prefer only fields needed now; call again with more fields if needed.
offsetNoNumber of matching list items to skip
searchNoOptional case-insensitive search term; currently aliases name for list tools
statusNoOptional status filter for resources that expose status
deployedNoOptional function deployment filter: true or false
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
schema_modeNoOptional dataset schema mode filter

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so safety/idempotence need not be restated. The description adds the useful scoping fact that workspace {host, org, project} targets a single call without mutating session defaults, but that point is largely duplicated by the workspace field description in the schema, and it says nothing about result shape or limits given there is no output schema.

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

Conciseness4/5

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

Two tight sentences with the core purpose front-loaded and no filler. The second sentence is partly redundant with the workspace schema description, which keeps it from being fully economical.

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 read-only list tool with 100% schema coverage and no output schema, the description is minimally sufficient. However, with ten parameters including several generic-looking filters (deployed, schema_mode, type) whose relevance to ontology references is unclear, the definition does not help the agent understand which knobs actually apply here.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3 and the schema carries documentation for all ten parameters, including the mechanistic filters (limit/offset, search, fields). The description only highlights the workspace object and never explains which filters are meaningful for ontology references (e.g., whether status/deployed/type apply).

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 shared ontologies referenced by the selected project, plus their status. That is clearly distinguishable in kind from mutation siblings (add_ontology_record, delete_ontology_record), but it does not distinguish itself from closely related read siblings such as whodb_platform_shared_ontologies, whodb_platform_discover_shared_ontologies, or whodb_platform_ontologies.

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 and no named alternative, despite several near-neighbour tools in the same family (shared_ontologies, discover_shared_ontologies, ontology_reference_impact). The only contextual statement concerns workspace targeting, not tool selection.

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

whodb_platform_ontology_rowsA
Read-onlyIdempotent

Preview rows for one ontology object type.

Results are capped by the requested limit and the MCP --max-rows setting when provided. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idYesResource id
limitNoMaximum rows to return
fieldsNoOptional top-level output fields to include
offsetNoRow offset
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

A3.7/5.0
Behavior4/5

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

Annotations cover the safety profile (readOnlyHint, idempotentHint, openWorldHint), so the bar is lower, and the description adds real behavioral context the annotations don't: results are capped by both the requested limit and the MCP --max-rows setting, and the workspace block targets a host/org/project for a single call without altering session defaults.

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 paragraphs with the purpose front-loaded; every sentence carries information (the cap rules and the workspace targeting behavior) 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 no output schema, the description still covers the two non-obvious behaviors — result capping and per-call workspace overrides — for a read-only tool. It stops short of explaining the return shape or how it relates to sibling query/aggregate tools, so an agent has a small remaining gap.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, but the description adds meaning beyond the schema by explaining the --max-rows cap that interacts with 'limit' and clarifying that the workspace object is per-call only and leaves defaults untouched. The 'id' and 'fields' parameters' semantics still rest on the schema.

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

Purpose4/5

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

States a specific verb and resource: 'Preview rows for one ontology object type.' This distinguishes it from source_rows/dataset_rows by tying rows to an ontology object type, but it doesn't explicitly name the nearest siblings like whodb_platform_ontology_query or whodb_platform_dataset_rows, so an agent still has to infer which row-listing 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?

The description gives no when-to-use guidance and names no alternative. With siblings such as whodb_platform_ontology_query, whodb_platform_ontology_aggregate and whodb_platform_dataset_rows available, an agent gets no signal about when a capped row preview is preferable to a query or aggregate.

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

whodb_platform_ontology_similarA
Read-onlyIdempotent

Find rows similar to one row using the ontology's embeddings. Requires embeddingEnabled on the ontology and a completed embedding job; otherwise the platform returns an error explaining what is missing. Start a backfill with whodb_platform_action reembed. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
top_kNoNumber of neighbours (default 5)
whereNoOptional filter in the shared grammar to pre-filter candidates
fieldsNoOptional top-level output fields to include
row_idYesPrimary key of the reference row
entity_idYesOntology id with embeddingEnabled
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
propertiesNoProperties to include in results

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, so safety is covered structurally. The description goes beyond by disclosing that the platform returns an explanatory error when embeddings are not ready, and by clarifying that per-call workspace targeting does not change session defaults.

Agents need to know what a tool does to the world before 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 purpose, then prerequisites and the recovery action, then workspace targeting. Each sentence earns its place, though the workspace sentence is somewhat dense and could be trimmed since the schema already covers it.

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

Completeness4/5

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

For a read-only similarity tool with full schema coverage and a rich nested workspace object, the description supplies the key non-schema facts (embedding prerequisite, error behavior, reembed recovery, non-defaulting workspace). With no output schema, it doesn't describe return shape, but the role is otherwise fully covered.

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

Parameters3/5

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

Schema description coverage is 100%, so every parameter including the nested workspace fields is already documented in the schema. The description restates the workspace {host, org, project} targeting and its default-vs-override semantics, adding only marginal value over the schema baseline.

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

Purpose5/5

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

The description names a specific verb and resource ('Find rows similar to one row using the ontology's embeddings'), which is immediately distinguishable from sibling read tools like ontology_query or ontology_rows. An agent can tell what this does without opening the schema.

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

Usage Guidelines4/5

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

It states clear preconditions (embeddingEnabled on the ontology, completed embedding job) and the failure behavior, plus routes the agent to whodb_platform_action reembed to start a backfill. It stops short of explicitly contrasting this with the other recall/lookup siblings (e.g. fast_lookup, ontology_query).

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

whodb_platform_ontology_statsA
Read-onlyIdempotent

Return min, max, total and non-null counts for one ontology property, optionally filtered with the shared where grammar. Cheap way to profile a column before querying. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idYesOntology id
whereNoOptional filter in the shared grammar, for example {"status":"open"}
fieldsNoOptional top-level output fields to include
propertyYesOntology property apiName
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint/idempotentHint/openWorldHint, so safety is covered. The description adds real value beyond them: it enumerates the returned metrics and, importantly, notes that workspace targeting applies per-call 'without changing defaults,' which is a behavioral trait annotations do not express.

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

Conciseness5/5

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

Three tight sentences, front-loaded with the return contract, then usage rationale, then scoping behavior. Every sentence carries information 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 no output schema, the description compensates by naming the returned aggregates (min, max, total, non-null counts). The nested workspace parameter is fully documented in the schema, and safety is covered by annotations. Only a brief mention of the shared where grammar's limits 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 100%, so the schema already documents id, where, fields, property, and the nested workspace. The description restates the where grammar and per-call workspace behavior, adding only marginal semantics over what the schema provides. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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: 'Return min, max, total and non-null counts for one ontology property.' This is precise enough to separate it from sibling stats/aggregate tools like whodb_platform_ontology_aggregate and whodb_platform_ontology_query, 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 Guidelines4/5

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

'Cheap way to profile a column before querying' gives a clear when-to-use context that positions it ahead of the query tools. It stops short of explicit when-not conditions or naming the sibling it substitutes for, so it is clear context without exclusions.

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

whodb_platform_org_domainsB
Read-onlyIdempotent

List domains configured for the selected organization. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields
team_idNoTeam id for team members
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
resource_idNoResource id
resource_typeNoResource type, for example dataset, app, or function

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds the useful scoping behavior that workspace targeting is per-call and does not change defaults, but it does not describe return shape, pagination, or auth requirements 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?

Two sentences, front-loaded with the purpose before the targeting note, with no filler. The second sentence is largely redundant with the schema's workspace description, which slightly dilutes value but does not bloat the text.

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

Completeness4/5

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

For a read-only list tool whose annotations carry the safety profile and which has no output schema, the description covers the essential purpose and targeting semantics. It is sufficient to call correctly, though it omits whether results are paginated or empty on no-match.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all five parameters, including the nested workspace object. The description only restates the workspace {host, org, project} fields, adding no syntax or semantics beyond what the schema provides. Baseline 3 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 domains configured for the selected organization'), which is unambiguous. However, it does not differentiate itself from similar org-scoped read siblings like whodb_platform_orgs, whodb_platform_org_members, or whodb_platform_org_sso; the agent must infer the distinction 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 explains what the tool returns but gives no when-to-use guidance, no exclusions, and names no alternative. An agent is left to infer why it would call this versus org_sso or org_resources when hunting for org configuration data.

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

whodb_platform_org_membersB
Read-onlyIdempotent

List members of the selected organization. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields
team_idNoTeam id for team members
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
resource_idNoResource id
resource_typeNoResource type, for example dataset, app, or function

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, openWorld, so safety profile is covered. The description adds the workspace-override behavior (per-call targeting without changing defaults), which is useful context beyond annotations, but says nothing about pagination, output shape, or filtering.

Agents need to know what a tool does to the world before 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, front-loaded with the purpose, then the targeting nuance. No waste, though slightly redundant with schema.

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 5-param read tool with full schema coverage and no output schema, the description is adequate but thin: it omits what members are returned, pagination, and how team_id/resource_id interact with org member listing. Not misleading, 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 100%, so the baseline is 3. The description restates the workspace {host, org, project} targeting concept, adding nothing the schema doesn't already document in far more 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 (members of the selected organization), clearly distinguishing it from whodb_platform_team_members and whodb_platform_org_resources. It doesn't explicitly name those siblings, 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 Guidelines3/5

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

The description explains per-call targeting via workspace but gives no explicit when-to-use guidance, no condition selecting it over siblings like team_members, and no prerequisites. 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.

whodb_platform_org_package_installationsB
Read-onlyIdempotent

List package installations across the selected organization, optionally for one package. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idNoPackage or installation id
fieldsNoOptional top-level output fields
searchNoOptional package library search
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint and idempotentHint, so the safety profile is covered. The description adds the default-inheritance behavior of workspace targeting beyond what annotations provide, but says nothing about return shape or pagination for what is presumably a potentially large listing.

Agents need to know what a tool does to the world before 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 front-loaded sentences that establish scope first and the targeting mechanic second, with no filler. Slightly compressed phrasing ('optionally for one package') costs a little clarity but the structure 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?

For a read-only listing tool whose annotations and full schema coverage carry most of the burden, this is adequate. The notable remaining gap is disambiguation from whodb_platform_package_installations and the absence of any note on result volume or ordering.

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

Parameters3/5

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

Schema description coverage is 100%, so every parameter is already documented in the schema and the baseline is 3. The description adds only that id may scope to a single package; it does not clarify fields, search, or how the nested workspace object interacts beyond restating 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 (package installations) scoped to the selected organization, with an optional single-package filter. However, it does not distinguish itself from the near-identically named sibling whodb_platform_package_installations, so an agent cannot tell from the description alone which of the two to pick.

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

Usage Guidelines3/5

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

Explains the per-call workspace targeting mechanic (omit to fall back to session default) and points at discovery tools, which is useful operational context. It stops short of when-to-use guidance against the sibling tools that overlap in scope, and gives no explicit exclusions.

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

whodb_platform_org_resourcesB
Read-onlyIdempotent

List resources visible in the selected organization. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields
team_idNoTeam id for team members
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
resource_idNoResource id
resource_typeNoResource type, for example dataset, app, or function

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, idempotentHint=true, and openWorldHint=true, covering the safety and idempotency profile. The description adds only the per-call-targeting behavior (no mutation of defaults), which is closer to parameter semantics than behavioral disclosure; there is no note on pagination, result size, or visibility/permission rules.

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

Conciseness4/5

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

Two tight sentences with the core scope front-loaded and the targeting note second. It is appropriately sized, though the workspace restatement slightly duplicates schema content rather than adding new 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?

For a read-only, no-required-param listing tool with full schema coverage and annotations, the safety and parameter story is covered. What is missing is what "resources" concretely includes, any filtering interplay between resource_id/resource_type/team_id, and the boundary against project-scoped siblings; there is no output schema to compensate.

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

Parameters3/5

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

Schema description coverage is 100%, so fields, team_id, resource_id, resource_type, and the nested workspace object are all documented in the schema. The description restates the workspace {host, org, project} shape but adds no format, defaulting, or filtering nuance beyond what the schema already provides; baseline 3 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 ("List") and resource ("resources") scoped to "the selected organization," which lets an agent distinguish it from project-scoped listing. It does not, however, name or contrast with the close sibling whodb_platform_project_resources, leaving the boundary between org-wide and project-wide listing to inference.

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

Usage Guidelines3/5

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

The second sentence explains that workspace {host, org, project} can be passed for per-call targeting without changing defaults, which is useful usage context. It gives no guidance on when to choose this tool over whodb_platform_project_resources, whodb_platform_user_owned_resources, or whodb_platform_user_resource_access, so 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.

whodb_platform_orgsA
Read-onlyIdempotent

List hosted WhoDB organizations visible to the authenticated user.

Use this after whodb login to discover valid organization ids, slugs, and names before selecting a workspace. This tool is read-only. Prefer fields such as ["id", "name", "slug", "selected"] for discovery. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields to include in items
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

Output Schema

NameRequiredDescription
hostNo
orgsYes
countYes
errorNo
itemsNo
scopeNo
fieldsNo
commandsNo
recoveryNo
warningsNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
setup_statusNo
suggested_toolsNo

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the bar is lower; even so, the description adds real value by explaining that the workspace object is per-call targeting only and does not change defaults. The sentence 'This tool is read-only' merely restates the annotation and does not add information.

Agents need to know what a tool does to the world before 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 what the tool returns and followed by usage and parameter advice. The 'This tool is read-only' clause duplicates the annotation and is the only real waste.

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 and full schema descriptions, the description covers ordering (after login), purpose (discover org identifiers), and per-call override behavior. Only minor items like pagination or result limits are absent, which is acceptable given the output schema.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3; the description earns a step up by recommending specific fields such as ["id", "name", "slug", "selected"] for discovery, which the schema's generic 'Optional top-level output fields' text does not convey. The workspace override semantics are also reinforced in prose.

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

Purpose4/5

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

States a specific verb and resource ('List hosted WhoDB organizations') plus the visibility scope ('visible to the authenticated user'). It implies its position ahead of workspace/project selection, so an agent can distinguish it from whodb_platform_projects or whodb_platform_hosts, 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 Guidelines4/5

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

'Use this after whodb login to discover valid organization ids, slugs, and names before selecting a workspace' gives explicit sequencing and preconditions. There is no explicit when-not or named alternative, so it stops short of the top band.

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

whodb_platform_org_ssoB
Read-onlyIdempotent

List SSO providers configured for the selected organization without client secrets. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields
team_idNoTeam id for team members
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
resource_idNoResource id
resource_typeNoResource type, for example dataset, app, or function

TDQS

B3.4/5.0
Behavior4/5

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

Annotations already carry readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds genuine value beyond them: results exclude client secrets, and the workspace parameter is per-call only and never mutates the session default.

Agents need to know what a tool does to the world before 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 no filler, and the core capability ('list SSO providers, secrets omitted') is front-loaded before the targeting note. Nothing could be cut 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?

With no output schema, the description usefully tells the agent secrets are stripped from results. However, three schema parameters (team_id, resource_id, resource_type) appear unrelated to listing SSO providers and are left unaddressed, which muddies what the correct call looks like.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents fields, workspace (host/org/project), team_id and resource_id. The description restates the workspace targeting behavior, which is largely redundant with the schema's 'Optional target for this call only', so it lands at the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 SSO providers configured for the selected organization', plus a scope qualifier ('without client secrets'). This is clearly distinguishable from sibling org tools like whodb_platform_org_domains or whodb_platform_org_members, though it never names an 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 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 or when-not-to-use guidance and names no alternative. It implies usage by requiring an organization context, but nothing tells an agent when this tool is the right pick over the other org-scoped listing tools.

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

whodb_platform_packageB
Read-onlyIdempotent

Inspect one hosted package and its requirements. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idNoPackage or installation id
fieldsNoOptional top-level output fields
searchNoOptional package library search
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds one genuinely useful behavioral fact — the workspace target is per-call and does not mutate session defaults — but says nothing about output shape, pagination, or what happens when no id is supplied.

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

Conciseness4/5

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

Two sentences, purpose front-loaded, zero filler. The second sentence is efficient, though it partially overlaps the workspace schema description rather than introducing new detail.

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

Completeness4/5

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

For a read-only inspection tool with a fully documented schema and no output schema, this is close to sufficient. The remaining gap is ambiguity around the optional id — the description never says what is inspected when id is omitted.

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

Parameters3/5

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

Schema description coverage is 100%, so all four parameters including the nested workspace object are already documented in the schema. The description's note that workspace applies 'without changing defaults' largely restates the schema's 'Optional target for this call only,' so it adds only marginal 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 and resource: 'Inspect one hosted package and its requirements,' which cleanly separates it from the plural listing siblings (whodb_platform_packages, whodb_platform_package_installations) and from the library search (whodb_platform_package_library). It does not name any sibling explicitly, so it stops short of a 5.

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

Usage Guidelines2/5

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

There is no statement of when to reach for this tool versus whodb_platform_packages, whodb_platform_shared_package, or whodb_platform_package_library. The only guidance in the description is about workspace targeting, which is invocation mechanics rather than tool selection.

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

whodb_platform_package_installationsB
Read-onlyIdempotent

List hosted package installations in the selected project. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idNoPackage or installation id
fieldsNoOptional top-level output fields
searchNoOptional package library search
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds one useful behavioral note—workspace targeting applies per call 'without changing defaults'—but says nothing about pagination, result size, or result 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 tight sentences with the core purpose front-loaded and zero filler. Nothing is redundant or padded.

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

Completeness4/5

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

A read-only list tool whose annotations cover the safety profile and whose schema fully documents all four parameters, so no return-value exposition is needed. It is nearly complete; the only omission is how results are scoped or paginated beyond the project.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3. The description's mention of workspace per-call targeting largely restates the schema's own 'Optional target for this call only. Omit to use the session default...' text, adding no format or syntax detail 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 ('List hosted package installations') and scopes it to 'the selected project.' The project scoping implicitly distinguishes it from the org-level sibling whodb_platform_org_package_installations, but does not name that alternative explicitly.

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

Usage 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 routing to alternatives (whodb_platform_org_package_installations, whodb_platform_package, whodb_platform_package_library). The workspace sentence is parameter semantics, not usage guidance, so the agent gets no help choosing this tool over its many siblings.

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

whodb_platform_package_installation_updateB
Read-onlyIdempotent

Check whether a package installation has an update. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idNoPackage or installation id
fieldsNoOptional top-level output fields
searchNoOptional package library search
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

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, idempotentHint=true, and openWorldHint=true, so the safety profile is covered. The description adds useful behavioral context that the workspace argument targets only this call 'without changing defaults,' distinguishing it from session-wide defaults. It does not describe what the check returns, but the annotations carry most of the burden.

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

Conciseness5/5

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

Two tight sentences, front-loading the core purpose before the targeting detail, with no 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?

The tool is a simple read-only check with fully documented parameters, and targeting behavior is explained. However, with no output schema present, the description does not clarify what the check returns or its form, leaving a modest gap in an otherwise adequate definition.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents id, fields, search, and the workspace object. The description only restates the workspace {host, org, project} shape, adding no format or syntax detail beyond the schema, so the baseline 3 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: 'Check whether a package installation has an update.' This clarifies the operation despite the ambiguous 'update' in the tool name, which could otherwise read as a mutation. It does not explicitly differentiate itself from siblings like whodb_platform_package_installations or whodb_platform_package_library, keeping it 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 says when to use this check versus the many adjacent package/installation siblings, nor any preconditions. The second sentence covers workspace targeting mechanics, not when-to-use guidance, so 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.

whodb_platform_package_libraryA
Read-onlyIdempotent

Search packages shared with the organization or available through the package library. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idNoPackage or installation id
fieldsNoOptional top-level output fields
searchNoOptional package library search
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

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, idempotentHint=true, and openWorldHint=true, so safety and repeatability are covered. The description adds the fact that workspace targeting is per-call and does not mutate session defaults, which is useful context, but it says nothing about result size, pagination, or how the two package sources are combined.

Agents need to know what a tool does to the world before 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 purpose leads and the targeting caveat follows. The second sentence partially duplicates the workspace schema description, which is the only minor 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?

No output schema exists, but the tool is read-only, takes no required parameters, and all four parameters are fully documented in the schema, so an agent can invoke it correctly. The remaining gap is sibling disambiguation across the many package-related tools, which the description never addresses.

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

Parameters3/5

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

Schema description coverage is 100%, including detailed nested workspace docs ('Omit to use the session default set by whodb_platform_session_use...'), and the description's second sentence largely restates that. A 3 baseline is appropriate since the schema, not the description, carries parameter 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 and resource ('Search packages shared with the organization or available through the package library'), so the agent knows it is a read/search operation over packages. However, it does not distinguish itself from close siblings like whodb_platform_packages, whodb_platform_package, or whodb_platform_shared_package, and the 'or' phrasing leaves the scope of the result set slightly ambiguous.

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

Usage Guidelines3/5

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

The only usage guidance is about the workspace parameter ('per-call targeting without changing defaults'), which implicitly suggests preferring whodb_platform_session_use for persistent defaults. There is no statement of when to pick this tool over whodb_platform_packages or whodb_platform_shared_package, and no exclusions or prerequisites.

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

whodb_platform_packagesB
Read-onlyIdempotent

List hosted package versions available in the selected project. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idNoPackage or installation id
fieldsNoOptional top-level output fields
searchNoOptional package library search
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds that the call is non-destructive to session defaults via per-call workspace targeting, which is useful, but it omits anything about result volume, pagination or ordering that the annotations cannot convey.

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

Conciseness4/5

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

Two tight sentences with the core purpose front-loaded and the workspace behavior second. Nothing is wasted, though the second sentence largely restates schema-level workspace semantics rather than adding new 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?

For a read-only, zero-required-param list tool with full schema coverage and no output schema, the essentials are present. But in a sibling set crowded with near-identical package tools, the description lacks the disambiguation an agent needs to confidently route here.

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

Parameters3/5

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

Schema description coverage is 100%, so every parameter (id, fields, search, workspace and its nested members) is already documented in the schema. The description adds no format, syntax or interaction detail beyond what the schema states, so the baseline 3 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?

The description gives a clear verb+resource ('List hosted package versions') scoped to the selected project. However, it never differentiates itself from the many similar siblings (whodb_platform_package, whodb_platform_package_library, whodb_platform_project_active_versions), and the name 'packages' versus the description's 'package versions' leaves the granularity (package vs. version) slightly ambiguous.

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 named alternative. The only contextual sentence concerns the workspace parameter ('per-call targeting without changing defaults'), which is parameter mechanics rather than task routing. An agent facing package_library/package/package_installations gets no help choosing.

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

whodb_platform_pendingA
Read-onlyIdempotent

List pending hosted WhoDB platform writes awaiting confirmation.

Use this to recover confirmation tokens returned by hosted platform write tools. Preview output contains metadata and changed field names only; it never includes credential or secret values. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

Output Schema

NameRequiredDescription
errorNo
scopeNo
pendingYes
recoveryNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
request_idNo
suggested_toolsNo

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, idempotentHint=true and openWorldHint=true, so the safety profile is covered. The description adds real value beyond that by scoping the return content: preview output carries metadata and changed field names only and never exposes credential or secret values. It omits how long confirmation tokens remain valid, which is material for a tool whose sole job is recovering them.

Agents need to know what a tool does to the world before 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 front-loaded sentences with no filler: purpose, usage, output-safety, then parameter note. The final workspace sentence is partially redundant with the schema's own description of per-call targeting, which is the only wasted effort.

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

Completeness4/5

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

An output schema exists, so return shape need not be re-explained, and the single parameter is fully documented. The description covers purpose, invocation trigger, and output safety adequately. The remaining gap is token lifetime / staleness behavior, which matters given this tool exists specifically to hand back confirmation tokens.

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

Parameters3/5

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

Schema coverage is 100% and the nested workspace object already documents each of host/org/project, their fallback order, and the discovery siblings. The description's "Accepts workspace {host, org, project} for per-call targeting without changing defaults" largely restates what the schema already says, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 (pending hosted platform writes awaiting confirmation), plus the secondary function of recovering confirmation tokens. It is distinguishable from the massive sibling set by the 'awaiting confirmation' framing, though it never names whodb_platform_confirm, the obvious follow-up sibling, so the boundary 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 Guidelines4/5

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

"Use this to recover confirmation tokens returned by hosted platform write tools" gives an explicit, actionable trigger for calling it. It stops short of the complementary guidance — e.g. that retrieval should be followed by whodb_platform_confirm, or when to skip this and re-run the write tool — so the workflow context is clear but incomplete.

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

whodb_platform_preview_create_packageA
Read-onlyIdempotent

Preview package contents and validation issues before creating a package. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
input_jsonYesJSON object matching the selected package preview input type

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/openWorld, so the bar is lower, and the description still adds value: it states the call returns validation issues (a preview surface) and that workspace targeting is per-call and 'without changing defaults'. It does not, however, detail what validation output looks like or any 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.

Conciseness4/5

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

Two tight sentences, front-loaded with the core action before the workspace note. Nothing is wasted, though it is thin rather than optimally informative.

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

Completeness4/5

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

For a read-only preview with no output schema, the description does signal what comes back (contents and validation issues) and clarifies the per-call workspace override. The main residual gap is that the shape of the required input_json is never explained.

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

Parameters3/5

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

Schema coverage is 100%, so the workspace/fields semantics are already documented in the schema; the description's restatement of {host, org, project} targeting is largely redundant. The required input_json remains opaque ('matching the selected package preview input type') in both places, so no compensation happens. Baseline 3.

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

Purpose4/5

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

Names a specific verb (preview) and resource (package contents and validation issues) plus its timing relative to creation. That distinguishes it from the import/install preview siblings, but it never names the actual create tool it precedes, leaving the routing one step 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?

"before creating a package" implies the moment to use it, but there is no explicit when-not, no named alternative (e.g. the create package sibling or the import/install previews), and no prerequisites. Usage is inferable but not guided.

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

whodb_platform_preview_import_packageB
Read-onlyIdempotent

Preview package import contents, requirements, and conflicts. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
input_jsonYesJSON object matching the selected package preview input type

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds one useful behavioral fact: workspace targeting is per-call and does not change session defaults. It does not describe what the preview output contains or any side-effect-free confirmation flow.

Agents need to know what a tool does to the world before 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 purpose front-loaded and no filler. Slightly marred by devoting half the text to workspace targeting that the schema already explains.

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 read-only preview with annotations carrying the safety profile and no output schema, the description does name what is previewed (contents, requirements, conflicts). But it omits how this preview differs from the several near-identical preview siblings and what the agent should do with the result, leaving a real gap in a crowded tool family.

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

Parameters3/5

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

Schema coverage is 100%, so the schema already documents workspace, input_json, and fields in detail, including the per-call targeting semantics. The description essentially restates the workspace behavior, adding little beyond what the structured schema provides. Baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 (Preview) and resource (package import), and names what is surfaced: contents, requirements, and conflicts. An agent can tell this is a read-only preview. It does not, however, distinguish itself from the many closely-named siblings (preview_install_package, preview_shared_import, preview_create_package), so it stays at 4.

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

Usage Guidelines2/5

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

The second sentence is parameter guidance about workspace targeting, not when-to-use guidance. There is no statement of when to prefer this over preview_install_package or the other preview/bundle siblings, 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.

whodb_platform_preview_install_packageB
Read-onlyIdempotent

Preview package installation contents, requirements, and conflicts. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
input_jsonYesJSON object matching the selected package preview input type

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, idempotentHint=true, and openWorldHint=true, so the safety profile is fully covered. The description adds that workspace targeting is per-call and does not change defaults, which is useful scope context but is also present in the schema.

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

Conciseness4/5

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

Two short sentences, front-loaded with the purpose and no wasted verbiage. Efficient and easy to scan, though terse for a tool with this many siblings.

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 read-only, idempotent nature is carried by annotations, and the description enumerates what the preview returns (contents, requirements, conflicts). There is no output schema, but for a preview tool the described outputs are sufficient; only routing vs sibling previews 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 100%, so all three parameters, including the nested workspace object, are documented in the schema itself. The description only restates the workspace targeting behavior, adding no syntax or format detail beyond it; baseline 3 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: previews a package installation's contents, requirements, and conflicts. That distinguishes it from the forbidden siblings like whodb_platform_package (detail) or whodb_platform_preview_import_package, though it never names an 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 Guidelines2/5

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

No when-to-use guidance. With siblings such as preview_import_package, preview_shared_install, and preview_shared_import, the agent gets no criteria for choosing this preview over those, nor whether it is a required step before a real install.

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

whodb_platform_preview_shared_importB
Read-onlyIdempotent

Preview import of a shared package. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
input_jsonYesJSON object matching the selected package preview input type

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, idempotentHint=true, and openWorldHint=true, so safety is covered. The description adds one useful behavioral detail — that workspace targeting is per-call and 'without changing defaults' — but says nothing about what the preview produces or validates, so it adds only modest value beyond the annotations.

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

Conciseness4/5

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

Two tight sentences, front-loaded with the purpose followed by the targeting constraint. Nothing is wasted, though the phrasing is terse enough that it under-explicates rather than over-explains.

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 no output schema, the description carries more burden for a tool whose result is a 'preview', yet it never describes what the preview returns or how to construct the required opaque input_json beyond 'matching the selected package preview input type'. For a preview operation the safety profile is fine, but the agent is left to infer the call's shape and output.

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

Parameters3/5

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

Schema description coverage is 100%, so all three parameters (fields, workspace, input_json) are already well documented in the schema, including the workspace default-resolution chain. The description's restatement of workspace {host, org, project} and 'without changing defaults' only marginally extends the schema, which sets the baseline at 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ('Preview import of a shared package'), and the word 'shared' distinguishes it somewhat from generic siblings like whodb_platform_preview_import_package. However, it never explains what 'preview' means here (dry-run? validation?) or how it differs from the several other preview_* siblings such as preview_install_package or preview_shared_install.

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

Usage Guidelines2/5

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

There is no explicit when-to-use or when-not-to-use guidance and no routing among the many preview/import siblings. The only usage hint ('per-call targeting without changing defaults') is embedded and does not tell the agent when this tool is the right choice versus its alternatives.

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

whodb_platform_preview_shared_installB
Read-onlyIdempotent

Preview installation of a shared package. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
input_jsonYesJSON object matching the selected package preview input type

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, idempotentHint=true, and openWorldHint=true, so the safety profile is covered. The description adds the useful detail that workspace targeting is per-call and 'without changing defaults,' but says nothing about cost, latency, or what the preview surfaces.

Agents need to know what a tool does to the world before 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 action front-loaded and the parameter note following. No wasted clauses, though the second sentence could be 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?

For a preview tool, the return is the substance, and with no output schema the description should clarify what the preview reveals (e.g., planned changes, conflicts). The safety and targeting context is adequate, but the agent does not know what a successful preview yields.

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

Parameters3/5

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

Schema coverage is 100%, so the schema already documents fields, workspace (host/org/project), and input_json fully. The description merely restates the workspace shape without adding syntax, constraints, or examples beyond the schema, making the baseline 3 appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 (Preview) and resource (installation of a shared package), which lets an agent identify the operation. However, it does not distinguish itself from closely named siblings such as preview_install_package or preview_shared_import, leaving the 'shared' qualifier's significance unexplained.

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

Usage Guidelines2/5

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

The word 'Preview' implies a dry-run and the sentence notes per-call workspace targeting, but there is no explicit when-to-use, no when-not-to-use, and no routing to alternatives like preview_install_package or the actual install tool. Guidance is left almost entirely to inference.

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

whodb_platform_project_accessB
Read-onlyIdempotent

Read the selected project's resource access matrix. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields
team_idNoTeam id for team members
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
resource_idNoResource id
resource_typeNoResource type, for example dataset, app, or function

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds only the per-call targeting note ('without changing defaults'), which largely restates the workspace schema. It says nothing about what the 'access matrix' contains or how large a result to expect.

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

Conciseness5/5

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

Two sentences, front-loaded with the purpose and followed by the targeting constraint. No filler, no redundancy in surface 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 read tool with no output schema, the description should explain what the matrix reports and how resource_id/resource_type/team_id filter it. It leaves those relationships unexplained, so an agent knows what the tool is called for but not what it will actually see back.

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

Parameters3/5

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

Schema description coverage is 100%, so all five parameters are documented in the schema itself — baseline 3. The description's workspace {host, org, project} sentence duplicates what the schema's workspace description already says ('Optional target for this call only. Omit to use the session default...'), adding no new 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 and resource: 'Read the selected project's resource access matrix.' The project-level scope distinguishes it somewhat from siblings like whodb_platform_resource_access and whodb_platform_user_resource_access, but the description never names or contrasts those alternatives, 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 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. The second sentence describes how to target a workspace per call, which is schema mechanics rather than selection criteria. With several near-identical siblings (resource_access, resource_permissions, resource_types_access, my_grants, user_resource_access), the absence of any routing rule 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.

whodb_platform_project_active_versionsB
Read-onlyIdempotent

List active production versions in the selected project. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idYesObject id
fieldsNoOptional top-level output fields
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
object_typeYesVersionable object type: app, function, transform, dataset, or ontology

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds a useful behavioral note that the workspace argument targets a call without changing session defaults, but says nothing about return shape, ordering, or pagination for a list operation.

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

Conciseness4/5

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

Two tight sentences that front-load the operation and then the targeting behavior, with no filler. Slightly redundant against the schema's own workspace description, keeping it short of a 5.

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 no output schema and a nested workspace argument, the description is only partially complete: it never clarifies what a 'version' record contains or how results relate to the required object_type/id. The annotations cover safety, but the listing semantics remain underspecified.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents id, fields, object_type and the nested workspace properties. The description's workspace note ('per-call targeting without changing defaults') largely restates what the schema's workspace description already says. Baseline 3 applies when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 active production versions') scoped to a project, which is clearer than a bare name. However, it does not differentiate itself from the sibling 'whodb_platform_active_version' (singular) or 'whodb_platform_object_versions', and the described project-level scope sits oddly against the required id/object_type params, which imply per-object listing.

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 the singular active_version or object_versions siblings. The agent is left to infer when this list tool should be chosen over its close alternatives.

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

whodb_platform_project_createA
Destructive

Create a hosted WhoDB project in an organization.

Pass org when the selected organization is not the intended target. Default mode returns a confirmation token; do not call whodb_platform_confirm until the user approves the project creation. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
orgNoOrganization id, slug, or name. Defaults to the selected organization when available.
nameYesProject name
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
descriptionNoProject description

Output Schema

NameRequiredDescription
errorNo
scopeNo
statusNo
warningNo
commandsNo
recoveryNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
result_jsonNo
setup_statusNo
suggested_toolsNo
confirmation_tokenNo
confirmation_actionNo
confirmation_expiryNo
confirmation_previewNo
idempotency_replayedNo
confirmation_requiredNo

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare destructive, non-idempotent, open-world, non-read-only, so the safety profile is covered. The description adds genuinely new behavior: default mode returns a confirmation token and confirmation must wait for user approval, plus that workspace targeting does not mutate defaults. It does not state whether creation is reversible or what the token payload looks like, but the output schema may carry 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?

Four sentences, front-loaded with purpose and the confirmation workflow; nothing is filler. Some phrasing (workspace targeting) restates the workspace schema description, costing a little density.

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 destructive, non-idempotent mutation with nested workspace object and a confirmation gate is adequately explained: targeting precedence, approval gating, and default preservation are all present. With an output schema and full parameter coverage, the remaining gaps (reversibility, rate limits) are minor.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3. The description still adds intent-level meaning the schema lacks: org should only be passed when it differs from the selected organization, and workspace is per-call only and leaves defaults unchanged.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 hosted WhoDB project in an organization") that clearly distinguishes it from project_delete, project_rename, and project_access siblings. It never names an alternative tool explicitly, so an agent must infer the boundary against the generic whodb_platform_create.

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 concrete selection rules for the org parameter ("Pass org when the selected organization is not the intended target") and a strict do-not-call-until-approved rule for whodb_platform_confirm. There is no guidance on when to prefer this over sibling creation tools, but the in-scope conditional behavior is well covered.

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

whodb_platform_project_deleteA
Destructive

Delete a hosted WhoDB project.

This is destructive. Pass project as id, slug, or name and org when needed for disambiguation. Default mode returns a confirmation token; do not call whodb_platform_confirm until the user explicitly approves the deletion. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
orgNoOrganization id, slug, or name. Defaults to the selected organization when available.
projectYesProject id, slug, or name
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

Output Schema

NameRequiredDescription
errorNo
scopeNo
statusNo
warningNo
commandsNo
recoveryNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
result_jsonNo
setup_statusNo
suggested_toolsNo
confirmation_tokenNo
confirmation_actionNo
confirmation_expiryNo
confirmation_previewNo
idempotency_replayedNo
confirmation_requiredNo

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, idempotentHint=false, and openWorldHint=true, so the safety profile is known. The description adds genuinely non-redundant behavior: the confirmation-token gating and user-approval requirement, plus the fact that workspace targeting is per-call only and does not change defaults.

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

Conciseness4/5

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

Four short sentences with no filler; the destructive warning and confirmation gating are front-loaded where they matter most. Slight redundancy with schema-documented parameter forms 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?

With rich annotations, an output schema, and full parameter documentation, the description supplies the one thing structured fields can't: the confirm-token workflow. Complete enough for correct invocation, though sibling differentiation against whodb_platform_delete is 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 100%, so project/org/workspace semantics (id, slug, or name; org for disambiguation; per-call workspace) are already fully documented. The description restates these rather than adding new meaning, which is the expected baseline-3 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 and resource ("Delete a hosted WhoDB project") rather than a generic delete. It does not explicitly name the sibling whodb_platform_delete or source_delete as alternatives, so an agent must infer that this targets hosted projects only.

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?

Clear operational context: it flags destructiveness and prescribes a two-step flow — default mode returns a confirmation token and whodb_platform_confirm must not be called until the user approves. It lacks explicit guidance on when to prefer this over the generic whodb_platform_delete.

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

whodb_platform_project_healthA
Read-onlyIdempotent

Return a compact health summary for the selected hosted project.

Use this for readiness diagnostics after whodb_platform_workspace_summary or whodb_platform_gap_analysis. It combines project counts, readiness checks, warnings, selected scope, and top suggested next actions. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
goalNoOptional user goal used to keep suggested actions relevant.
fieldsNoTop-level output fields to include, for example actions, warnings, goal.
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
omit_filesNoOmit root folder file and folder summaries. Defaults to false.
function_idNoFor runtime readiness, inspect the latest persisted run of this function without executing it.
omit_lineageNoOmit project lineage summary. Defaults to false.

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint, idempotentHint, openWorldHint), so credit here goes to the extra context: the response contents are enumerated and function_id is described as inspecting the latest persisted run "without executing it," which prevents a costly misinterpretation. No mention of permission requirements, latency, or payload 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 sentences with the purpose front-loaded ahead of the sequencing hint and the targeting note. The content list in sentence two is slightly dense but every clause carries real 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 output schema, the description does the right thing by summarizing what the response bundles together, and all six optional params are schema-documented. Only a rough sense of the response's shape or size is missing, which is a minor gap for a read-only diagnostic.

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

Parameters3/5

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

Schema coverage is 100% and every parameter already has a description, so the baseline is 3. The description restates the workspace targeting behavior ("per-call targeting without changing defaults") and the non-executing function_id behavior already in the schema, and never mentions goal, fields, omit_files, or omit_lineage.

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

Purpose5/5

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

The first sentence states a specific verb and resource ("Return a compact health summary for the selected hosted project") and the second enumerates the exact content (project counts, readiness checks, warnings, scope, suggested actions). Naming whodb_platform_workspace_summary and whodb_platform_gap_analysis as predecessors lets an agent place it among the many diagnostic siblings.

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

Usage Guidelines4/5

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

The description explicitly says when to reach for it: "readiness diagnostics after whodb_platform_workspace_summary or whodb_platform_gap_analysis," which is a real sequencing rule rather than generic advice. It does not say when to prefer runtime_readiness, next_actions, setup_status, or doctor instead, so the exclusion side is only partially covered.

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

whodb_platform_project_lineageB
Read-onlyIdempotent

Return project-level lineage for the selected hosted project. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
nameNoOptional case-insensitive name substring filter for list tools
typeNoOptional type filter, for example provider type, transform trigger mode, or function language
limitNoMaximum list items to return; use offset to continue
fieldsNoTop-level output fields to include. Prefer only fields needed now; call again with more fields if needed.
offsetNoNumber of matching list items to skip
searchNoOptional case-insensitive search term; currently aliases name for list tools
statusNoOptional status filter for resources that expose status
deployedNoOptional function deployment filter: true or false
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
schema_modeNoOptional dataset schema mode filter

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description's only added behavior note is that the workspace override does not change session defaults — useful, but this is already stated in the workspace schema description, so it adds little 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.

Conciseness4/5

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

Two compact sentences that are front-loaded with the core action; nothing extraneous. The second sentence partially duplicates the workspace schema's 'Does not change the default host' text, keeping it from a perfect score.

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 no output schema and ten parameters, the description should carry more weight: it never says what 'lineage' returns (upstream/downstream nodes, edges, graph depth) or how filters like name/type/status/limit affect lineage traversal. It is adequate but leaves an agent unsure what output to expect.

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

Parameters3/5

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

Schema description coverage is 100%, so all ten parameters (including the nested workspace object) are already documented, and baseline is 3. The description only restates the workspace {host, org, project} shape, adding no syntax, format, or filtering semantics 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?

Names a specific verb and resource ('Return project-level lineage') and scopes it to 'the selected hosted project', which is more precise than the bare name. It does not, however, differentiate itself from close siblings like whodb_platform_lineage or whodb_platform_lineage_neighbors, leaving the agent to guess which lineage scope applies.

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 second sentence explains the workspace override semantics ('per-call targeting without changing defaults'), which is implied usage guidance about defaults. There is no explicit when-to-use or when-not-to-use guidance relative to the lineage siblings, so the agent must infer the trigger condition.

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

whodb_platform_project_renameA
Destructive

Rename a hosted WhoDB project.

Pass project as id, slug, or name and org when needed for disambiguation. Default mode returns a confirmation token; do not call whodb_platform_confirm until the user approves the rename. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
orgNoOrganization id, slug, or name. Defaults to the selected organization when available.
nameYesNew project name
slugNoOptional new project slug
projectYesProject id, slug, or name
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

Output Schema

NameRequiredDescription
errorNo
scopeNo
statusNo
warningNo
commandsNo
recoveryNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
result_jsonNo
setup_statusNo
suggested_toolsNo
confirmation_tokenNo
confirmation_actionNo
confirmation_expiryNo
confirmation_previewNo
idempotency_replayedNo
confirmation_requiredNo

TDQS

A4/5.0
Behavior4/5

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

Adds real behavior beyond the annotations: the tool defaults to returning a confirmation token and requires explicit user approval before whodb_platform_confirm, which is critical for a destructiveHint=true operation. It does not disclose side effects of the rename itself (whether the existing slug survives, whether references/bookmarks to the old name break).

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

Conciseness5/5

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

Three sentences, each earning its place: the operation first, then target resolution, then the approval gate. No filler and no repetition of schema detail.

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

Completeness4/5

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

For a destructive, non-idempotent, 5-parameter tool with a nested workspace object, the description covers the operation, targeting, and the confirmation handshake. It stops short of describing post-rename effects (slug handling, downstream reference impact), which matters given destructiveHint=true.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents every parameter, including the workspace nested object and its host/org/project fields. The description restates that project accepts id, slug, or name and that org disambiguates, adding little beyond what the schema says. Baseline 3 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?

Opens with a precise verb+resource: "Rename a hosted WhoDB project." An agent immediately knows the operation and the object. It does not explicitly differentiate from the closest ambiguity in the sibling set (whodb_platform_update or whodb_platform_project_create), so a 4 rather than a 5.

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

Usage Guidelines4/5

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

Gives a concrete when-not rule naming a sibling: "do not call whodb_platform_confirm until the user approves the rename," and explains the per-call workspace override vs. session defaults. What's missing is any comparison to whodb_platform_update, which an agent might otherwise reach for when changing project metadata.

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

whodb_platform_project_resourcesA
Read-onlyIdempotent

Summarize resources in the selected project for governance and deletion planning. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields
team_idNoTeam id for team members
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
resource_idNoResource id
resource_typeNoResource type, for example dataset, app, or function

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, so the safety profile is covered. The description adds that the workspace argument targets only this call without changing session defaults, which is useful behavioral context, but says nothing about result shape, aggregation, or pagination 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?

Two tight sentences with zero filler; the purpose is front-loaded before the targeting detail, and 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?

For a read-only summarization tool with fully documented parameters and no output schema, the description covers purpose and targeting adequately. It could go further on what the summary contains or how resources are counted, but nothing essential is missing.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all five parameters, including the nested workspace object. The description restates the workspace {host, org, project} triple without adding syntax or semantics beyond what the schema provides. Baseline 3 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?

The description states a specific verb and resource ('Summarize resources in the selected project') and adds a purpose ('governance and deletion planning'). It distinguishes itself somewhat by scoping to the project, but it never names siblings like whodb_platform_org_resources, whodb_platform_deleted_resources, or whodb_platform_user_owned_resources, which is a notable gap given the crowded resource-adjacent family.

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 implies usage via 'for governance and deletion planning' and explains the per-call workspace targeting, but gives no explicit when-to-use vs when-not guidance and no named alternative tools. Usage is inferable but not spelled out.

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

whodb_platform_projectsA
Read-onlyIdempotent

List hosted WhoDB projects in one organization.

Pass org as an organization id, slug, or name. If omitted, the selected organization is used when available; when the account has exactly one organization, that organization is used. This tool is read-only. Prefer fields such as ["id", "name", "slug", "selected"] for discovery. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
orgNoOrganization id, slug, or name. Defaults to the selected organization when available.
fieldsNoOptional top-level output fields to include in items
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

Output Schema

NameRequiredDescription
hostNo
countYes
errorNo
itemsNo
scopeNo
fieldsNo
org_idNo
commandsNo
org_nameNo
projectsYes
recoveryNo
warningsNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
setup_statusNo
suggested_toolsNo

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, so the description does not need to establish safety. It adds useful behavioral context about default organization resolution and per-call workspace targeting, though the explicit "This tool is read-only" sentence mostly repeats 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?

The description is compact and front-loaded: it states the core purpose first, then default behavior, then optional field and workspace usage. No sentence is materially wasted.

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

Completeness5/5

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

Given three optional parameters, a nested workspace object, full schema descriptions, and a dedicated output schema, the description covers the key calling context: organization resolution, output field selection, and per-call targeting. Nothing essential for correct invocation appears missing.

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

Parameters4/5

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

Schema description coverage is 100%, so the schema carries most parameter documentation. The description still adds value by clarifying org accepts an id, slug, or name, describing fallback resolution, recommending discovery fields, and explaining workspace as per-call targeting without changing defaults.

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

Purpose5/5

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

The first sentence gives a specific verb and resource ("List hosted WhoDB projects") and constrains scope to one organization, which clearly distinguishes it from sibling project mutation tools such as whodb_platform_project_create and whodb_platform_project_delete.

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

Usage Guidelines4/5

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

The description explains how to select an organization and what happens when org is omitted, including the single-organization fallback. It also suggests fields for discovery and workspace targeting, but it does not explicitly name sibling alternatives or state when not to use this tool.

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

whodb_platform_promote_file_to_datasetA
Destructive

Promote a hosted project file to a dataset.

Use whodb_platform_file_inspect first to infer column_map values. Default mode returns a confirmation token; do not call whodb_platform_confirm until the user approves the preview. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
nameYesDataset name
file_idYesHosted project file id
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
column_mapYesColumn mappings, usually from whodb_platform_file_inspect
descriptionNoOptional dataset description
sheet_indexNoOptional tabular sheet index

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, openWorldHint=true, idempotentHint=false and readOnlyHint=false, so the safety profile is covered. The description adds genuinely new behavior: a default preview mode that returns a confirmation token and a two-phase confirm gate. It stops short of describing what the confirm-mode call does differently.

Agents need to know what a tool does to the world before 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, purpose front-loaded, no filler. The workspace sentence largely restates what the schema already says, which is the only 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?

For a destructive, non-idempotent mutation with no output schema, the description covers the critical pre-call and confirmation flow an agent needs. It is slightly thin on what a non-preview (confirmed) invocation returns or what happens to the source file after promotion.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all six parameters including the nested column_map and workspace fields; baseline 3 applies. The description adds only a source hint for column_map (from file_inspect) and restates the workspace targeting semantics already present in 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 (promote) and resource (hosted project file → dataset), which is clear on its own. It does not explicitly contrast with the sibling whodb_platform_create_dataset, so an agent must infer that this operates on an existing hosted file while create_dataset starts fresh.

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

Usage Guidelines4/5

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

Gives a concrete prerequisite workflow: call whodb_platform_file_inspect first to infer column_map, and hold whodb_platform_confirm until the user approves the preview. It lacks an explicit 'when to use this vs create_dataset' statement, but the ordering and gating guidance is strong.

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

whodb_platform_resolve_resourceA
Read-onlyIdempotent

Resolve a hosted resource name or id to an exact project resource before reading, planning, or writing it. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
queryYesResource id, exact name, or name fragment
resourceYesResource type such as source, dataset, ontology, transform, function, secret, or ai_provider
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

Output Schema

NameRequiredDescription
errorNo
queryNo
scopeNo
commandsNo
recoveryNo
resolvedNo
resourceNo
ambiguousNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
candidatesNo
error_codeNo
next_stepsNo
request_idNo
setup_statusNo
suggested_toolsNo

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered; the description adds the non-obvious side-effect guarantee that per-call workspace targeting does not change defaults. It omits what happens on ambiguous fragment matches (single best match vs. candidate list) and any error semantics, which matters for a resolve tool.

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

Conciseness5/5

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

Two sentences, front-loaded with the action and its purpose, with zero filler. The scoping clause for workspace follows the primary instruction in the right order.

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, full parameter documentation and annotations present, the description covers the essentials: what it returns conceptually (an exact project resource) and why to call it first. The remaining gap is resolution-failure and ambiguity behavior, which is not described anywhere.

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

Parameters3/5

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

Schema description coverage is 100% and every parameter including the nested workspace fields is documented in-schema, so the baseline is 3. The description adds only the 'without changing defaults' note for workspace, which the schema's own workspace description largely already conveys.

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

Purpose4/5

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

The description gives a specific verb and resource ('Resolve a hosted resource name or id to an exact project resource') plus a sequencing rationale ('before reading, planning, or writing it'). It clearly separates lookup from the actual read/write operations, though it never names the near-neighbor siblings (whodb_platform_workspace_resolve, whodb_platform_project_resources, whodb_platform_file_search) that an agent might otherwise pick.

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

Usage Guidelines4/5

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

It states the context in which to call it (resolution as a prerequisite to read/plan/write) and clarifies that supplying workspace targets only this call without mutating defaults. There is no explicit 'do not use when…' or named alternative, so guidance is clear but not exhaustive.

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

whodb_platform_resource_accessA
Read-onlyIdempotent

List subjects with access to a hosted resource. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields
team_idNoTeam id for team members
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
resource_idNoResource id
resource_typeNoResource type, for example dataset, app, or function

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnly, openWorld, and idempotent, so safety is covered. The description adds genuine behavior beyond that: the workspace argument is scoped "for per-call targeting without changing defaults," telling the agent this call cannot mutate session state. It still says nothing about result volume, pagination, or ordering.

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 core purpose front-loaded before the targeting caveat. 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?

With no output schema, the description carries the burden of conveying what the call returns, yet "subjects" is left undefined (users, teams, service accounts?) and no result shape or pagination is described. The targeting behavior is well covered, but the return side of a 5-parameter, nested-object tool is thin.

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

Parameters3/5

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

Schema description coverage is 100% and the workspace object already documents each sub-field, including that host "Does not change the default host." The description's targeting note largely restates that, adding only marginal meaning beyond the schema, so the baseline 3 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?

Specific verb ("List") plus a precise resource ("subjects with access to a hosted resource"), so an agent knows this is an access-enumeration read. It does not, however, distinguish itself from adjacent siblings such as whodb_platform_user_resource_access, whodb_platform_resource_permissions, or whodb_platform_project_access, which cover closely related directions of the same access data.

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 second sentence clarifies per-call targeting behavior but gives no when-to-use guidance, no exclusions, and no pointer to the sibling to prefer for the reverse query (which resources a subject can reach). Usage is implied by the purpose rather than stated.

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

whodb_platform_resource_graphA
Read-onlyIdempotent

Return a normalized graph of hosted platform resources and relationships in the selected project.

Use this when an agent needs to understand how sources, datasets, files, ontologies, functions, secrets, AI providers, and lineage relate before proposing changes. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoTop-level output fields to include, for example nodes, edges, warnings.
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
omit_filesNoOmit root folder file and folder nodes. Defaults to false.
omit_lineageNoOmit hosted lineage edges. Defaults to false.

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds that the result is a 'normalized' graph, implying deduplicated/merged output, but says nothing about response size, pagination, truncation, or permission requirements for the caller. With annotations carrying the read-only/idempotent burden, a 3 reflects modest 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 sentences, front-loaded with the core 'what' before the 'when,' and no filler beyond the resource enumeration. The second sentence is mildly dense but each clause carries information about targeting behavior.

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

Completeness4/5

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

With no output schema, the description must convey the return shape, and it does so at a high level ('normalized graph of resources and relationships') while the fields parameter documents nodes/edges/warnings. For a read-only, zero-required-parameter tool this is nearly sufficient, though the absence of any shape/scale detail for the returned graph leaves a small 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 100%, so nodes, edges, warnings, workspace defaults, omit_files and omit_lineage are already documented in the schema. The description's 'Accepts workspace {host, org, project} for per-call targeting without changing defaults' largely restates the workspace schema description about session defaults. Baseline 3 is appropriate when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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: 'Return a normalized graph of hosted platform resources and relationships in the selected project.' It also enumerates the resource kinds included (sources, datasets, files, ontologies, functions, secrets, AI providers, lineage), which distinguishes it from single-resource siblings. However, it never names the closest alternatives (whodb_platform_project_resources, whodb_platform_workspace_map, whodb_platform_lineage), leaving the agent to 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 Guidelines4/5

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

It gives a clear usage context: 'Use this when an agent needs to understand how ... relate before proposing changes,' which frames it as a pre-mutation reconnaissance step. It stops short of explicit exclusions or naming a sibling to use instead for narrower needs (e.g. lineage-only lookups).

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

whodb_platform_resource_permissionsB
Read-onlyIdempotent

List the signed-in user's permissions for a hosted resource. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields
team_idNoTeam id for team members
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
resource_idNoResource id
resource_typeNoResource type, for example dataset, app, or function

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, idempotentHint=true, and openWorldHint=true, so the safety profile is covered. The description adds that workspace targeting applies only to this call and does not change defaults, which is useful behavioral context, but it does not disclose auth requirements, rate limits, or result granularity.

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

Conciseness5/5

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

The description is two sentences, front-loaded with the action and resource, and every sentence carries information. There is no redundant restatement or filler.

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

Completeness3/5

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

The tool is read-only, has rich annotations, and has a fully documented schema, so the description is adequate for invocation. However, it does not help choose among the many sibling access/permission tools, and with no output schema it also does not characterize what permission information is returned.

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

Parameters3/5

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

Schema description coverage is 100%, so the input schema already documents workspace.host, workspace.org, workspace.project, resource_id, resource_type, fields, and team_id. The description repeats the workspace shape and per-call targeting behavior but adds no syntax or constraint detail beyond the schema, making the baseline 3 appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 the signed-in user's permissions for a hosted resource." This is clear enough to distinguish the operation from broad discovery or mutation tools, but it does not explicitly differentiate itself from close siblings such as whodb_platform_resource_access, whodb_platform_user_resource_access, or whodb_platform_my_grants.

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

Usage Guidelines2/5

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

The description gives no when-to-use guidance, no exclusions, and no alternative tools for related permission checks. It only notes that a workspace target can be supplied per call, which is parameter behavior rather than selection guidance.

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

whodb_platform_resource_types_accessB
Read-onlyIdempotent

List hosted resource ids the signed-in user can access for a resource type. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields
team_idNoTeam id for team members
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
resource_idNoResource id
resource_typeNoResource type, for example dataset, app, or function

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, idempotentHint=true, and openWorldHint=true, so the safety profile is covered. The description adds that results are permission-filtered to the signed-in user and that per-call workspace targeting does not mutate defaults, which is useful, but it omits output shape (bare ids vs objects), whether the whole result is returned at once, and how it relates to admin-style listing siblings.

Agents need to know what a tool does to the world before 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, no filler, with the primary purpose front-loaded before the targeting note. It is appropriately sized for a simple list tool, though the second sentence largely repeats schema content and could be dropped without loss.

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?

Two sentences, no filler, with the primary purpose front-loaded before the targeting note. It is appropriately sized for a simple list tool, though the second sentence largely repeats schema content and could be dropped without loss.

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

Parameters3/5

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

Schema description coverage is 100%, including the nested workspace target and its fallback chain, so the schema carries parameter meaning in full. The description's mention of the {host, org, project} shape duplicates the schema rather than clarifying semantics such as what resource_type values beyond the three examples are valid, so the baseline 3 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?

The description names a specific verb+resource ('List hosted resource ids') and scopes it to the signed-in user and a resource type, so the core action is unambiguous. However, it does not distinguish itself from close siblings such as whodb_platform_resource_access, whodb_platform_user_resource_access, or whodb_platform_org_resources, leaving an agent to guess which access-scoped 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 statement of when to use this tool versus the many sibling access tools, no preconditions, and no exclusions. The only usage-flavored sentence ('Accepts workspace {host, org, project} for per-call targeting without changing defaults') restates behavior already documented in the workspace schema description, so it adds no routing guidance.

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

whodb_platform_restoreA
Destructive

Restore a soft-deleted hosted resource through the platform's existing restore path. This never purges data and still requires confirmation. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idYesDeleted resource id
resourceYesSoft-deletable resource: project, source, ontology, dataset, transform, function, app, folder, or file. Find candidates with whodb_platform_deleted_resources.
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, destructiveHint=true, idempotentHint=false and openWorldHint=true, so the safety bar is partly pre-carried. The description adds genuinely new behavior: it never purges data and it requires confirmation, plus that per-call workspace targeting does not change session defaults. The 'never purges data' phrasing sits in mild tension with destructiveHint=true (no hard contradiction, since the hint reflects mutation/reversibility, not data purge).

Agents need to know what a tool does to the world before 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 core action and its safety constraint. The workspace sentence is useful but overlaps the schema's own description of the same opt-in behavior, so it is slightly redundant rather than pure waste.

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 with a nested workspace object and no output schema, the description covers action, safety, and targeting scope adequately. It leaves unstated whether dependents come back with the resource and how the confirmation step is actually performed, which would help an agent sequence the 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 100%, so the schema already documents id, resource, and every workspace subfield, including 'Does not change the default host'. The description's workspace sentence largely restates that structured content, adding no new syntax, format, or precedence detail beyond 'without changing defaults'.

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 ('Restore a soft-deleted hosted resource') and qualifies the mechanism ('through the platform's existing restore path'), which cleanly separates it from the sibling discovery tool whodb_platform_deleted_resources and from whodb_platform_delete. An agent can pick this tool without opening the schema.

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

Usage Guidelines3/5

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

Usage is implied rather than stated: only soft-deleted resources are eligible, and the description notes it 'still requires confirmation', hinting at a confirm flow. It never names the discovery step or the confirmation sibling as prerequisites/alternatives; that hinting only appears inside the schema's 'resource' description, not the tool description.

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

whodb_platform_runtime_readinessA
Read-onlyIdempotent

Summarize selected-project runtime readiness.

Use this before function, transform, AI provider, or secret work. It returns configured resources and timestamped evidence. Reachability and verification stay unknown unless supported by evidence. Optional function_id inspects the latest persisted run without executing it; historical success is not current worker health. Unavailable inventories are partial results with warnings. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
goalNoOptional user goal used to keep suggested actions relevant.
fieldsNoTop-level output fields to include, for example actions, warnings, goal.
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
omit_filesNoOmit root folder file and folder summaries. Defaults to false.
function_idNoFor runtime readiness, inspect the latest persisted run of this function without executing it.
omit_lineageNoOmit project lineage summary. Defaults to false.

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, but the description adds genuinely new behavioral context: unknown reachability/verification unless evidence-backed, historical success is not current worker health, and unavailable inventories yield partial results with warnings. It also discloses that workspace targeting is per-call and does not change session defaults, which is not obvious from 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 core action and the 'use before X' guidance are front-loaded, and each later sentence adds a distinct caveat rather than padding. It is dense and reads as a run-on block of caveats, which slightly impedes scanning.

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 output schema and six optional parameters in a nested workspace object, the description does the needed work: it names the returned categories, explains partial/warning outcomes, and describes default-resolution order. Only the absence of sibling disambiguation against other health/status tools keeps it short of a 5.

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

Parameters3/5

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

Schema description coverage is 100%, so per the rubric the baseline is 3. The description restates the function_id non-execution semantics and the workspace precedence order (session_use then process/saved defaults), which is modest added value over schema text that already says essentially the same thing.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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: 'Summarize selected-project runtime readiness', and immediately clarifies what that means by naming the returned content ('configured resources and timestamped evidence'). It does not explicitly differentiate itself from nearby siblings like whodb_platform_project_health, whodb_platform_status or whodb_platform_setup_status, so an agent still has to infer which of the several health-ish tools 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 Guidelines4/5

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

'Use this before function, transform, AI provider, or secret work' gives a concrete triggering condition, and the function_id sentence clarifies a distinct mode (inspect latest persisted run without executing). What is missing is explicit when-not guidance or a named alternative such as project_health or status for agents who want a different health angle.

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

whodb_platform_secretsA
Read-onlyIdempotent

List hosted project secret metadata and usage. Use name to filter by secret name when known.

This tool never returns secret values, redacted placeholders, or credential material. Authorization is enforced by the hosted platform. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
nameNoOptional case-insensitive name substring filter for list tools
typeNoOptional type filter, for example provider type, transform trigger mode, or function language
limitNoMaximum list items to return; use offset to continue
fieldsNoTop-level output fields to include. Prefer only fields needed now; call again with more fields if needed.
offsetNoNumber of matching list items to skip
searchNoOptional case-insensitive search term; currently aliases name for list tools
statusNoOptional status filter for resources that expose status
deployedNoOptional function deployment filter: true or false
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
schema_modeNoOptional dataset schema mode filter

TDQS

A4.1/5.0
Behavior5/5

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

Annotations already cover read-only/idempotent/open-world safety, but the description adds materially more: it explicitly guarantees no secret values, redacted placeholders, or credential material are returned, notes that authorization is enforced by the hosted platform, and explains that workspace targeting applies per-call without mutating defaults.

Agents need to know what a tool does to the world before 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 tight sentences with the purpose and safety guarantee front-loaded; nothing is bloated. The middle sentence on `name` filtering lightly restates the schema description, which is the only minor redundancy.

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

Completeness4/5

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

For a 10-parameter, all-optional list tool with no output schema, the description covers the two things an agent most needs: what is returned (metadata and usage) and the critical negative guarantee (no secret values). The shape of the returned metadata/usage is left unspecified, which is a small gap given the absence of an output schema.

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

Parameters3/5

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

Schema description coverage is 100% across all 10 parameters, so the schema already carries the semantics. The description only adds a usage note for `name` ('when known'), which does not go beyond the schema's own substring-filter description; baseline 3 is appropriate.

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

Purpose5/5

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

The description opens with a specific verb and resource ('List hosted project secret metadata and usage'), not a restatement of the tool name. It scopes the operation to hosted project secrets, which no sibling tool overlaps with, so an agent can identify it immediately.

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 says to use `name` when the secret name is known, which is a filtering hint rather than guidance on when this tool is the right choice. There is no statement of when-not to use it or what alternative exists for related credential operations.

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

whodb_platform_security_auditA
Read-onlyIdempotent

Search the canonical security ledger, correlate requests/runs, inspect export backlog or verify the organization hash chain. Requires organization management. Distinct from data-quality audit. Modes: events, exports, verify. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
modeNoevents (default), exports, or verify. Requires organization management permission.
limitNoEvents per page, 1-200; default 50.
sinceNoInclusive RFC3339 start time.
untilNoInclusive RFC3339 end time.
actionNo
cursorNoContinue event pagination with nextCursor from the preceding response.
run_idNo
outcomeNoExact event outcome: SUCCESS, FAILURE, or DENIED.
actor_idNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
project_idNo
request_idNo

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint; the description adds genuinely new context by stating the organization-management permission gate and clarifying that the workspace object targets this call only 'without changing defaults' (i.e. no session mutation). It stops short of describing result shape or pagination behavior, which is the remaining gap.

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

Conciseness4/5

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

The capability and the permission gate are front-loaded, and the sibling exclusion and workspace note each carry information. It is dense but every sentence does work; 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?

For a 12-parameter, three-mode, no-output-schema tool, the description covers modes, permissions and workspace scoping but leaves the caller guessing what an events page or a verify result looks like and how the filter parameters combine. Adequate, 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?

At 58% schema coverage and 12 parameters, the description only reinforces the mode enum and the workspace targeting semantics (per-call, non-persistent, discoverable via hosts/orgs/projects). Filters like action, run_id, actor_id, project_id and request_id are undocumented in both places, so the description partially but not fully compensates.

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 specific verbs (search, correlate, inspect, verify) against a clearly named resource (the canonical security ledger / org hash chain), and enumerates the three modes. It also explicitly rules out a near-twin ('Distinct from data-quality audit'), so the agent can separate it from adjacent audit-like tools 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?

Gives an explicit prerequisite ('Requires organization management'), names the sibling it is not, and lists the three operating modes. It does not say when to choose exports over verify over events beyond the mode names, so the routing is clear but not fully spelled out.

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

whodb_platform_service_accountsA
Read-onlyIdempotent

List service accounts and key metadata in the selected organization. Keys never include secrets. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
nameNoOptional case-insensitive name substring filter for list tools
typeNoOptional type filter, for example provider type, transform trigger mode, or function language
limitNoMaximum list items to return; use offset to continue
fieldsNoTop-level output fields to include. Prefer only fields needed now; call again with more fields if needed.
offsetNoNumber of matching list items to skip
searchNoOptional case-insensitive search term; currently aliases name for list tools
statusNoOptional status filter for resources that expose status
deployedNoOptional function deployment filter: true or false
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
schema_modeNoOptional dataset schema mode filter

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description still adds value by promising that keys never contain secrets (important for output handling) and that per-call workspace targeting does not mutate session defaults. Return format and pagination behavior remain undisclosed.

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, no filler; the resource and scope come first and the two caveats (no secrets, non-mutating targeting) follow. 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?

For a read-only list tool with 100% schema coverage and no output schema, the description is nearly sufficient: it establishes scope, safety of the payload, and targeting semantics. It omits result shape hints and permission requirements, but nothing critical to correct invocation 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 coverage is 100%, so the baseline is 3. The description only restates workspace targeting, which the schema already explains in more detail. It also fails to clarify that several generic filters (type with 'transform trigger mode'/function language, deployed, schema_mode) are irrelevant to service accounts, which is the one gap the description could have closed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 service accounts') plus scope ('in the selected organization') and a security qualifier ('Keys never include secrets') that separates it from the secrets tool. It does not name a sibling list tool to differentiate against, so it lands just short of the top band.

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 and operational: 'Accepts workspace {host, org, project} for per-call targeting without changing defaults.' There is no explicit when-to-use vs. an alternative (e.g., org_members, team_members, secrets), nor any permission prerequisite. The workspace-targeting sentence is real guidance, but coverage is partial.

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

whodb_platform_session_clearA
Read-onlyIdempotent

Clear the session default set by whodb_platform_session_use.

Later calls that omit workspace fall back to process overrides, then saved CLI defaults. Nothing is written to the CLI config.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
errorNo
statusYes
request_idNo
session_scopeNo

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, so the safety profile is covered. The description adds genuinely useful scope context: the clear affects only session state, not the CLI config ('Nothing is written to the CLI config'), which clarifies the blast radius of the mutation-adjacent action.

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

Conciseness5/5

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

Two tight sentences, front-loaded with the action and its inverse sibling, followed by the fallback behavior. Every sentence carries information relevant to invoking the tool correctly.

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

Completeness4/5

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

With zero parameters and an output schema present, the description does not need to explain return values. It covers purpose, effect, and fallback semantics, leaving little an agent would need beyond this; only an explicit usage trigger is slightly 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 the description could or should document; baseline 4 applies. No parameter-level additions are possible or needed.

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

Purpose5/5

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

States a specific verb and resource ('Clear the session default') and explicitly names the sibling that set it (whodb_platform_session_use), letting an agent distinguish this tool from its counterpart without opening either 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 frames the tool as the inverse of whodb_platform_session_use and explains the consequence of calling it (later calls fall back to process overrides, then saved CLI defaults), which tells the agent when this is the right action. It stops short of explicit when-not guidance, but context is clear.

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

whodb_platform_session_useA
Read-onlyIdempotent

Set the default host, organization, and project for this MCP session only.

Pass workspace {host, org, project}. The login is verified and the target is resolved to canonical IDs; later calls that omit workspace use it. Nothing is written to the CLI config, so other chats, terminals, and MCP sessions are unaffected. Use this once at the start of a chat that should stay on one host (for example UAT or production), then call whodb_platform_status to confirm. An explicit workspace on a later call still overrides it for that call. Call whodb_platform_session_clear to return to process/saved defaults. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

Output Schema

NameRequiredDescription
errorNo
scopeNo
statusYes
recoveryNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
request_idNo
session_scopeNo
suggested_toolsNo

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already declare readOnly/idempotent/openWorld, and the description still adds substantive behavior: the login is verified, the target is resolved to canonical IDs, later calls inherit the default, and nothing is written to CLI config so other chats/terminals/sessions are unaffected. That persistence boundary is exactly the kind of context annotations cannot convey.

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

Conciseness4/5

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

Front-loaded with the core action in sentence one, and each subsequent sentence adds a distinct fact (resolution, isolation, usage, override, undo). Slightly over-long: the final sentence largely repeats the per-call override point already made mid-paragraph.

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

Completeness5/5

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

Output schema exists so return values need no explanation. For a session-state mutation tool the description covers what changes, what does not (CLI config, other sessions), how to verify it, how to revert it, and precedence rules for later calls — everything 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.

Parameters3/5

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

Schema description coverage is 100% and the nested workspace fields are individually documented, so the schema does the heavy lifting and baseline 3 applies. The description restates the shape ('Pass workspace {host, org, project}') and explains inheritance/override precedence, but the closing line ('Accepts workspace ... for per-call targeting without changing defaults') sits awkwardly against the schema's 'Optional target for this call only' wording, leaving the param's role on this specific tool slightly ambiguous rather than clarified.

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 an explicit scope qualifier: 'Set the default host, organization, and project for this MCP session only.' The 'session only' framing plus the named siblings (whodb_platform_session_clear, whodb_platform_status) make it trivially distinguishable from the many other whodb_platform_* tools.

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

Usage Guidelines5/5

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

Gives an explicit when ('use this once at the start of a chat that should stay on one host, for example UAT or production'), explicit alternatives (per-call workspace override, session_clear to return to defaults), and a verification step (call whodb_platform_status to confirm). Nothing about selection is left to inference.

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

whodb_platform_setup_statusA
Read-onlyIdempotent

Check hosted WhoDB MCP setup before auth-dependent tools.

Use this as the first tool in hosted platform mode, or whenever another platform tool reports login/workspace errors. It does not require a valid hosted session. It reports whether the local CLI is logged in, whether an organization/project is selected, and exact commands the user can run to fix setup. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

Output Schema

NameRequiredDescription
hostYes
emailNo
errorNo
scopeNo
org_idNo
statusYes
commandsYes
org_nameNo
recoveryNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
account_idNo
error_codeNo
next_stepsYes
project_idNo
request_idNo
org_selectorNo
project_nameNo
authenticatedYes
session_scopeNo
suggested_toolsNo
project_selectorNo
workspace_selectedYes

TDQS

A4.1/5.0
Behavior5/5

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

Beyond the readOnly/openWorld/idempotent annotations, the description discloses that no valid hosted session is required, what setup states are reported, and that exact remediation commands are returned. It also explains that workspace targeting applies only to the current call without changing defaults.

Agents need to know what a tool does to the world before 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 and each sentence contributes useful information about usage, auth requirements, reported status, and workspace targeting. There is minor repetition between the opening preflight framing and the second sentence's 'first tool' guidance.

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 that an output schema exists and the input schema has full description coverage, the description supplies enough context to call the tool correctly: when to use it, that it works without a hosted session, what it reports, and how workspace targeting behaves. No critical invocation details are missing.

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

Parameters3/5

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

Schema description coverage is 100%, so the workspace, host, org, and project semantics are already well documented in the schema. The description restates the per-call targeting behavior but adds little beyond what the schema already provides, making 3 the appropriate baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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: checking hosted WhoDB MCP setup. It distinguishes this preflight check from auth-dependent platform tools and error recovery, though it does not explicitly differentiate from similar siblings such as whodb_platform_status or whodb_platform_doctor.

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

Usage Guidelines4/5

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

It clearly says to use this as the first tool in hosted platform mode and whenever another platform tool reports login/workspace errors. It lacks explicit when-not-to-use guidance or named alternative tools, so it falls short of the top score.

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

whodb_platform_shared_by_meB
Read-onlyIdempotent

List resources shared by the signed-in user. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields
team_idNoTeam id for team members
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
resource_idNoResource id
resource_typeNoResource type, for example dataset, app, or function

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so safety and repeatability are covered. The description adds that the workspace target does not change defaults, which is useful behavioral context, but it says nothing about output shape, pagination, or scoping of team_id when omitted.

Agents need to know what a tool does to the world before 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, and the core purpose is front-loaded before the workspace note. Nothing is padded or repeated.

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 zero required parameters, an annotated read-only list tool, and full schema coverage, the description is adequate but not rich: it omits any routing to the many sibling list tools (shared_with_me, org_resources, user_owned_resources) that an agent would need to pick correctly among.

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

Parameters3/5

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

Schema coverage is 100%, so all five parameters including the nested workspace object are already documented in the schema, including the default-resolution chain (session_use, then process/saved defaults). The description adds only a short restatement of workspace targeting, so the baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 (resources shared by the signed-in user), and the phrase 'by the signed-in user' distinguishes it from siblings like whodb_platform_shared_with_me and whodb_platform_user_owned_resources. It does not name those siblings explicitly, so the differentiation is implied rather than stated, keeping it just under 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 explains what the workspace param does for per-call targeting but never says when to prefer this tool over whodb_platform_shared_with_me, whodb_platform_org_resources, or whodb_platform_user_owned_resources. Usage is implied by the name but no explicit when/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.

whodb_platform_share_dependentsA
Read-onlyIdempotent

List resources that must be shared alongside a resource for it to work, with the default role for each. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields
team_idNoTeam id for team members
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
resource_idNoResource id
resource_typeNoResource type, for example dataset, app, or function

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already cover readOnlyHint, idempotentHint and openWorldHint, so safety is not the description's burden. The description still adds real value: it discloses that each item carries a default role, and that workspace targeting is per-call and does not mutate defaults — behavior not visible 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?

Two sentences, front-loaded with the purpose before the targeting detail, with no filler. The second sentence largely duplicates the workspace schema description, so it is not perfectly economical, but it remains tight.

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

Completeness4/5

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

For a read-only listing tool with no output schema and fully documented parameters, the description covers purpose, output content (default roles), and targeting behavior adequately. It omits return-shape specifics and pagination, but those gaps are minor given the annotations and rich schema.

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

Parameters3/5

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

Schema description coverage is 100%, so all five parameters (including the nested workspace object and its host/org/project fields) are already documented. The description restates the workspace shape and its non-persistent behavior, which the schema itself already states, so it adds little beyond the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 (resources that must be shared alongside a given resource, with default roles). It is understandable without opening the schema, but it never names or distinguishes itself from adjacent sharing tools such as shared_by_me, shared_with_me, or resource_permissions.

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 "must be shared alongside a resource for it to work" implies the use case (determining share dependencies), and the workspace sentence hints at per-call targeting. However, there is no explicit when-to-use, no when-not-to-use, and no named alternative among the many sharing/permission siblings, so 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.

whodb_platform_shared_ontologiesB
Read-onlyIdempotent

List ontologies the selected project shares with other projects, including their consumers. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
nameNoOptional case-insensitive name substring filter for list tools
typeNoOptional type filter, for example provider type, transform trigger mode, or function language
limitNoMaximum list items to return; use offset to continue
fieldsNoTop-level output fields to include. Prefer only fields needed now; call again with more fields if needed.
offsetNoNumber of matching list items to skip
searchNoOptional case-insensitive search term; currently aliases name for list tools
statusNoOptional status filter for resources that expose status
deployedNoOptional function deployment filter: true or false
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
schema_modeNoOptional dataset schema mode filter

TDQS

B3.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so safety is covered. The description adds beyond that: it discloses that workspace targeting applies 'for per-call targeting without changing defaults,' which is a genuinely useful behavioral detail about ephemeral scoping.

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

Conciseness4/5

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

Two sentences with the primary purpose front-loaded and the workspace caveat second. Tight and waste-free, though the second sentence partially restates the workspace schema description.

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 read-only list tool with no output schema, the definition is minimally viable: it conveys purpose, scope, and workspace behavior. It leaves unexplained what 'consumers' are, how results paginate, and how it differs from the overlapping shared-* siblings.

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

Parameters3/5

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

Schema description coverage is 100% across all 10 parameters, so the schema already carries parameter meaning; baseline is 3. The description reinforces the workspace scoping semantics but adds nothing about the generic list filters (name, type, limit, offset, fields).

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

Purpose4/5

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

States a specific verb (List) and resource (ontologies the selected project shares with other projects) plus an output-content hint ('including their consumers'). However, it never distinguishes itself from close siblings such as whodb_platform_discover_shared_ontologies, whodb_platform_shared_by_me, or whodb_platform_ontologies, so the agent could pick the wrong one.

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

Usage Guidelines2/5

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

There is no explicit when-to-use, when-not-to-use, or alternative routing. Given several overlapping siblings in the shared/ontology naming family, this absence is a real selection hazard rather than a minor omission.

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

whodb_platform_shared_packageB
Read-onlyIdempotent

Inspect a package shared through a hosted package share token. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idNoPackage or installation id
fieldsNoOptional top-level output fields
searchNoOptional package library search
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds one useful behavioral note - the workspace override is per-call only and does not mutate defaults - but says nothing about what 'inspect' returns, pagination, or any token/auth requirements, which matters since there is no output schema.

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

Conciseness4/5

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

Two tight sentences, front-loaded with the purpose before the parameter note, with no filler. Slightly parameter-heavy for such a short description 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?

For a read-only inspection tool with no output schema, the description should at least characterize what the inspection yields (package metadata? files? installation state?), and it does not. Annotations cover safety and the schema covers parameters, so the remaining gap is moderate rather than severe.

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

Parameters3/5

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

Schema description coverage is 100% and the nested workspace object is fully documented in the schema, including the default-resolution order. The description's second sentence largely restates what the workspace parameter already says, so it adds no syntax or semantic detail beyond the schema. Baseline 3 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?

The description names a specific verb (inspect) and a scoped resource (a package shared through a hosted package share token), which is narrower than the sibling whodb_platform_package and whodb_platform_packages. It does not explicitly contrast itself with those siblings, so it falls short of a 5.

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

Usage Guidelines3/5

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

Usage is only implied: the mention of a 'share token' signals the situation in which this tool applies, but the description never states when to prefer it over whodb_platform_package or the preview_shared_* tools, and gives no exclusions.

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

whodb_platform_shared_with_meA
Read-onlyIdempotent

List resources shared with the signed-in user. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields
team_idNoTeam id for team members
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
resource_idNoResource id
resource_typeNoResource type, for example dataset, app, or function

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so safety is covered. The description adds one genuinely useful behavioral nuance — that workspace targeting is per-call and does not change session defaults — but says nothing about result volume, pagination, or filtering behavior.

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

Conciseness4/5

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

Two tight sentences with no filler, and the core purpose is front-loaded before the targeting caveat. It could be marginally tighter, but every clause carries information.

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

Completeness4/5

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

For a read-only, zero-required-param list tool with full schema coverage and annotations covering safety, the description is nearly sufficient. It omits any statement of what the output contains (no output schema exists), leaving the agent to guess at the result shape, but that 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 100% (all five params, including the nested workspace object, are documented in-schema). The description's workspace sentence largely restates what the schema already says about per-call targeting, so it adds little beyond the baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ('List resources shared with the signed-in user'), which is a clear read operation and implicitly distinguishes it from the sibling whodb_platform_shared_by_me by scope direction. However, it never names that sibling or any other alternative, so the differentiation is left to inference.

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

Usage Guidelines3/5

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

It hints at usage via the per-call workspace targeting note, which tells the agent this tool can be pointed at a specific host/org/project. There is no explicit when-to-use / when-not-to-use guidance and no pointer to alternatives such as whodb_platform_shared_by_me or whodb_platform_shared_ontologies.

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

whodb_platform_source_columnsB
Read-onlyIdempotent

Describe columns for one hosted WhoDB source object.

Use a source name or id and an object ref such as table:public.users. This tool is read-only. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
refYesObject ref as kind:path, for example table:public.users
fieldsNoOptional top-level output fields to include in items
sourceYesHosted source id or name
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

Output Schema

NameRequiredDescription
countYes
errorNo
itemsNo
scopeNo
fieldsNo
columnsYes
commandsNo
recoveryNo
warningsNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
setup_statusNo
suggested_toolsNo

TDQS

B3.2/5.0
Behavior3/5

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

The 'This tool is read-only' sentence duplicates the readOnlyHint annotation and earns no credit, and idempotentHint/openWorldHint already cover re-safety. What the description genuinely adds is the per-call workspace targeting nuance ('without changing defaults'), which clarifies that passing workspace does not mutate session state. With annotations already carrying the safety profile, a 3 is appropriate.

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

Conciseness4/5

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

Three short sentences, front-loaded with the action and resource, with no filler. Minor redundancy: the read-only claim repeats annotations and the ref example repeats the schema.

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 and full annotation coverage, the description need not explain return values, and it doesn't have to. What is missing is the connective tissue: how to obtain a valid 'kind:path' ref and how this tool relates to the sibling fields/objects tools, in a tool family where those names are easily confused.

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

Parameters3/5

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

Schema coverage is 100%, so source, ref, fields, and the nested workspace object are all documented in the schema itself. The description restates the ref example already in the schema and adds only the mild clarification that workspace targeting is per-call; baseline 3 is correct when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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: 'Describe columns for one hosted WhoDB source object.' An agent knows this returns column metadata for a single object. However, it does not differentiate from the very similarly named sibling whodb_platform_source_fields (or source_objects / source_rows), leaving the columns-vs-fields boundary to guesswork.

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?

Usage is described only in terms of arguments ('Use a source name or id and an object ref such as table:public.users'), which merely restates the schema. There is no guidance on when to pick this over whodb_platform_source_fields or whodb_platform_source_objects, and no hint that object refs are discovered via the objects-list tool.

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

whodb_platform_source_configA
Read-onlyIdempotent

Return redacted connection configuration for one hosted WhoDB source.

Secrets such as passwords, tokens, client secrets, and private keys are masked. Use this to understand source shape without exposing credentials. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
sourceYesHosted source id or name
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

Output Schema

NameRequiredDescription
errorNo
scopeNo
configYes
sourceNo
commandsNo
recoveryNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
setup_statusNo
suggested_toolsNo

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/openWorld, so the bar is lower, but the description adds real value: it names exactly what is masked (passwords, tokens, client secrets, private keys) and explains that the workspace argument is per-call and does not change defaults. It stops short of describing response shape or whether masked values appear as placeholders.

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 short sentences, front-loaded with the resource and the credential-safety guarantee, then the targeting escape hatch. Nothing is redundant or padded.

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 values need not be described; annotations cover the safety profile; schema covers both parameters fully. The description supplies the one thing structured fields cannot: that secrets are masked, which is the core behavioral fact an agent needs.

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

Parameters3/5

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

Schema coverage is 100% and already documents source as id-or-name and the full workspace {host, org, project} semantics including session-default fallback. The description largely restates the workspace per-call behavior rather than adding new syntax or resolution rules, so baseline 3 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 ('Return redacted connection configuration for one hosted WhoDB source') and adds a scope qualifier ('redacted', 'one source') that distinguishes it from bulk listing siblings like whodb_platform_sources. It does not explicitly contrast with the closest read siblings (whodb_platform_source_fields, whodb_platform_source_test, whodb_platform_source_content), so differentiation is implied rather than declared.

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 understand source shape without exposing credentials' gives a clear when-to-use condition tied to credential safety. No explicit when-not or named alternative appears, so an agent must infer that source_fields/source_test cover other needs.

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

whodb_platform_source_constraintsB
Read-onlyIdempotent

Describe editable field constraints for one hosted source object.

Use a source name or id and an object ref such as table:public.users. This tool is read-only. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
refYesObject ref as kind:path, for example table:public.users
fieldsNoOptional top-level output fields to include
sourceYesHosted source id or name
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so restating 'This tool is read-only' is redundant. The genuinely additive part is the workspace targeting note ('for per-call targeting without changing defaults'), which clarifies that the override is ephemeral versus the session default.

Agents need to know what a tool does to the world before 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 core purpose and followed by usage and scoping notes. No filler, though the read-only statement is somewhat wasted given the annotations.

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 read-only tool with full schema coverage and safety annotations, the essentials are present. It still leaves open what the 'constraints' result contains and how it differs from source_fields/source_columns, and there is no output schema to compensate.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents ref (kind:path format), source, fields and workspace nested fields. The description only restates the source/ref usage and adds no format or semantic detail beyond the schema, matching the baseline when structured fields do the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 (Describe) and resource (editable field constraints for one hosted source object), which is more precise than the generic sibling names like source_fields or source_columns. However, it never explicitly contrasts itself against those close siblings, so an agent must infer the distinction from the word 'constraints' 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?

It tells the agent how to call it ('Use a source name or id and an object ref such as table:public.users'), which implies the required context. But it offers no when-to-use or when-not-to-use guidance and never names the sibling tools (e.g. source_fields, source_columns, source_objects) that overlap in scope.

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

whodb_platform_source_contentA
Read-onlyIdempotent

Read content for one hosted source object when the source supports content reads.

Use a source name or id and an object ref such as item:notes/report.txt. Prefer fields to request only the content metadata or body fields needed now, then call again with more fields only if needed. Text content is capped in MCP output. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
refYesObject ref as kind:path, for example item:notes/report.txt
fieldsNoTop-level output fields to include. Prefer only fields needed now; call again with more fields if needed.
sourceYesHosted source id or name
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already cover the readOnly/idempotent/openWorld profile, and the description adds genuinely new behavioral context: MCP output capping for text content, and that the workspace object targets per-call without altering session defaults. No contradiction with annotations; the only gap is the returned field/body 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?

Front-loads the core purpose and keeps to four short sentences. The fields sentence restates the schema's own description almost verbatim, which is mild redundancy, but nothing is bloated.

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

Completeness4/5

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

For a read-only tool with no output schema, the description covers targeting (source, ref, workspace), progressive field selection, and the MCP output cap. It stops short of describing what the content payload looks like or how unsupported sources fail, but overall it is sufficient to invoke correctly.

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

Parameters3/5

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

Schema coverage is 100%, so the baseline is 3. The description largely echoes what the schema already says (source name or id, ref format, workspace host/org/project, fields pruning) without adding syntax or validation detail beyond 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?

States a specific verb+resource ('Read content for one hosted source object') and adds a gating condition ('when the source supports content reads'), which is more than a bare restatement. It does not, however, name or contrast with the closely-related siblings (whodb_platform_source_rows, whodb_platform_source_objects, whodb_platform_file_preview), so an agent must infer the boundary itself.

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

Usage Guidelines3/5

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

Gives real workflow guidance ('Prefer fields to request only the content metadata or body fields needed now, then call again with more fields only if needed') and a precondition on source capability. It never says when *not* to use this versus the tabular/file siblings, so the routing decision is only implied.

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

whodb_platform_source_createA
Destructive

Prepare creation of a hosted WhoDB source in the selected project.

This stores nothing until the returned confirmation token is approved with whodb_platform_confirm. Pass source_type, name, connection fields, and advanced options. Do not call whodb_platform_confirm until the user approves the confirmation preview. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
nameYesSource display name
portNo
advancedNo
databaseNo
hostnameNo
passwordNo
usernameNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
source_typeYesHosted source type id

Output Schema

NameRequiredDescription
errorNo
scopeNo
sourceNo
statusNo
warningNo
commandsNo
recoveryNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
setup_statusNo
suggested_toolsNo
confirmation_tokenNo
confirmation_actionNo
confirmation_expiryNo
confirmation_previewNo
confirmation_requiredNo

TDQS

A3.8/5.0
Behavior4/5

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

Adds real context beyond the annotations: the crucial non-persistence guarantee ("This stores nothing until the returned confirmation token is approved") and the fact that the workspace argument is per-call and does not mutate defaults. It does not explain what happens to the password/credentials passed here, nor what occurs if the token is never confirmed or expires — annotations already carry the safety profile, so this is a moderate rather than severe 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?

Four short sentences, front-loaded with the action and immediately followed by the non-persistence caveat and the confirm precondition. Every sentence carries information; only the workspace sentence slightly duplicates the schema's own workspace description.

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 the confirmation token needn't be explained, and annotations plus nested schema descriptions cover targeting. What remains missing for a 9-parameter create tool is source_type-dependent field requirements and credential handling, which the description never addresses.

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

Parameters3/5

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

With only 33% schema description coverage, hostname, port, database, username, password, and the advanced map are undocumented in the schema. The description only groups them as "connection fields, and advanced options" without saying which are required per source_type or how advanced keys are chosen, so it partially but not fully 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 phrase ("Prepare creation of a hosted WhoDB source") plus the scope ("in the selected project"), and makes the two-phase nature explicit by naming whodb_platform_confirm as the follow-up. It does not directly contrast with adjacent siblings like whodb_platform_source_update or whodb_platform_source_test, so an agent must infer that boundary from those tools' own definitions.

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 concrete sequencing guidance: which fields to pass, and an explicit prohibition ("Do not call whodb_platform_confirm until the user approves the confirmation preview"). It stops short of naming prerequisites that clearly exist among the siblings, such as discovering valid ids via whodb_platform_source_types or checking whodb_platform_source_fields before calling.

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

whodb_platform_source_deleteA
Destructive

Prepare deletion of a hosted WhoDB source.

This deletes nothing until the returned confirmation token is approved with whodb_platform_confirm. Use whodb_platform_sources first to verify the target source. This is destructive. Explain the deletion target and do not call whodb_platform_confirm until the user approves the confirmation preview. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
sourceYesHosted source id or name
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

Output Schema

NameRequiredDescription
errorNo
scopeNo
sourceNo
statusNo
warningNo
commandsNo
recoveryNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
setup_statusNo
suggested_toolsNo
confirmation_tokenNo
confirmation_actionNo
confirmation_expiryNo
confirmation_previewNo
confirmation_requiredNo

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, idempotentHint=false, readOnlyHint=false, so the safety profile is largely covered. The description still adds high-value behavior the annotations cannot express: the two-phase token flow, that nothing is deleted at this call, and the agent's obligation to explain the target and obtain user approval. It does not describe the confirmation payload's content or expiry.

Agents need to know what a tool does to the world before 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 key fact (prepare, not delete), then the confirm dependency, then the safety instruction. Slightly wasteful that the final sentence paraphrases the workspace schema, but every other sentence carries distinct weight.

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

Completeness5/5

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

For a destructive two-phase operation with an output schema (confirmation token/preview) and rich annotations, the description supplies everything an agent needs: preconditions, ordering with siblings, the approval gate, and the mutation's true effect. Nothing material 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 100%, so the schema already documents 'source' and the nested workspace fields, including that workspace is per-call only. The description's workspace sentence mostly restates the schema; only 'verify the target source' hints at resolution semantics (id vs. name). Baseline 3 is appropriate.

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

Purpose5/5

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

States a specific verb+object ('Prepare deletion of a hosted WhoDB source') and, crucially, that this is a prepare-only step that deletes nothing until a confirmation token is approved. The resource scope ('hosted source') plus the token workflow make it distinguishable from the sibling delete tools.

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

Usage Guidelines5/5

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

Explicit when-to-use chain: run whodb_platform_sources first to verify the target, then this tool, then whodb_platform_confirm only after user approval. It also states an exclusion ('do not call whodb_platform_confirm until the user approves the confirmation preview'), leaving nothing to inference.

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

whodb_platform_source_fieldsA
Read-onlyIdempotent

List connection fields for one hosted WhoDB source type.

Use this before source creation or draft connection tests to discover required fields and defaults. This tool is read-only and does not expose credentials. Prefer fields such as ["Key", "Kind", "Required", "LabelKey"] unless full field metadata is needed. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields to include in items
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
source_typeYesHosted source type id

Output Schema

NameRequiredDescription
countYes
errorNo
itemsNo
scopeNo
fieldsYes
commandsNo
recoveryNo
warningsNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
source_typeNo
setup_statusNo
selected_fieldsNo
suggested_toolsNo

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/openWorld, so the safety profile is covered; the description adds non-obvious context on top: no credential exposure, and that workspace targeting applies per-call without mutating session defaults. It does not describe result size or pagination, which keeps it from a 5.

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

Conciseness4/5

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

Purpose is front-loaded and every sentence carries information (timing, safety, field preference, targeting). Slightly dense with four distinct concerns packed into one short block, but 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 the return shape needn't be explained, and the description covers purpose, when to call, credential safety, field selection, and the workspace resolution fallback chain. Only the explicit alternative sibling for full metadata is missing.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3, but the description adds real value by naming candidate field keys ("Key", "Kind", "Required", "LabelKey") the schema leaves abstract, plus a concise restatement of per-call workspace targeting vs. session defaults.

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

Purpose5/5

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

States a specific verb+resource (list connection fields for one hosted source type) and scopes it to a single source_type, which cleanly separates it from siblings like whodb_platform_source_types, source_constraints, and source_config.

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 before source creation or draft connection tests" gives explicit timing and intent, and "Prefer fields such as [...] unless full field metadata is needed" gives a selection rule. It never names the sibling to use instead for the full-metadata case, so it falls short of explicit alternatives.

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

whodb_platform_source_objectsA
Read-onlyIdempotent

Browse objects in one hosted WhoDB source.

Use the source name or id from whodb_platform_sources. Parent refs use kind:path, for example schema:public. This tool is read-only. Prefer fields such as ["Name", "Kind", "HasChildren"] while browsing. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
kindsNoObject kinds to include, for example Table or View
fieldsNoOptional top-level output fields to include in items
parentNoParent object ref as kind:path, for example schema:public
sourceYesHosted source id or name
page_sizeNoMaximum objects to return
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
page_offsetNoObject offset

Output Schema

NameRequiredDescription
countYes
errorNo
itemsNo
scopeNo
fieldsNo
objectsYes
commandsNo
recoveryNo
warningsNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
setup_statusNo
suggested_toolsNo

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so 'This tool is read-only' restates rather than adds. The description does add real context beyond annotations: the parent ref format (kind:path), source discovery path, and the workspace per-call targeting semantics with its precedence order. No pagination or return-shape detail, but the output schema exists.

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

Conciseness4/5

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

Four short sentences, front-loaded with the core action, then prerequisites, then recommendation, then targeting. No filler or redundancy. Slightly choppy flow 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?

With annotations covering safety/idempotency, an output schema present, and 100% parameter coverage, the description supplies the remaining needed context: where source names come from, parent ref syntax, and workspace override precedence. Only the distinction from adjacent browse 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 coverage is 100%, so the schema documents every parameter and the 3 baseline applies. The description adds modest value by suggesting concrete field names for the fields parameter and repeating the parent kind:path convention, but nothing substantial beyond the schema.

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

Purpose4/5

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

States a specific verb and resource: 'Browse objects in one hosted WhoDB source.' That distinguishes it from mutation siblings like whodb_platform_create and from whodb_platform_source_rows/columns conceptually, but it never explicitly differentiates itself from those closely-related browse tools. Clear purpose, weak 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 Guidelines3/5

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

Gives a useful prerequisite chain ('Use the source name or id from whodb_platform_sources') and a browsing hint ('Prefer fields such as ["Name", "Kind", "HasChildren"]'). However, it never says when to choose this over whodb_platform_source_rows, whodb_platform_source_columns, or whodb_platform_source_content, so the agent must infer from names alone.

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

whodb_platform_source_rowsA
Read-onlyIdempotent

Preview rows for one hosted WhoDB source object.

Use a source name or id and an object ref such as table:public.users. Results are capped by the requested limit and the MCP --max-rows setting when provided. This tool is read-only. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
refYesObject ref as kind:path, for example table:public.users
limitNoMaximum rows to return
offsetNoRow offset
sourceYesHosted source id or name
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

Output Schema

NameRequiredDescription
rowsYes
errorNo
scopeNo
totalYes
columnsYes
commandsNo
recoveryNo
retryableNo
truncatedYes
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
setup_statusNo
suggested_toolsNo

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already cover read-only and idempotency, but the description adds real context: results are capped by both the requested limit and the MCP --max-rows setting, and a per-call workspace can be supplied without mutating session defaults. That cap interaction is exactly the kind of behavior an agent cannot infer from structured fields.

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

Conciseness5/5

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

Four short sentences, front-loaded with the purpose, with no repetition of the schema and no filler. The cap and targeting caveats are stated compactly in their own 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 description covers the read-only nature, the limit ceiling, and workspace scoping. Minor gap: no mention of offset/pagination behavior or error cases for an invalid ref, but the essentials are covered.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3; the description still adds value by clarifying that source accepts either an id or a name and by explaining that limit interacts with the server-side --max-rows ceiling. It also clarifies that workspace applies to this call only and does not change defaults.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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: preview rows for one hosted source object. It is naturally distinguishable from siblings such as whodb_platform_source_objects and whodb_platform_source_columns, though it never names an alternative to sharpen 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 Guidelines3/5

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

The description explains how to call it (source name or id plus an object ref like table:public.users) but gives no explicit guidance on when to choose this over whodb_platform_dataset_rows, whodb_platform_source_content, or other row-reading siblings, and no when-not conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whodb_platform_sourcesA
Read-onlyIdempotent

List hosted WhoDB sources in the selected organization and project.

Requires a saved login on the target host. Pass workspace {host, org, project}, or omit it to use process/saved defaults. This tool is read-only and never exposes source credentials. Prefer fields such as ["id", "name", "type"] for discovery; request more fields only when needed. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields to include in items
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

Output Schema

NameRequiredDescription
hostNo
countYes
errorNo
itemsNo
scopeNo
fieldsNo
org_idNo
sourcesYes
commandsNo
recoveryNo
warningsNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
project_idNo
request_idNo
setup_statusNo
suggested_toolsNo

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and idempotentHint, so safety is covered. The description adds genuine context beyond them: a saved login is required on the target host, and source credentials are never exposed — relevant behavioral facts 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.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded and reasonably short, but the workspace parameter is described twice — once as 'Pass workspace {host, org, project}, or omit it...' and again as 'Accepts workspace {host, org, project} for per-call targeting without changing defaults' — with near-identical content that repeats 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?

With an output schema present and full parameter descriptions, the remaining burden is behavioral context, which is largely met: auth prerequisite, credential safety, and default-resolution order are all stated. A brief note on result cardinality/pagination would complete 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?

Schema coverage is 100%, so parameters are documented. The description still adds value by recommending a minimal field set (["id", "name", "type"]) for discovery and cautioning against over-requesting, which the schema does not convey.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 hosted WhoDB sources in the selected organization and project.' Clear enough to distinguish from source_config, source_content, or source_create, though it doesn't explicitly name 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 Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives targeting guidance ('omit it to use process/saved defaults') and a field-selection preference for discovery, which is useful. However, it never states when to choose this tool over neighbors such as whodb_platform_source_config or whodb_platform_project_resources, so 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.

whodb_platform_source_testA
Read-onlyIdempotent

Test a hosted WhoDB source connection.

Pass source to test an existing saved source. Omit source and pass source_type plus connection fields to test a draft config without saving it. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
portNo
sourceNoSaved hosted source id or name. If omitted, source_type and config fields test a draft source.
advancedNo
databaseNo
hostnameNo
passwordNo
usernameNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
source_typeNoHosted source type id for draft connection tests

Output Schema

NameRequiredDescription
errorNo
scopeNo
sourceNo
statusNo
commandsNo
recoveryNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
source_typeNo
setup_statusNo
suggested_toolsNo

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint/idempotentHint, but the description adds genuinely non-obvious behavior: a draft test does not persist the config, and the workspace argument targets a single call without mutating session defaults. It does not mention connectivity side effects (network egress, timeouts) or what a failure looks like, keeping it below 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short, front-loaded sentences with no filler; the primary action comes first and the two modes follow immediately. The workspace sentence is a bit dense but carries real information, so nothing meaningful is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Output schema exists, so return values need not be described, and the dual-mode logic plus workspace override are covered. Given a network-touching, 9-parameter tool with zero required parameters, it could still say whether credentials or an existing session are needed before testing, which leaves a small gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is only 33%; hostname, port, database, username, password and advanced are undocumented in both schema and description. The description adds the useful semantic that these are "connection fields" used only in draft mode, but it does not name or explain them, 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 ("Test a hosted WhoDB source connection") and enumerates the two operating modes: testing a saved source vs. a draft config. It never contrasts itself with siblings like whodb_platform_source_create or whodb_platform_source_update, which likely also validate connection details, so the differentiation is implicit 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 Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives concrete when-to-use conditions for both branches: pass `source` for an existing saved source, omit it and pass `source_type` plus connection fields to test a draft. No exclusions or prerequisites (auth requirements, when to prefer create-then-test) are stated, 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.

whodb_platform_source_typesA
Read-onlyIdempotent

List hosted WhoDB source types available for source creation.

Use this before whodb_platform_source_create or draft whodb_platform_source_test to discover valid source_type values. This tool is read-only. Prefer fields such as ["id", "label"] before requesting full source type metadata. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields to include in items
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

Output Schema

NameRequiredDescription
countYes
errorNo
itemsNo
scopeNo
fieldsNo
commandsNo
recoveryNo
warningsNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
setup_statusNo
source_typesYes
suggested_toolsNo

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered and the description's 'read-only' line is largely redundant. What it does add beyond structured data is the payload-shaping advice (request ["id","label"] before full metadata) and the per-call workspace targeting behavior, which affects how an agent should call it efficiently.

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 short sentences, front-loaded with purpose then usage then safety then parameter hints. Every sentence either routes the agent to a sibling or shapes the call; nothing is filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is a simple read-only enumeration with an output schema, fully covered parameters, and rich annotations. Purpose, prerequisites, alternatives and response-shaping guidance are all present, leaving no meaningful gap for an agent deciding whether and how to call 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?

Schema coverage is 100%, so the baseline is 3. The description goes beyond it by recommending a concrete minimal field projection for `fields` and clarifying that `workspace` targets a single call without mutating session defaults, both of which are usage-level semantics the schema only implies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('List hosted WhoDB source types') plus the scope ('available for source creation'), which immediately separates it from sibling tools like whodb_platform_sources or whodb_platform_source_types_access. An agent can tell what it returns without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to call it: before whodb_platform_source_create or when drafting whodb_platform_source_test, to discover valid source_type values. It names the dependent siblings and the reason, leaving no inference required.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whodb_platform_source_updateA
Destructive

Prepare update of a hosted WhoDB source.

This changes nothing until the returned confirmation token is approved with whodb_platform_confirm. Omitted config fields preserve the existing hosted values. Do not call whodb_platform_confirm until the user approves the confirmation preview. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
nameNoNew source display name
portNo
sourceYesHosted source id or name
advancedNo
databaseNo
hostnameNo
passwordNo
usernameNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

Output Schema

NameRequiredDescription
errorNo
scopeNo
sourceNo
statusNo
warningNo
commandsNo
recoveryNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
setup_statusNo
suggested_toolsNo
confirmation_tokenNo
confirmation_actionNo
confirmation_expiryNo
confirmation_previewNo
confirmation_requiredNo

TDQS

A4.1/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare destructiveHint=true and idempotentHint=false, and the description adds the crucial nuance that nothing mutates until the returned token is approved, converting an apparently destructive call into a staged preview. It also discloses partial-update semantics ("omitted config fields preserve the existing hosted values") and per-call workspace scoping that does not alter defaults — none of which is derivable from the annotations or schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four tight sentences, front-loaded with the tool's identity and the confirm gate, with no filler. The workspace sentence partly restates the already detailed schema description for that parameter, which is the only 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 an output schema present, the return payload (confirmation token) needn't be explained, and the two-phase lifecycle plus partial-update rule cover what an agent needs to invoke it correctly. It could still say more about failure modes, such as what happens when the source id is unknown or a field is invalid.

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 only 33%; name, source, and the workspace fields are documented in the schema, leaving hostname, port, username, password, database, and advanced undefined. The description compensates on the single most important ambiguity — that omitted fields are preserved rather than cleared — but adds nothing for the undocumented connection parameters or the advanced map.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 plus resource ("Prepare update of a hosted WhoDB source") and makes the staged nature explicit. It distinguishes itself from whodb_platform_confirm but never clarifies how it differs from the generic whodb_platform_update sibling that also appears 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 Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives a clear use sequence and an explicit prohibition: do not call whodb_platform_confirm until the user approves the confirmation preview. That is real when/when-not guidance. It stops short of naming alternative tools for the case where the caller wants an immediate read-back (e.g. whodb_platform_source_config).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whodb_platform_statusA
Read-onlyIdempotent

Report the current hosted WhoDB login and selected hosted workspace.

Requires a prior hosted login with whodb login. Use this before other whodb_platform_* tools to confirm which host, organization, and project are active. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

Output Schema

NameRequiredDescription
hostNo
emailNo
errorNo
scopeNo
user_idNo
commandsNo
recoveryNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
setup_statusNo
auto_selectedNo
saved_defaultNo
session_scopeNo
default_org_idNo
suggested_toolsNo
default_org_nameNo
platform_versionNo
process_overrideNo
default_project_idNo
workspace_selectedYes
default_project_nameNo
manifest_protocol_versionNo

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the lower bar applies; the description still adds real context beyond them — the login prerequisite and the fact that the workspace argument is per-call and does not mutate defaults. That is the kind of state/authorization context annotations cannot express.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, front-loaded with what it reports, then the prerequisite, then the ordering rule and the optional targeting behavior. No filler and no repetition of schema structure.

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 values need no explanation; with that burden removed, the description covers purpose, prerequisite, ordering and the optional targeting parameter — everything needed to call this read-only status tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3, but the description adds genuine semantics: the workspace object is a per-call target that does not change saved defaults. It overlaps somewhat with the schema's own note ('Does not change the default host'), which limits it below a 5.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: 'Report the current hosted WhoDB login and selected hosted workspace.' That is concrete enough to distinguish it from data-access siblings, but it does not differentiate against close cousins in the same family such as whodb_platform_workspace_resolve, whodb_platform_workspace_summary or whodb_platform_workspace_map, which an agent could plausibly 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 Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states the prerequisite ('Requires a prior hosted login with whodb login') and a clear ordering rule ('Use this before other whodb_platform_* tools'). It stops short of naming an alternative tool or a when-not-to-use condition, so it is strong context rather than full routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whodb_platform_storage_usageA
Read-onlyIdempotent

Return selected hosted project storage usage in bytes. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
nameNoOptional case-insensitive name substring filter for list tools
typeNoOptional type filter, for example provider type, transform trigger mode, or function language
limitNoMaximum list items to return; use offset to continue
fieldsNoTop-level output fields to include. Prefer only fields needed now; call again with more fields if needed.
offsetNoNumber of matching list items to skip
searchNoOptional case-insensitive search term; currently aliases name for list tools
statusNoOptional status filter for resources that expose status
deployedNoOptional function deployment filter: true or false
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
schema_modeNoOptional dataset schema mode filter

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 idempotentHint, so the safety profile is covered. The description adds useful behavioral context by specifying the unit (bytes) and emphasizing that workspace targeting is per-call and does not alter defaults.

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 tightly written sentences with no wasted words. The core purpose and the per-call targeting behavior are both front-loaded and easy for an agent to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only inspection tool with rich schema coverage and no output schema, the description covers the essential purpose, return unit, and targeting behavior. It could mention default resolution more explicitly, but overall it provides enough for an agent to invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all parameters thoroughly, including the workspace fallback behavior. The description repeats the workspace targeting concept but adds little beyond what the schema already states, making the baseline score of 3 appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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: 'Return selected hosted project storage usage in bytes.' It is immediately clear what the tool retrieves, but it does not distinguish itself from any sibling tools or clarify how 'selected' is determined beyond the workspace parameter.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives implied usage by stating the tool returns storage usage, and it explains how the workspace object can be used for per-call targeting without changing defaults. However, it does not say when to use this tool versus alternatives like project_health or workspace_summary.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whodb_platform_tabular_filesA
Read-onlyIdempotent

List hosted project files that can be used as tabular data. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
nameNoOptional case-insensitive name substring filter for list tools
typeNoOptional type filter, for example provider type, transform trigger mode, or function language
limitNoMaximum list items to return; use offset to continue
fieldsNoTop-level output fields to include. Prefer only fields needed now; call again with more fields if needed.
offsetNoNumber of matching list items to skip
searchNoOptional case-insensitive search term; currently aliases name for list tools
statusNoOptional status filter for resources that expose status
deployedNoOptional function deployment filter: true or false
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
schema_modeNoOptional dataset schema mode filter

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds a genuine behavioral trait beyond that: workspace overrides apply per call 'without changing defaults,' which tells the agent that passing workspace is a non-persistent, side-effect-free override. It does not mention pagination behavior or result shape, but that is a minor residual gap against the annotation coverage.

Agents need to know what a tool does to the world before 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, both front-loaded: purpose first, targeting semantics second. The second sentence partially restates the schema's workspace shape, which slightly dilutes it, but there is no filler or hedging.

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?

Annotations cover the safety profile and the schema documents all 10 parameters, so the description need not explain them. What remains unstated is the differentiator: what makes a file 'tabular' (versus the plain file-listing siblings) and whether results are paginated via limit/offset. For a listing tool in a large sibling set, that boundary should be spelled out.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so every parameter — including the nested workspace object and its host/org/project members — is already documented in the schema. The description paraphrases the workspace shape but adds no syntax, precedence, or format detail beyond what the schema provides, so the baseline 3 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 plus a precise resource subset: 'List hosted project files that can be used as tabular data.' That qualifier ('can be used as tabular data') meaningfully narrows it against the many sibling list tools like whodb_platform_files and whodb_platform_app_files. It does not name those siblings explicitly, so the agent must infer the boundary from the qualifier 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?

Usage is implied by the resource qualifier rather than stated: an agent can infer 'use this when you need files usable as tabular data.' There is no explicit when-not guidance nor any named alternative (e.g. 'use whodb_platform_files for all files, including non-tabular ones'), which is the main gap given how many file-listing siblings exist.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whodb_platform_team_membersB
Read-onlyIdempotent

List members of one organization team. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields
team_idNoTeam id for team members
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
resource_idNoResource id
resource_typeNoResource type, for example dataset, app, or function

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safe-read profile is covered. The description adds the useful 'per-call targeting without changing defaults' note, but says nothing about pagination, result limits, or whether team_id is effectively required in practice.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences with the core purpose front-loaded and no filler. The second sentence slightly duplicates the workspace object description already present in the schema, which keeps it from being a perfect 5.

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 read-only list tool with full schema coverage and no output schema, the description is minimally sufficient. However it omits that team_id is the operative identifier (zero required params is ambiguous) and gives no sense of the returned member shape or result size.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all five parameters (including the nested workspace object and team_id) are documented in the schema itself. The description only restates the workspace shape, adding no meaning beyond it; baseline 3 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 members of one organization team.' This clearly distinguishes it from sibling whodb_platform_teams (lists teams) and whodb_platform_org_members (org-level), though it never names those siblings explicitly, so the differentiation must be inferred from the noun phrase.

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 (when you need the members of a specific team) and notes the workspace override, but it offers no explicit when/when-not guidance and never points to whodb_platform_teams or whodb_platform_org_members as alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whodb_platform_teamsA
Read-onlyIdempotent

List organization teams. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields
team_idNoTeam id for team members
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
resource_idNoResource id
resource_typeNoResource type, for example dataset, app, or function

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint. The description adds one useful behavioral fact — that workspace targeting is per-call and leaves defaults untouched — but says nothing about pagination, result scope, or side effects beyond what the annotations cover.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, purpose first and workspace detail second, with no filler or repetition. It is as short as a useful definition can be.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only listing tool, the purpose plus 100% schema parameter coverage plus annotations' safety profile leave little unexplained. The odd team_id/resource_id/resource_type params are not related back to team listing, a minor gap, but the core contract is complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all five parameters, including the nested workspace object. The description echoes the workspace {host, org, project} shape and its non-persistent behavior but adds no semantics beyond the schema's own descriptions, so the baseline 3 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 organization teams'), and the annotation title repeats it consistently. It does not name the sibling whodb_platform_team_members, so an agent must infer that this lists teams rather than the members within a team, keeping it 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 gives one usage context: passing workspace for per-call targeting without changing defaults. It never states when to choose this over alternatives such as whodb_platform_team_members for member lists or whodb_platform_session_use for changing defaults, so guidance is implied rather than explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whodb_platform_transformB
Read-onlyIdempotent

Inspect one transform in the selected hosted project. Use fields to request only the top-level fields needed for the current task. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idYesResource id
fieldsNoTop-level output fields to include. Prefer only fields needed now; call again with more fields if needed.
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds that workspace targeting is per-call and does not change defaults, which is mild behavioral context, but that same fact is already stated in the workspace schema description, so the net addition is limited.

Agents need to know what a tool does to the world before 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 compact sentences that lead with the core action before the fields and workspace notes. Minor redundancy with the workspace schema text but 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?

For a read-only single-resource inspection with full schema coverage, the definition is workable. It does not say what the inspection returns or how transform runs/build state relate to it, and with no output schema the description carries that burden, leaving a gap against the richer sibling 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 100%, so the baseline is 3. The description reinforces the intent of the fields parameter and the workspace target, but adds no syntax, format or naming detail beyond what the schema already documents for id, fields and the nested workspace 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 ('Inspect one transform') plus scope ('in the selected hosted project'), which cleanly separates it from the plural whodb_platform_transforms list tool. It never names that sibling explicitly, so the differentiation is inferable 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?

'Inspect one transform' implies the single-resource read case, and the fields guidance implies iterative retrieval, but there is no explicit when-to-use vs. whodb_platform_transforms, transform_preview, transform_runs or transform_wait. Usage is only implied by the singular resource scope.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whodb_platform_transform_previewA
Read-onlyIdempotent

Run a transform graph without saving it and return the resulting rows. Use to validate a graph before whodb_platform_create transform or whodb_platform_action run. Results are capped by the MCP --max-rows setting. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields to include
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
graph_jsonYesTransform graph JSON, same shape as the transform graphJson field

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description still adds real context beyond the tags: the operation is non-persisting and output is truncated by the MCP --max-rows setting, which is a material behavioral limit an agent must plan around.

Agents need to know what a tool does to the world before 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 tight sentences, front-loaded with the core action and its non-persistence, then the validation guidance, then the edge details. The workspace sentence is mildly redundant with the schema but earns its place by stressing per-call-only targeting.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only preview tool with fully documented parameters and no output schema, the description covers purpose, routing to alternatives, row capping and workspace targeting. It does not describe failure behavior for a malformed graph, a minor omission.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents graph_json, fields and the nested workspace object. The description's workspace {host, org, project} mention largely restates the schema and adds no syntax or format detail, making the baseline 3 appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource — run a transform graph — plus the key distinguishing trait that nothing is persisted and rows are returned. An agent can immediately tell this apart from the mutating siblings whodb_platform_create and whodb_platform_action.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly frames the tool as a validation step to run before whodb_platform_create transform or whodb_platform_action run, naming both alternatives and the condition that selects this one. The agent does not have to infer when to reach for it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whodb_platform_transform_runsA
Read-onlyIdempotent

List recent runs for one hosted transform. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
limitNoMaximum runs to return
fieldsNoOptional top-level output fields to include
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
transform_idYesTransform id

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds genuine non-annotation context: that the workspace object targets a single call 'without changing defaults,' clarifying this read does not mutate session state — useful and not derivable from the hints 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?

Two short sentences with no filler: purpose first, then the one behavioral nuance that matters (per-call targeting). Every sentence earns its place and the key constraint is front-loaded.

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?

There is no output schema, so a list tool arguably should hint at what a run record contains or how 'recent' is bounded, and the description is silent on both plus on limit defaults/pagination. Given 100% schema coverage for inputs and read-only annotations, this is adequate but leaves the return shape uncharacterized.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, including per-field descriptions for limit, fields, and the nested workspace keys, so the schema does the heavy lifting and baseline is 3. The description only restates the per-call/non-persistent nature of workspace, adding minor reinforcement rather than new 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 ('List recent runs') scoped to 'one hosted transform,' which is clearly distinguishable from siblings like whodb_platform_transform, whodb_platform_transforms, and whodb_platform_function_runs. It does not, however, explicitly name or contrast with whodb_platform_transform_wait, which is the nearest ambiguous neighbor.

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 ('recent runs for one hosted transform') strongly implies when to reach for it, so usage is inferable. But there is no explicit when/when-not guidance and no routing to alternatives such as transform_wait for awaiting completion or transforms for enumerating transforms.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whodb_platform_transformsA
Read-onlyIdempotent

List transforms in the selected hosted project. Use name and type filters when known; type maps to trigger mode for this tool. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
nameNoOptional case-insensitive name substring filter for list tools
typeNoOptional type filter, for example provider type, transform trigger mode, or function language
limitNoMaximum list items to return; use offset to continue
fieldsNoTop-level output fields to include. Prefer only fields needed now; call again with more fields if needed.
offsetNoNumber of matching list items to skip
searchNoOptional case-insensitive search term; currently aliases name for list tools
statusNoOptional status filter for resources that expose status
deployedNoOptional function deployment filter: true or false
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
schema_modeNoOptional dataset schema mode filter

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover read-only, idempotent, open-world behavior, so the bar is lower, yet the description still adds non-obvious traits: "type maps to trigger mode for this tool" (a parameter reinterpretation) and that workspace targeting applies "without changing defaults" (non-persistent session behavior). It does not mention result volume or pagination, which is a minor remaining gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three tight sentences: resource/scope first, filter behavior second, per-call targeting last. No filler or restatement of the tool name, and each sentence carries information the agent needs.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 10-parameter, zero-required list tool with a nested workspace object and no output schema, the description covers list semantics, filter intent and workspace targeting adequately; pagination and field-selection behavior are left entirely to the schema, which documents them well.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3, but the description adds real meaning beyond the schema by clarifying that the generic 'type' filter maps to transform trigger mode here, and that the nested workspace object is per-call only and does not alter session defaults.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 transforms") plus the scope ("in the selected hosted project"), which distinguishes it from the singular whodb_platform_transform and the run-oriented siblings. It does not explicitly name an alternative tool, 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 Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

"Use name and type filters when known" gives filter-level guidance, and the workspace sentence explains per-call targeting semantics, but nothing states when this list tool is preferable to whodb_platform_transform, transform_runs, or transform_preview. Usage context is implied rather than prescribed.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whodb_platform_transform_waitA
Read-onlyIdempotent

Wait for a real hosted transform run to reach success or failure. Use the run id returned by whodb_platform_action and keep the timeout bounded. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields to include
run_idYesTransform run id returned by the run action or transform_runs tool
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
poll_secondsNoPolling interval, default 2 seconds
transform_idYesHosted transform id
timeout_secondsNoMaximum wait time, default 60 seconds

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, covering the safety profile. The description adds that this is a bounded polling wait, but the default timeout/poll values it alludes to are already in the schema, and it says nothing about what happens on timeout expiration.

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 core action, followed by the precondition and the targeting rule. No filler; 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?

With no output schema, the description should describe what a completed wait returns (final status, error surface on timeout). It states the target states but not the return shape or timeout behavior, leaving a moderate gap for an agent that must act on the result.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the base is 3. The description clarifies that run_id comes from whodb_platform_action and that workspace targets a single call without changing defaults, but the latter is already stated in the schema, so the added meaning is marginal.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 (wait), resource (hosted transform run), and outcome (success or failure). The 'real hosted' qualifier implicitly distinguishes it from a preview/simulated path, though it does not name the analogous sibling whodb_platform_function_wait.

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?

Tells the agent to use the run id returned by whodb_platform_action and to keep the timeout bounded, giving a clear trigger and a practical guardrail. It lacks an explicit when-not (e.g., don't poll when you only need the run record), so it falls short of a full 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whodb_platform_updateA
Destructive

Update a hosted platform resource through the selected project.

Supported resources: secret, ai_provider, ontology, dataset, transform, function, app, lineage_provider, source_object. Pass id when required and payload_json with changed fields only. Secret-like payload fields are never shown in confirmation previews. Default mode returns a confirmation token; do not call whodb_platform_confirm until the user approves the preview. Permission checks are enforced by the hosted platform. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idNoResource id for update, delete, or action operations
actionNoAction name for whodb_platform_action, for example deploy, run, rename, move, promote_to_dataset
payloadNoStructured mutation payload. Do not include projectId or the target id; the selected workspace and id are injected by the CLI.
resourceYesResource type, for example secret, ai_provider, ontology, dataset, transform, folder, file, function, source_object
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
payload_jsonNoLegacy JSON object payload. Prefer payload; projectId and id are filled from selected workspace/id when appropriate.
idempotency_keyNoStable caller-provided key. Repeating a successful write with the same key will not execute it again.

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true, idempotentHint=false, and openWorldHint=true. The description adds high-value context beyond annotations: the confirmation-token flow, the secret-like field masking in previews, and per-call workspace targeting.

Agents need to know what a tool does to the world before 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 verb and resource types, followed by workflow constraints. The enumerated resource list is somewhat long but serves selection. Minor redundancy between 'payload' and 'payload_json' guidance.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 7 parameters, nested workspace object, no output schema, and destructive semantics, the description covers the confirmation flow, payload conventions, and targeting. It omits return shape and error behavior, but the confirmation-token mention covers the key behavioral unknown.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so all 7 parameters are already documented in the schema. The description reinforces id, payload_json, and workspace semantics but adds little beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 (Update) and resource (hosted platform resource), and enumerates the supported resource types. It does not differentiate from sibling whodb_platform_action or whodb_platform_create, but the purpose is immediately clear.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives explicit workflow guidance: pass id when required, use payload_json with changed fields only, and do not call whodb_platform_confirm until the user approves. However, it doesn't explain when to prefer this tool over whodb_platform_create or whodb_platform_action.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whodb_platform_update_ontology_recordA
Destructive

Update one hosted ontology row.

Pass values containing both matcher values and replacement values, plus update_columns naming the properties to update. Default mode returns a confirmation token; do not call whodb_platform_confirm until the user approves the preview. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
valuesYesRecord values keyed by ontology property
entity_idYesOntology id
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
update_columnsNoOntology properties to update; required for update

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true, idempotentHint=false and readOnlyHint=false, so the safety profile is known. The description adds genuinely new behavior beyond the annotations — the preview/confirmation-token flow and the associated confirm-gating rule. It still omits what gets destroyed or how partial updates behave.

Agents need to know what a tool does to the world before 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 then the confirm-flow constraint; each sentence carries useful content. Slightly dense but no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive mutation with no output schema, the description covers the value structure, the preview/confirm lifecycle, and workspace targeting, which is enough for correct invocation. Minor gaps remain around error/permission behavior and partial-update semantics.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description elevates it by clarifying that 'values' must carry both matcher values and replacement values and that update_columns names the properties to update — a non-obvious structure the raw schema ('Record values keyed by ontology property') does not convey.

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+resource ('Update one hosted ontology row'), which cleanly distinguishes it from the add_ontology_record and delete_ontology_record siblings by mutation type. An agent can identify it without reading 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?

Gives explicit workflow guidance: the default mode emits a confirmation token and whodb_platform_confirm must not be called until the user approves the preview. It also explains per-call workspace targeting, but does not state prerequisites (existing entity, permissions) or contrast against other update paths.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whodb_platform_user_owned_resourcesA
Read-onlyIdempotent

List resources owned by one organization member, for example before removing them. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields to include
user_idYesUser id from whodb_platform_org_members
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds the genuinely useful behavioral detail that the workspace argument is per-call only and does not change defaults, which is real context beyond the annotations. It leaves the return shape and any pagination/limit behavior undisclosed.

Agents need to know what a tool does to the world before 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 tightly worded sentences with the core capability front-loaded and the targeting caveat second. Nothing is padding, though the second sentence duplicates what the schema's workspace description already states.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only, fully schema-documented list tool with readOnly/idempotent annotations and no output schema, the description covers purpose, scoping and targeting adequately. The residual gaps are minor: no mention of result volume, pagination, or how ownership is determined.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so every parameter including the nested workspace object is already documented, and the description's workspace sentence largely restates that. Baseline 3 applies; the description adds no new syntax or format 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 (resources owned by one organization member), and the 'owned by one member' scope naturally distinguishes it from org- or project-wide siblings such as whodb_platform_org_resources. It stops short of naming any alternative tool, so an agent must infer the sibling routing on its own.

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?

'for example before removing them' supplies a concrete when-to-use trigger, which is more than most definitions offer. However, there is no when-not guidance, no statement about prerequisites beyond what the schema says, and no named alternative for adjacent questions like per-user access or org-level lists.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whodb_platform_user_resource_accessA
Read-onlyIdempotent

List resources one organization member can access and how that access was granted. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoOptional top-level output fields to include
user_idYesUser id from whodb_platform_org_members
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description does add a genuinely useful behavioral note — that workspace targeting applies "for per-call targeting without changing defaults" — but says nothing about permission requirements, result shape, or scope 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?

Two sentences, both front-loaded: the purpose first, then the one non-obvious calling convention. No filler and nothing 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 read-only, three-parameter tool with no output schema and full schema coverage, the description covers what is needed to call it correctly and states what is returned conceptually (resources plus grant provenance). It could be slightly more complete on scoping relative to siblings, but nothing essential is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the workspace nested object is already thoroughly documented in the schema (including "Does not change the default host" and the session-default fallback chain). The description's restatement of {host, org, project} adds no meaning beyond the schema, so the baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ("resources one organization member can access and how that access was granted"), which is more precise than a generic access-listing tool. However, it never distinguishes itself from close siblings such as whodb_platform_resource_access, whodb_platform_project_access, whodb_platform_user_owned_resources, or whodb_platform_my_grants, so the agent must infer which scope applies.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage (per-member access auditing) and notes the workspace override is per-call, but it gives no explicit when-to-use versus when-not-to-use guidance or naming of alternatives. An agent cannot tell from the text alone why it would pick this over resource_access or my_grants.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whodb_platform_workflow_applyB
Destructive

Request confirmation to apply or resume a hosted WhoDB workflow plan. Completed steps are skipped on retry. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
plan_idYesWorkflow plan id returned by whodb_platform_workflow_plan
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

Output Schema

NameRequiredDescription
planNo
errorNo
plansNo
scopeNo
statusNo
messageNo
commandsNo
recoveryNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
setup_statusNo
suggested_toolsNo
confirmation_tokenNo
confirmation_expiryNo
confirmation_requiredNo

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true, openWorldHint=true, idempotentHint=false, so the safety profile is covered. The description adds genuinely new behavior — that completed steps are skipped on resume and that workspace targeting is per-call without mutating defaults. However, it never warns that applying is destructive and may not be reversible, which is the most important thing an agent should know 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?

Three tight sentences with the action front-loaded, followed by retry semantics and targeting. The final sentence mostly duplicates the workspace parameter description in the schema, making it the one sentence that does not fully earn 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?

With an output schema present, return values need not be explained, and the single required parameter is documented in the schema. What is missing is the operational context for a destructive, non-idempotent action: what state it mutates, whether it can be undone, and how it relates to the confirm/plan siblings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and the nested workspace object already documents host/org/project, including fallback ordering via session defaults. The description's 'workspace {host, org, project} ... without changing defaults' largely restates the schema's own wording, so it adds no syntax or constraint detail beyond 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?

States a specific verb pair (apply or resume) and resource (hosted WhoDB workflow plan), which cleanly separates it from whodb_platform_workflow_plan (builds the plan) and whodb_platform_workflow_get/list. The phrase 'Request confirmation to apply' leaves slight ambiguity about whether this tool executes or merely stages a confirmation, given a sibling named whodb_platform_confirm.

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 context is implied rather than spelled out: apply/resume a plan that was produced by a prior planning step. It never names the prerequisite tool (whodb_platform_workflow_plan) or the relation to whodb_platform_confirm, and gives no when-not guidance. 'Completed steps are skipped on retry' is useful retry guidance but is behavioral, not selection guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whodb_platform_workflow_getA
Read-onlyIdempotent

Read one hosted WhoDB workflow plan and its step status without returning payload values. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
plan_idYesWorkflow plan id
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

Output Schema

NameRequiredDescription
planNo
errorNo
plansNo
scopeNo
statusNo
messageNo
commandsNo
recoveryNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
setup_statusNo
suggested_toolsNo
confirmation_tokenNo
confirmation_expiryNo
confirmation_requiredNo

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/idempotent safety. The description adds real value beyond them by noting it omits payload values and that the workspace target applies per-call without mutating defaults — behaviors the annotations do not convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences, front-loaded with the core action and the no-payload caveat, then the targeting detail. Nothing wasteful, though it could be slightly more compressed.

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 readOnly annotations cover safety; the description fills the remaining gap by clarifying no payload is returned and how workspace targeting scopes per call. Adequate 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 coverage is 100%, so both plan_id and the nested workspace fields are already documented, including the 'does not change default host' note. The description reinforces the per-call semantics but largely restates what the schema already says, matching the baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 (read) plus resource (one hosted WhoDB workflow plan), and adds scope qualifiers (step status, no payload values) that distinguish it from the list/plan siblings. It doesn't explicitly name the closest alternative (whodb_platform_workflow_plan), so it stops short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied by 'read one... plan' versus the list sibling, but there is no explicit when-to-use, when-not-to-use, or named alternative such as whodb_platform_workflow_list or whodb_platform_workflow_apply.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whodb_platform_workflow_listA
Read-onlyIdempotent

List persisted hosted WhoDB workflow plans for the selected workspace. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

Output Schema

NameRequiredDescription
planNo
errorNo
plansNo
scopeNo
statusNo
messageNo
commandsNo
recoveryNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
setup_statusNo
suggested_toolsNo
confirmation_tokenNo
confirmation_expiryNo
confirmation_requiredNo

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the safety profile is covered. The description adds that plans are 'persisted' and that per-call workspace targeting does not change defaults, which is genuinely useful context, but that same default-preservation point is repeated from the schema. Nothing about result volume or paging is added, though an output schema exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with what the tool does. The second sentence is not wasteful but overlaps materially with the workspace schema description, so it is slightly redundant rather than earning full marks.

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 read-only list tool with an output schema, fully documented parameters, and annotations covering safety and world scope. The description supplies the essential purpose, so an agent can call it correctly; only the sibling differentiation is 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 100% and the workspace object documents host/org/project, the 'omit to use session default' behavior, and the discovery siblings. The description's second sentence merely restates the per-call targeting already in the schema, adding no format or precedence detail beyond 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?

Specific verb plus resource: 'List persisted hosted WhoDB workflow plans' clearly says what the tool returns and its scope. It does not name any sibling, so the agent must infer the split from workflow_get (single plan), workflow_plan (create plan), and workflow_apply (execute).

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 verb 'list'; there is no statement of when to prefer this over workflow_get or workflow_recipe, and no prerequisites or exclusions. The fallback chain for the workspace default lives in the schema, not the description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whodb_platform_workflow_planB
Read-onlyIdempotent

Validate and persist a multi-step hosted WhoDB workflow without executing writes. Use this for end-to-end goals such as source to dataset to transform to app. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
goalYesDesired end state for this hosted platform workflow
stepsYesOrdered hosted platform writes to validate and execute
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

Output Schema

NameRequiredDescription
planNo
errorNo
plansNo
scopeNo
statusNo
messageNo
commandsNo
recoveryNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
setup_statusNo
suggested_toolsNo
confirmation_tokenNo
confirmation_expiryNo
confirmation_requiredNo

TDQS

B3.1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=true and idempotentHint=true, but the description says the tool will 'persist' a workflow, which implies storing/mutating state. 'Without executing writes' only rules out downstream execution writes, not persisting the plan itself, so the description conflicts with the read-only 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?

The description is three sentences, front-loaded with the core operation, then use case and workspace behavior. There is no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema and complete parameter schemas exist, so return and parameter details need not be repeated. But for a workflow-planning tool, the description does not clarify what 'persist' means operationally, nor how this relates to workflow_apply, leaving key behavioral context ambiguous.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents goal, steps, and workspace fully. The description restates the workspace targeting behavior and gives an example workflow shape, but adds no new syntax or constraints beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: validate and persist a multi-step hosted WhoDB workflow without executing writes. It also supplies an end-to-end example. It does not explicitly name the execution sibling workflow_apply, and 'persist' makes the purpose slightly muddy.

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 a clear use case ('end-to-end goals such as source to dataset to transform to app') and implies it is not the execution tool ('without executing writes'). However, it never explicitly states when to use this versus workflow_apply or another planning sibling, nor any exclusions or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whodb_platform_workflow_recipeA
Read-onlyIdempotent

Return a goal-oriented, read-first recipe for using the hosted WhoDB platform. This never executes writes; use its steps to build and apply a confirmed workflow. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
goalYesDesired end-to-end platform outcome, for example set up ETL or create an ontology
fieldsNoOptional top-level output fields to include
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds value beyond them, disclosing that it 'never executes writes' and that the workspace argument targets 'per-call ... without changing defaults', which clarifies statefulness/side-effects that the annotations alone don't.

Agents need to know what a tool does to the world before 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 core purpose and no filler. Each sentence carries distinct information (what it returns, that it is read-only, how workspace targeting works), though the workspace sentence is dense and could be trimmed.

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?

No output schema exists, so the description should convey what a 'recipe' contains and how its steps relate to workflow_apply/confirm, but it does not. For a read-only guidance tool with 100% schema coverage and rich annotations the essentials are present, but the relationship to the confirm/apply workflow is under-described.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents goal, fields, and the nested workspace object. The description only restates the workspace {host, org, project} shape, adding no syntax or precedence detail beyond the schema. Baseline 3 applies when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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: 'Return a goal-oriented, read-first recipe for using the hosted WhoDB platform.' That clearly distinguishes it as a planning/guidance read from mutating siblings. However, it does not name or contrast sibling tools like whodb_platform_workflow_plan or whodb_platform_write_plan, whose purposes overlap and could confuse selection.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'use its steps to build and apply a confirmed workflow' implies usage context but never states explicitly when to choose this over workflow_plan, workflow_list, workflow_apply, or build_plan. The condition for selecting it is left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whodb_platform_workspace_mapA
Read-onlyIdempotent

Return a compact selected-project map across hosted sources, secrets, AI providers, datasets, ontologies, transforms, functions, root files, storage, and lineage.

Use this when the agent needs a full resource inventory after first checking whodb_platform_workspace_summary. It is read-only and never returns secret values. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
fieldsNoTop-level output fields to include, for example counts, sources, datasets, warnings.
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
omit_filesNoOmit root folder file and folder summaries. Defaults to false.
omit_lineageNoOmit project lineage summary. Defaults to false.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the bar is lower. The description adds genuinely useful context beyond them: that it never returns secret values (important for a tool whose scope includes secrets) and that the workspace argument targets a single call without altering session defaults.

Agents need to know what a tool does to the world before 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 purpose in the first sentence, followed by usage and behavior. The long resource enumeration is slightly heavy but each item legitimately defines scope, 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?

With no output schema, the description does the work of summarizing the return contents (the resource categories) and discloses the secret-safety guarantee and default-targeting behavior. Defaults for omit_files/omit_lineage live in the schema. A reader has enough to call it correctly, though return shape and size are only loosely characterized.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description restates the workspace {host, org, project} targeting semantics, but that meaning is already carried by the workspace schema description; the fields, omit_files and omit_lineage parameters get no additional explanation beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Return') and resource ('selected-project map') and enumerates exactly what the map spans (sources, secrets, AI providers, datasets, ontologies, transforms, functions, root files, storage, lineage). This scope enumeration distinguishes it clearly from sibling inventory tools like whodb_platform_workspace_summary.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly gives the trigger ('when the agent needs a full resource inventory') and routes to an alternative by ordering it after whodb_platform_workspace_summary. It stops short of stating when NOT to use it or how it differs substantively from summary, so it is clear context rather than a full when/when-not/alternatives triad.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whodb_platform_workspace_resolveA
Read-onlyIdempotent

Resolve workspace {host, org, project} to canonical IDs and verify the login. Does not switch or save defaults. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.

Output Schema

NameRequiredDescription
hostNo
emailNo
errorNo
scopeNo
user_idNo
commandsNo
recoveryNo
retryableNo
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
error_codeNo
next_stepsNo
request_idNo
setup_statusNo
auto_selectedNo
saved_defaultNo
session_scopeNo
default_org_idNo
suggested_toolsNo
default_org_nameNo
platform_versionNo
process_overrideNo
default_project_idNo
workspace_selectedYes
default_project_nameNo
manifest_protocol_versionNo

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and idempotentHint, so safety is covered. The description adds meaningful context beyond them: it verifies the login and confirms no defaults are mutated, which clarifies the operation's side-effect surface. It stops short of describing output shape, but an output schema exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is short and front-loaded with the core action. However, the non-default behavior is stated twice ('Does not switch or save defaults' and 'without changing defaults'), which is slight redundancy in an otherwise tight description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, the description needn't explain return values, and it covers the key behavior (canonical ID resolution, login verification, no default mutation). Sufficient for a single-parameter read tool, though naming discovery siblings would round it out.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, including per-field descriptions for host, org, and project, so the schema carries the parameter semantics. The description only restates the workspace tuple, adding no format or resolution details beyond what the schema provides — baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource ('Resolve workspace {host, org, project} to canonical IDs') plus a secondary effect ('verify the login'). It also distinguishes itself from the sibling whodb_platform_session_use by explicitly stating it does not switch or save defaults.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives clear context for use: per-call targeting of a workspace without changing session defaults. The exclusions ('Does not switch or save defaults') implicitly route the agent away from session_use, but no sibling is named explicitly and discovery tools (hosts/orgs/projects) are only mentioned in the schema, not the description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whodb_platform_workspace_summaryA
Read-onlyIdempotent

Return a compact, goal-aware summary of the selected hosted project.

Use this when the user asks what the platform project contains or what can be built. It combines scope, counts, highlights, gaps, next actions, recommended tools, warnings, and lineage summary without drilling into every item. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
goalNoOptional user goal used to tailor highlights and recommended next tools.
fieldsNoTop-level output fields to include, for example scope, counts, highlights, gaps, next_actions.
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
omit_filesNoOmit root folder file and folder summaries. Defaults to false.
omit_lineageNoOmit project lineage summary. Defaults to false.

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent and open-world, so safety is covered. The description adds real value on top: it enumerates what the summary aggregates (scope, counts, highlights, gaps, next actions, recommended tools, warnings, lineage) and clarifies that workspace targeting is per-call and 'without changing defaults'.

Agents need to know what a tool does to the world before 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 front-loaded sentences with no filler: purpose first, usage second, targeting semantics third. Nothing is redundant, though the third sentence partially overlaps with the schema's own workspace description.

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 output schema, the description compensates by listing the categories the summary returns and noting the goal parameter tailors highlights and recommendations. Workspace resolution path (hosts/orgs/projects/session_use) is documented in the schema. Complete enough 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 100%, so the schema already documents goal, fields, workspace, omit_files and omit_lineage. The description only restates the workspace targeting semantics, adding marginal meaning beyond the structured fields. Baseline 3 applies when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious 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: 'Return a compact, goal-aware summary of the selected hosted project.' The phrase 'without drilling into every item' hints at how it differs from atomic siblings, but no sibling (e.g. workspace_map, project_health) is named, so differentiation must be inferred.

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 clear triggering context: 'Use this when the user asks what the platform project contains or what can be built.' However it offers no when-not guidance and never names an alternative, leaving the agent to infer that detail tools come after this overview.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

whodb_platform_write_planA
Read-onlyIdempotent

Validate and preview a hosted platform write without executing it.

Use this before calling mutating tools when the agent needs a safe dry-run summary. It reuses the same generic write specs as real writes, returns payload keys, suggested reads, and direct impact, but does not create a confirmation token. Accepts workspace {host, org, project} for per-call targeting without changing defaults.

NameRequiredDescriptionDefault
idNoResource id for update, delete, or action operations
actionNoAction name when operation is action, for example deploy, run, rename, move, promote_to_dataset
fieldsNoTop-level output fields to include, for example preview, affected, warnings.
payloadNoStructured payload to validate and summarize. This tool never executes it.
resourceYesResource type, for example secret, ai_provider, ontology, dataset, transform, folder, file, function, source_object
operationYesWrite operation: create, update, delete, or action
workspaceNoOptional target for this call only. Omit to use the session default set by whodb_platform_session_use, then process/saved defaults. Discover targets with whodb_platform_hosts, whodb_platform_orgs and whodb_platform_projects.
omit_filesNoOmit root folder file and folder nodes for impact lookup. Defaults to false.
omit_lineageNoOmit hosted lineage edges for impact lookup. Defaults to false.
payload_jsonNoLegacy JSON object payload. Prefer payload; this tool never executes it.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint and openWorldHint, and the description is consistent with them ("without executing it"). Beyond that it discloses the return surface (payload keys, suggested reads, direct impact) and the important negative behavior that no confirmation token is created, which is context the annotations cannot express.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four sentences, front-loaded with the core behavior (validate/preview, no execution) before the behavioral and targeting detail. Slightly long, but each sentence carries distinct information and none is 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 10-parameter tool with a nested workspace object and no output schema, the description does the needed work by summarizing what the preview returns and clarifying the confirmation-token gap. What remains thin is how the plan relates to the confirm/execute flow and whether the returned plan is reused elsewhere.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so every parameter is already documented, and the description's mention of workspace {host, org, project} largely restates what the schema says about per-call targeting not changing defaults. Baseline 3 is appropriate; it adds no enum, format or precedence detail beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb pair (validate/preview) plus the resource (a hosted platform write) and immediately disambiguates from the real mutating siblings by saying it executes nothing. An agent can tell it apart from whodb_platform_create/update/delete/action without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit when-to-use rule: call it before mutating tools when a safe dry-run summary is needed. It does not name which sibling mutators it precedes (create, update, delete, action) or contrast with adjacent planning tools like whodb_platform_change_impact or whodb_platform_confirm, so the routing is clear but not fully closed.

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. 41 tool updatesv0.136.0
    • Changedwhodb_platform_app_screenshot4 fields changed
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedwhodb_platform_app_views4 fields changed
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedwhodb_platform_apps12 fields changed
      • addedInput schema / properties / deployed
        Added value: +{
        +  "description": "Optional function deployment filter: true or false",
        +  "type": "string"
        +}
      • removedInput schema / properties / env
        Removed value: -{
        -  "description": "Optional app environment for the current view",
        -  "type": "string"
        -}
      • changedInput schema / properties / fields / description
        Previous value: -"Optional top-level output fields"New value: +"Top-level output fields to include. Prefer only fields needed now; call again with more fields if needed."
      • removedInput schema / properties / id
        Removed value: -{
        -  "description": "App id for detail, files, or version view",
        -  "type": "string"
        -}
      • addedInput schema / properties / limit
        Added value: +{
        +  "description": "Maximum list items to return; use offset to continue",
        +  "type": "integer"
        +}
      • addedInput schema / properties / name
        Added value: +{
        +  "description": "Optional case-insensitive name substring filter for list tools",
        +  "type": "string"
        +}
      • addedInput schema / properties / offset
        Added value: +{
        +  "description": "Number of matching list items to skip",
        +  "type": "integer"
        +}
      • addedInput schema / properties / schema_mode
        Added value: +{
        +  "description": "Optional dataset schema mode filter",
        +  "type": "string"
        +}
      • addedInput schema / properties / search
        Added value: +{
        +  "description": "Optional case-insensitive search term; currently aliases name for list tools",
        +  "type": "string"
        +}
      • addedInput schema / properties / status
        Added value: +{
        +  "description": "Optional status filter for resources that expose status",
        +  "type": "string"
        +}
      • addedInput schema / properties / type
        Added value: +{
        +  "description": "Optional type filter, for example provider type, transform trigger mode, or function language",
        +  "type": "string"
        +}
      • removedInput schema / properties / version
        Removed value: -{
        -  "description": "App version for a version view",
        -  "type": "integer"
        -}
    • Changedwhodb_platform_bundle_diff4 fields changed
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedwhodb_platform_bundle_export12 fields changed
      • addedOutput schema / properties / bundle / properties / functions / items / properties / scheduleCron
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / bundle / properties / functions / items / properties / scheduleInput
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / bundle / properties / functions / items / properties / scheduleLastRunAt
        Added value: +{
        +  "type": [
        +    "null",
        +    "string"
        +  ]
        +}
      • addedOutput schema / properties / bundle / properties / functions / items / properties / scheduleVersion
        Added value: +{
        +  "type": "integer"
        +}
      • changedOutput schema / properties / bundle / properties / functions / items / required
        Previous value: -[
        -  "id",
        -  "projectId",
        -  "name",
        -  "description",
        -  "language",
        -  "entryPoint",
        -  "timeoutSeconds",
        -  "memory",
        -  "cpu",
        -  "createdBy",
        -  "createdAt",
        -  "updatedAt",
        -  "files",
        -  "dependencies",
        -  "providerIds",
        -  "ontologyIds",
        -  "readOnlyOntologyIds",
        -  "providerConfigs",
        -  "secretBindings",
        -  "defaultMaxTokens",
        -  "defaultTemperature",
        -  "isDeployed"
        -]New value: +[
        +  "id",
        +  "projectId",
        +  "name",
        +  "description",
        +  "language",
        +  "entryPoint",
        +  "timeoutSeconds",
        +  "memory",
        +  "cpu",
        +  "createdBy",
        +  "createdAt",
        +  "updatedAt",
        +  "files",
        +  "dependencies",
        +  "providerIds",
        +  "ontologyIds",
        +  "readOnlyOntologyIds",
        +  "providerConfigs",
        +  "secretBindings",
        +  "defaultMaxTokens",
        +  "defaultTemperature",
        +  "isDeployed",
        +  "scheduleCron",
        +  "scheduleInput",
        +  "scheduleVersion"
        +]
      • addedOutput schema / properties / bundle / properties / ontologies / items / properties / links / items / properties / targetKind
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / bundle / properties / ontologies / items / properties / links / items / properties / targetReferenceId
        Added value: +{
        +  "type": "string"
        +}
      • changedOutput schema / properties / bundle / properties / ontologies / items / properties / links / items / required
        Previous value: -[
        -  "id",
        -  "apiName",
        -  "targetOntologyApiName",
        -  "cardinality",
        -  "foreignKeyProperty",
        -  "targetForeignKeyProperty",
        -  "joinTable",
        -  "sourceColumnInJoinTable",
        -  "targetColumnInJoinTable",
        -  "displayName",
        -  "pluralDisplayName",
        -  "reverseDisplayName"
        -]New value: +[
        +  "id",
        +  "apiName",
        +  "targetOntologyApiName",
        +  "cardinality",
        +  "foreignKeyProperty",
        +  "targetForeignKeyProperty",
        +  "joinTable",
        +  "sourceColumnInJoinTable",
        +  "targetColumnInJoinTable",
        +  "displayName",
        +  "pluralDisplayName",
        +  "reverseDisplayName",
        +  "targetKind",
        +  "targetReferenceId"
        +]
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedwhodb_platform_bundle_import2 fields changed
      • changedOutput schema / properties / recovery / type
        Previous value: -[
        -  "null",
        -  "object"
        -]New value: +"object"
      • changedOutput schema / properties / suggested_tools / type
        Previous value: -[
        -  "null",
        -  "array"
        -]New value: +"array"
    • Changedwhodb_platform_bundle_import_plan4 fields changed
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedwhodb_platform_clone2 fields changed
      • changedOutput schema / properties / recovery / type
        Previous value: -[
        -  "null",
        -  "object"
        -]New value: +"object"
      • changedOutput schema / properties / suggested_tools / type
        Previous value: -[
        -  "null",
        -  "array"
        -]New value: +"array"
    • Changedwhodb_platform_confirm4 fields changed
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedwhodb_platform_doctor4 fields changed
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedwhodb_platform_hosts5 fields changed
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / request_id
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedwhodb_platform_next_actions1 field changed
      • addedInput schema / properties / function_id
        Added value: +{
        +  "description": "For runtime readiness, inspect the latest persisted run of this function without executing it.",
        +  "type": "string"
        +}
    • Changedwhodb_platform_orgs4 fields changed
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedwhodb_platform_pending4 fields changed
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedwhodb_platform_project_create2 fields changed
      • changedOutput schema / properties / recovery / type
        Previous value: -[
        -  "null",
        -  "object"
        -]New value: +"object"
      • changedOutput schema / properties / suggested_tools / type
        Previous value: -[
        -  "null",
        -  "array"
        -]New value: +"array"
    • Changedwhodb_platform_project_delete2 fields changed
      • changedOutput schema / properties / recovery / type
        Previous value: -[
        -  "null",
        -  "object"
        -]New value: +"object"
      • changedOutput schema / properties / suggested_tools / type
        Previous value: -[
        -  "null",
        -  "array"
        -]New value: +"array"
    • Changedwhodb_platform_project_health1 field changed
      • addedInput schema / properties / function_id
        Added value: +{
        +  "description": "For runtime readiness, inspect the latest persisted run of this function without executing it.",
        +  "type": "string"
        +}
    • Changedwhodb_platform_project_rename2 fields changed
      • changedOutput schema / properties / recovery / type
        Previous value: -[
        -  "null",
        -  "object"
        -]New value: +"object"
      • changedOutput schema / properties / suggested_tools / type
        Previous value: -[
        -  "null",
        -  "array"
        -]New value: +"array"
    • Changedwhodb_platform_projects4 fields changed
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedwhodb_platform_resolve_resource2 fields changed
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • changedOutput schema / properties / suggested_tools / type
        Previous value: -[
        -  "null",
        -  "array"
        -]New value: +"array"
    • Changedwhodb_platform_runtime_readiness1 field changed
      • addedInput schema / properties / function_id
        Added value: +{
        +  "description": "For runtime readiness, inspect the latest persisted run of this function without executing it.",
        +  "type": "string"
        +}
    • Addedwhodb_platform_security_audit
    • Changedwhodb_platform_session_use4 fields changed
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedwhodb_platform_setup_status4 fields changed
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedwhodb_platform_source_columns4 fields changed
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedwhodb_platform_source_config4 fields changed
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedwhodb_platform_source_create4 fields changed
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedwhodb_platform_source_delete4 fields changed
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedwhodb_platform_source_fields4 fields changed
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedwhodb_platform_source_objects4 fields changed
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedwhodb_platform_source_rows4 fields changed
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedwhodb_platform_source_test4 fields changed
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedwhodb_platform_source_types4 fields changed
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedwhodb_platform_source_update4 fields changed
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedwhodb_platform_sources4 fields changed
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedwhodb_platform_status4 fields changed
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
    • Changedwhodb_platform_workflow_apply2 fields changed
      • changedOutput schema / properties / recovery / type
        Previous value: -[
        -  "null",
        -  "object"
        -]New value: +"object"
      • changedOutput schema / properties / suggested_tools / type
        Previous value: -[
        -  "null",
        -  "array"
        -]New value: +"array"
    • Changedwhodb_platform_workflow_get2 fields changed
      • changedOutput schema / properties / recovery / type
        Previous value: -[
        -  "null",
        -  "object"
        -]New value: +"object"
      • changedOutput schema / properties / suggested_tools / type
        Previous value: -[
        -  "null",
        -  "array"
        -]New value: +"array"
    • Changedwhodb_platform_workflow_list2 fields changed
      • changedOutput schema / properties / recovery / type
        Previous value: -[
        -  "null",
        -  "object"
        -]New value: +"object"
      • changedOutput schema / properties / suggested_tools / type
        Previous value: -[
        -  "null",
        -  "array"
        -]New value: +"array"
    • Changedwhodb_platform_workflow_plan2 fields changed
      • changedOutput schema / properties / recovery / type
        Previous value: -[
        -  "null",
        -  "object"
        -]New value: +"object"
      • changedOutput schema / properties / suggested_tools / type
        Previous value: -[
        -  "null",
        -  "array"
        -]New value: +"array"
    • Changedwhodb_platform_workspace_resolve4 fields changed
      • addedOutput schema / properties / error_code
        Added value: +{
        +  "type": "string"
        +}
      • addedOutput schema / properties / recovery
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "LikelyCause": {
        +      "type": "string"
        +    },
        +    "NextSteps": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": [
        +        "null",
        +        "array"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "LikelyCause",
        +    "NextSteps"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / retryable
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / suggested_tools
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
  2. 167 tool updatesv0.135.0
    • Removedwhodb_audit
    • Removedwhodb_columns
    • Removedwhodb_confirm
    • Removedwhodb_connections
    • Removedwhodb_diff
    • Removedwhodb_erd
    • Removedwhodb_explain
    • Addedwhodb_mcp_setup
    • Removedwhodb_pending
    • Addedwhodb_platform_action
    • Addedwhodb_platform_active_version
    • Addedwhodb_platform_add_ontology_record
    • Addedwhodb_platform_add_ontology_records
    • Addedwhodb_platform_ai_provider_models
    • Addedwhodb_platform_ai_providers
    • Addedwhodb_platform_app
    • Addedwhodb_platform_app_component
    • Addedwhodb_platform_app_components
    • Addedwhodb_platform_app_files
    • Addedwhodb_platform_app_logic_graph
    • Addedwhodb_platform_app_page_files
    • Addedwhodb_platform_app_screenshot
    • Addedwhodb_platform_app_sdk
    • Addedwhodb_platform_app_sdks
    • Addedwhodb_platform_app_version_view
    • Addedwhodb_platform_app_view
    • Addedwhodb_platform_app_views
    • Addedwhodb_platform_apps
    • Addedwhodb_platform_build_plan
    • Addedwhodb_platform_bundle_diff
    • Addedwhodb_platform_bundle_export
    • Addedwhodb_platform_bundle_import
    • Addedwhodb_platform_bundle_import_plan
    • Addedwhodb_platform_change_impact
    • Addedwhodb_platform_clone
    • Addedwhodb_platform_confirm
    • Addedwhodb_platform_create
    • Addedwhodb_platform_create_dataset
    • Addedwhodb_platform_create_ontology_fast_lookup
    • Addedwhodb_platform_data_model_summary
    • Addedwhodb_platform_dataset
    • Addedwhodb_platform_dataset_rows
    • Addedwhodb_platform_datasets
    • Addedwhodb_platform_delete
    • Addedwhodb_platform_delete_ontology_fast_lookup
    • Addedwhodb_platform_delete_ontology_record
    • Addedwhodb_platform_deleted_resources
    • Addedwhodb_platform_deletion_impact
    • Addedwhodb_platform_discover_shared_ontologies
    • Addedwhodb_platform_doctor
    • Addedwhodb_platform_file_inspect
    • Addedwhodb_platform_file_preview
    • Addedwhodb_platform_file_search
    • Addedwhodb_platform_files
    • Addedwhodb_platform_function
    • Addedwhodb_platform_function_runs
    • Addedwhodb_platform_function_wait
    • Addedwhodb_platform_functions
    • Addedwhodb_platform_gap_analysis
    • Addedwhodb_platform_hosts
    • Addedwhodb_platform_lineage
    • Addedwhodb_platform_lineage_neighbors
    • Addedwhodb_platform_lineage_providers
    • Addedwhodb_platform_my_grants
    • Addedwhodb_platform_next_actions
    • Addedwhodb_platform_object_versions
    • Addedwhodb_platform_ontologies
    • Addedwhodb_platform_ontology
    • Addedwhodb_platform_ontology_action_executions
    • Addedwhodb_platform_ontology_action_preview
    • Addedwhodb_platform_ontology_aggregate
    • Addedwhodb_platform_ontology_describe
    • Addedwhodb_platform_ontology_embedding_jobs
    • Addedwhodb_platform_ontology_fast_lookup_suggestions
    • Addedwhodb_platform_ontology_fast_lookups
    • Addedwhodb_platform_ontology_follow_link
    • Addedwhodb_platform_ontology_query
    • Addedwhodb_platform_ontology_record_capabilities
    • Addedwhodb_platform_ontology_reference_impact
    • Addedwhodb_platform_ontology_references
    • Addedwhodb_platform_ontology_rows
    • Addedwhodb_platform_ontology_similar
    • Addedwhodb_platform_ontology_stats
    • Addedwhodb_platform_org_domains
    • Addedwhodb_platform_org_members
    • Addedwhodb_platform_org_package_installations
    • Addedwhodb_platform_org_resources
    • Addedwhodb_platform_org_sso
    • Addedwhodb_platform_orgs
    • Addedwhodb_platform_package
    • Addedwhodb_platform_package_installation_update
    • Addedwhodb_platform_package_installations
    • Addedwhodb_platform_package_library
    • Addedwhodb_platform_packages
    • Addedwhodb_platform_pending
    • Addedwhodb_platform_preview_create_package
    • Addedwhodb_platform_preview_import_package
    • Addedwhodb_platform_preview_install_package
    • Addedwhodb_platform_preview_shared_import
    • Addedwhodb_platform_preview_shared_install
    • Addedwhodb_platform_project_access
    • Addedwhodb_platform_project_active_versions
    • Addedwhodb_platform_project_create
    • Addedwhodb_platform_project_delete
    • Addedwhodb_platform_project_health
    • Addedwhodb_platform_project_lineage
    • Addedwhodb_platform_project_rename
    • Addedwhodb_platform_project_resources
    • Addedwhodb_platform_projects
    • Addedwhodb_platform_promote_file_to_dataset
    • Addedwhodb_platform_resolve_resource
    • Addedwhodb_platform_resource_access
    • Addedwhodb_platform_resource_graph
    • Addedwhodb_platform_resource_permissions
    • Addedwhodb_platform_resource_types_access
    • Addedwhodb_platform_restore
    • Addedwhodb_platform_runtime_readiness
    • Addedwhodb_platform_secrets
    • Addedwhodb_platform_service_accounts
    • Addedwhodb_platform_session_clear
    • Addedwhodb_platform_session_use
    • Addedwhodb_platform_setup_status
    • Addedwhodb_platform_share_dependents
    • Addedwhodb_platform_shared_by_me
    • Addedwhodb_platform_shared_ontologies
    • Addedwhodb_platform_shared_package
    • Addedwhodb_platform_shared_with_me
    • Addedwhodb_platform_source_columns
    • Addedwhodb_platform_source_config
    • Addedwhodb_platform_source_constraints
    • Addedwhodb_platform_source_content
    • Addedwhodb_platform_source_create
    • Addedwhodb_platform_source_delete
    • Addedwhodb_platform_source_fields
    • Addedwhodb_platform_source_objects
    • Addedwhodb_platform_source_rows
    • Addedwhodb_platform_source_test
    • Addedwhodb_platform_source_types
    • Addedwhodb_platform_source_update
    • Addedwhodb_platform_sources
    • Addedwhodb_platform_status
    • Addedwhodb_platform_storage_usage
    • Addedwhodb_platform_tabular_files
    • Addedwhodb_platform_team_members
    • Addedwhodb_platform_teams
    • Addedwhodb_platform_transform
    • Addedwhodb_platform_transform_preview
    • Addedwhodb_platform_transform_runs
    • Addedwhodb_platform_transform_wait
    • Addedwhodb_platform_transforms
    • Addedwhodb_platform_update
    • Addedwhodb_platform_update_ontology_record
    • Addedwhodb_platform_user_owned_resources
    • Addedwhodb_platform_user_resource_access
    • Addedwhodb_platform_workflow_apply
    • Addedwhodb_platform_workflow_get
    • Addedwhodb_platform_workflow_list
    • Addedwhodb_platform_workflow_plan
    • Addedwhodb_platform_workflow_recipe
    • Addedwhodb_platform_workspace_map
    • Addedwhodb_platform_workspace_resolve
    • Addedwhodb_platform_workspace_summary
    • Addedwhodb_platform_write_plan
    • Removedwhodb_query
    • Removedwhodb_schemas
    • Removedwhodb_suggestions
    • Removedwhodb_tables
  3. 2 tool updatesv0.134.0
    • Changedwhodb_pending1 field changed
      • addedOutput schema / properties / pending / items / properties / parameters
        Added value: +{
        +  "items": true,
        +  "type": [
        +    "null",
        +    "array"
        +  ]
        +}
    • Changedwhodb_query1 field changed
      • addedOutput schema / properties / confirmation_parameters
        Added value: +{
        +  "items": true,
        +  "type": [
        +    "null",
        +    "array"
        +  ]
        +}
  4. 1 tool updatev0.120.0
    • Changedwhodb_confirm3 fields changed
      • addedOutput schema / properties / commands
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": [
        +    "null",
        +    "array"
        +  ]
        +}
      • addedOutput schema / properties / next_steps
        Added value: +{
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": [
        +    "null",
        +    "array"
        +  ]
        +}
      • addedOutput schema / properties / setup_status
        Added value: +{
        +  "type": "string"
        +}
  5. 2 tool updatesv0.115.0
    • Changedwhodb_confirm1 field changed
      • changedInput schema / properties / token / description
        Previous value: -"Confirmation token from a previous whodb_query response"New value: +"Confirmation token from a previous whodb_query or hosted platform write response"
    • Changedwhodb_pending1 field changed
      • changedOutput schema / properties / pending / items / required
        Previous value: -[
        -  "token",
        -  "query",
        -  "connection",
        -  "expires_at"
        -]New value: +[
        +  "token",
        +  "expires_at"
        +]
  6. 12 tool updatesv0.112.0
    • Addedwhodb_audit
    • Addedwhodb_columns
    • Addedwhodb_confirm
    • Addedwhodb_connections
    • Addedwhodb_diff
    • Addedwhodb_erd
    • Addedwhodb_explain
    • Addedwhodb_pending
    • Addedwhodb_query
    • Addedwhodb_schemas
    • Addedwhodb_suggestions
    • Addedwhodb_tables

TDQS

B3.1/5.0

Scored across 156 tools

Disambiguation2/5

The surface is riddled with overlapping read tools that all answer 'what's in my project' (workspace_summary, workspace_map, project_health, project_resources, data_model_summary, resource_graph, next_actions, gap_analysis), and four competing write paths (generic create/update/action, typed source_create/create_dataset wrappers, preview, write_plan, workflow_apply). The near-identical preview_* family (preview_create_package, preview_import_package, preview_install_package, preview_shared_import, preview_shared_install) and the product-specific ontology query/rows/aggregate/stats/follow_link set are better delimited, but an agent must read long prose to choose correctly.

Naming Consistency3/5

Everything uses snake_case with the whodb_platform_ prefix, which helps, but there is no consistent verb_noun scheme: list tools are bare nouns (sources, datasets, ontologies, packages, teams), reads use inspect/read/view/get variably, and there are singular/plural pairs (app_sdk/app_sdks, app_view/app_views, project_access/resource_access, installation vs installations). The lone whodb_mcp_setup breaks the prefix convention entirely.

Tool Count1/5

156 tools is far beyond any reasonable scope and will swamp an agent's context and selection accuracy, even for a broad hosted data platform. Many entries are thin variations of each other, so the count reflects surface sprawl rather than earned capability.

Completeness4/5

Coverage is genuinely deep: CRUD for sources, datasets, ontologies, transforms, functions, apps and packages, plus sharing, lineage, versions, storage, org/team admin, confirmation lifecycle and workflow persistence. Some operations are only reachable through the catch-all whodb_platform_action and external schema document, which is a minor gap but not a dead end.

Maintenance

ActivityActive
ResponsivenessWithin a week

Related MCP Connectors

Related MCP Servers