Skip to main content
Glama
whodb-cli

whodb-cli

Official
by clidey

whodb_platform_bundle_diff

Read-onlyIdempotent

Compares an exported project bundle with a hosted project to identify resources that will be created or skipped, with optional conflict handling and per-call workspace targeting.

Instructions

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.

Input Schema

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

NameRequiredDescriptionDefault
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

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changedv0.136.0
    • 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. Addedv0.135.0

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.

Deploy Server

Other Tools