Skip to main content
Glama

Execute a catalog endpoint or workflow

connections_execute
Destructive

Run ONE endpoint of the Connections operator catalog by endpoint_id (or service+tool_name) with its params. The catalog is Connections' own first-party OpenAPI (https://studio.connectionsapi.com/v1/openapi.json, per-plane specs at https://studio.connectionsapi.com/connect); each row carries its HTTP method and host. Money-moving operations on a payment provider (refunds, payouts, balance transfers, charges, payment-intent captures, on Pay or on a connected provider such as Stripe) are not run by this tool and answer with a link to the payment dashboard; that provider's other writes, such as creating a product or a customer, still run here. Alternatively run a multi-step WORKFLOW (pass workflow: a saved name or an inline {steps:[…]} definition; steps reference {{params.x}} and {{steps..}} from prior outputs). First-party endpoints run as the signed-in member; a connected third-party service is called with the credential stored for it in the company's vault, attached on the server. Target a specific connected account with instance (an instanceName from connections_accounts, or a 12-digit AWS account id). FAST PATH - executor-native ops (service 'aws'): rds_query {db:, sql} queries a plane DB by NAME (no ARNs; its catalog result lists the accepted names); aws_sweep {tool_name, params?, instances?} runs one op across every connected account and reports requested/eligible/swept/skipped/complete; probe {targets:[{url, expectStatus?, bodyContains?}]} checks deployed endpoints; logs_tail {functionName, minutes?, filter?} returns a Lambda's recent log lines; qr_code {value, format?, sizePx?} turns any link or text into a scannable QR code (SVG markup and/or a PNG data URL). AWS response shaping params (any aws op): outputFilter (JMESPath subset, e.g. 'Functions[].{name:FunctionName,mod:LastModified}') filters server-side before returning and reports outputFilterMatched:false with a bounded raw snippet when the path misses; paginateAll:true follows NextToken/Marker server-side and merges (cap 20 pages/5MB); includeEnv:true adds a Lambda's non-sensitive environment values to the reply (omitted by default).

Input Schema

NameRequiredDescriptionDefault
paramsNoPath/query/body values per the endpoint's parameters schema (or the workflow inputs).
personNoLinked person to run this call as (first name). Omit to run as the connection's holder.
projectNoWhich COMPANY/workspace a Studio console call acts on (Studio's ?project=) - a company id, project id or ref; omit for your default. Accepted here or inside `params`. A ref this account cannot reach returns 404 project_not_found and nothing is created.
serviceNoWith `tool_name`, the first-party plane or connected service to run against (e.g. "aws", "studio", "notes", "pay"). Use this pair when you know the op by name; use `endpoint_id` when you have one from connections_search_catalog.
instanceNoWhich connected account/instance of the service to use (default 'default').
workflowNoA saved workflow name, or an inline { steps: [{id, service, tool, params}], output } as JSON text (an object is taken too) to chain multiple ops in one call. Each call has a ~24s time budget (the HTTP endpoint's 29s hard ceiling) - practically ~20-30 steps at typical per-step latency, fewer for a heavier op. A batch that would run past it STOPS STARTING new steps (never mid-step) and answers 200 with {ok:false, partial:true, stopped_reason:'time_budget', steps, stoppedAtIndex, stoppedAtStep, trace, output} carrying every step that DID run - never a bare 500. Resume by re-sending only the remaining steps (from stoppedAtIndex on) as a fresh inline workflow; do not resend the whole batch, or an already-run non-idempotent step runs twice.
tool_nameNoWith `service`, the op to run (e.g. "rds_query"). On its OWN - no endpoint_id and no service - it reaches a tool on this server directly, which is how a client whose tool list is out of date still calls a new tool.
endpoint_idNoThe id from a search result.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / allOf
      Previous value: -[
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "rds_query"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "continueAfterTimeout": {
      -              "description": "Data API flag, forwarded verbatim.",
      -              "type": "boolean"
      -            },
      -            "db": {
      -              "description": "The plane database to query, by NAME (never an ARN) - lowercase. Some are aliases of another name (database→appdb, connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      -              "enum": [
      -                "main",
      -                "aegis",
      -                "analytics",
      -                "pay",
      -                "companies",
      -                "events",
      -                "dating",
      -                "intel",
      -                "studio",
      -                "ledger",
      -                "deals",
      -                "ads",
      -                "chat",
      -                "market",
      -                "referrals",
      -                "notes",
      -                "learn",
      -                "storage",
      -                "give",
      -                "launch",
      -                "communities",
      -                "schedule",
      -                "gift",
      -                "seats",
      -                "boardroom",
      -                "email",
      -                "book",
      -                "sales",
      -                "newsletter",
      -                "legal",
      -                "rivals",
      -                "message",
      -                "apps",
      -                "architect",
      -                "verify",
      -                "import",
      -                "sign",
      -                "games",
      -                "myconnect",
      -                "notifications",
      -                "realtor",
      -                "credits",
      -                "licensing",
      -                "crowdfund",
      -                "ship",
      -                "catalog",
      -                "attention",
      -                "network",
      -                "dictation",
      -                "pass",
      -                "ab",
      -                "pages",
      -                "mydomains",
      -                "enterprise",
      -                "life",
      -                "wallpaper",
      -                "calls",
      -                "share",
      -                "google",
      -                "deletion",
      -                "outreach",
      -                "video",
      -                "translate",
      -                "contacts",
      -                "appdb",
      -                "orders",
      -                "database",
      -                "cranium",
      -                "connections",
      -                "identity",
      -                "accounts",
      -                "argus",
      -                "plutus",
      -                "payments",
      -                "intelligence",
      -                "heimdall",
      -                "hephaestus",
      -                "brand-deals",
      -                "hermes",
      -                "history",
      -                "locker"
      -              ],
      -              "type": "string"
      -            },
      -            "formatRecordsAs": {
      -              "description": "RDS Data API records format; defaults to JSON.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      -              "type": "string"
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied server-side before the rows are returned.",
      -              "type": "string"
      -            },
      -            "parameters": {
      -              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      -              "type": "array"
      -            },
      -            "resultSetOptions": {
      -              "description": "Data API resultSetOptions, forwarded verbatim.",
      -              "type": "object"
      -            },
      -            "schema": {
      -              "description": "Data API schema qualifier, forwarded verbatim.",
      -              "type": "string"
      -            },
      -            "sql": {
      -              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      -              "type": "string"
      -            },
      -            "transaction": {
      -              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      -              "enum": [
      -                "begin",
      -                "commit",
      -                "rollback"
      -              ],
      -              "type": "string"
      -            },
      -            "transactionId": {
      -              "description": "Run inside an existing Data API transaction.",
      -              "type": "string"
      -            },
      -            "write": {
      -              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      -              "type": "boolean"
      -            }
      -          },
      -          "required": [
      -            "db"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "aws_sweep"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "tool_name"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "endpoint_id"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "endpoint_id": {
      -              "description": "A catalog endpoint id, used instead of tool_name.",
      -              "type": "string"
      -            },
      -            "includeEnv": {
      -              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      -              "type": "boolean"
      -            },
      -            "instances": {
      -              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": [
      -                "array",
      -                "string"
      -              ]
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied to each instance's result.",
      -              "type": "string"
      -            },
      -            "paginateAll": {
      -              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      -              "type": "boolean"
      -            },
      -            "params": {
      -              "description": "The swept op's OWN params, passed through to each per-instance call.",
      -              "type": "object"
      -            },
      -            "tool_name": {
      -              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "probe"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "targets"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "url"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "bodyContains": {
      -              "description": "Single-target shorthand: substring the body must contain.",
      -              "type": "string"
      -            },
      -            "expectStatus": {
      -              "description": "Single-target shorthand: the exact status to expect.",
      -              "type": "integer"
      -            },
      -            "headers": {
      -              "description": "Single-target shorthand: request headers.",
      -              "type": "object"
      -            },
      -            "method": {
      -              "description": "Single-target shorthand: HTTP method. Default GET.",
      -              "type": "string"
      -            },
      -            "targets": {
      -              "description": "Up to 10 targets per call.",
      -              "items": {
      -                "properties": {
      -                  "bodyContains": {
      -                    "description": "Substring the response body must contain to pass.",
      -                    "type": "string"
      -                  },
      -                  "expectStatus": {
      -                    "description": "Pass only on this exact status; default any 2xx.",
      -                    "type": "integer"
      -                  },
      -                  "headers": {
      -                    "description": "Request headers. Sent, never echoed back in the reply.",
      -                    "type": "object"
      -                  },
      -                  "method": {
      -                    "description": "HTTP method, uppercased by the handler. Default GET.",
      -                    "type": "string"
      -                  },
      -                  "url": {
      -                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "url"
      -                ],
      -                "type": "object"
      -              },
      -              "maxItems": 10,
      -              "type": "array"
      -            },
      -            "url": {
      -              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "logs_tail"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "functionName"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "fn"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "logGroup"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "filter": {
      -              "description": "CloudWatch filter pattern.",
      -              "type": "string"
      -            },
      -            "filterPattern": {
      -              "description": "Alias of filter.",
      -              "type": "string"
      -            },
      -            "fn": {
      -              "description": "Alias of functionName.",
      -              "type": "string"
      -            },
      -            "functionName": {
      -              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      -              "type": "string"
      -            },
      -            "limit": {
      -              "description": "Max events. Default 100, clamped to 1-1000.",
      -              "type": "integer"
      -            },
      -            "logGroup": {
      -              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      -              "type": "string"
      -            },
      -            "minutes": {
      -              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      -              "type": "integer"
      -            },
      -            "region": {
      -              "description": "Region of the log group. Default us-east-1.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "qr_code"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "errorCorrection": {
      -              "description": "How much damage the code survives; higher is denser. Default M.",
      -              "enum": [
      -                "L",
      -                "M",
      -                "Q",
      -                "H"
      -              ],
      -              "type": "string"
      -            },
      -            "format": {
      -              "description": "What to return. Default svg.",
      -              "enum": [
      -                "svg",
      -                "png",
      -                "both"
      -              ],
      -              "type": "string"
      -            },
      -            "label": {
      -              "description": "The SVG's accessible name. Default 'QR code'.",
      -              "type": "string"
      -            },
      -            "sizePx": {
      -              "description": "Width and height in pixels. Default 512.",
      -              "maximum": 2048,
      -              "minimum": 64,
      -              "type": "integer"
      -            },
      -            "value": {
      -              "description": "The link or text the code holds.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "value"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  }
      -]New value: +[
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "rds_query"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "continueAfterTimeout": {
      +              "description": "Data API flag, forwarded verbatim.",
      +              "type": "boolean"
      +            },
      +            "db": {
      +              "description": "The plane database to query, by NAME (never an ARN) - lowercase. Some are aliases of another name (database→appdb, connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      +              "enum": [
      +                "main",
      +                "aegis",
      +                "analytics",
      +                "pay",
      +                "companies",
      +                "events",
      +                "dating",
      +                "intel",
      +                "studio",
      +                "ledger",
      +                "deals",
      +                "ads",
      +                "chat",
      +                "market",
      +                "referrals",
      +                "notes",
      +                "learn",
      +                "storage",
      +                "give",
      +                "launch",
      +                "communities",
      +                "schedule",
      +                "gift",
      +                "seats",
      +                "boardroom",
      +                "email",
      +                "book",
      +                "sales",
      +                "newsletter",
      +                "legal",
      +                "rivals",
      +                "message",
      +                "apps",
      +                "architect",
      +                "verify",
      +                "import",
      +                "sign",
      +                "games",
      +                "myconnect",
      +                "notifications",
      +                "realtor",
      +                "credits",
      +                "licensing",
      +                "crowdfund",
      +                "ship",
      +                "catalog",
      +                "attention",
      +                "network",
      +                "dictation",
      +                "pass",
      +                "ab",
      +                "pages",
      +                "mydomains",
      +                "enterprise",
      +                "life",
      +                "wallpaper",
      +                "calls",
      +                "share",
      +                "google",
      +                "deletion",
      +                "outreach",
      +                "video",
      +                "translate",
      +                "contacts",
      +                "appdb",
      +                "orders",
      +                "hosting",
      +                "database",
      +                "cranium",
      +                "connections",
      +                "identity",
      +                "accounts",
      +                "argus",
      +                "plutus",
      +                "payments",
      +                "intelligence",
      +                "heimdall",
      +                "hephaestus",
      +                "brand-deals",
      +                "hermes",
      +                "history",
      +                "locker"
      +              ],
      +              "type": "string"
      +            },
      +            "formatRecordsAs": {
      +              "description": "RDS Data API records format; defaults to JSON.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      +              "type": "string"
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied server-side before the rows are returned.",
      +              "type": "string"
      +            },
      +            "parameters": {
      +              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      +              "type": "array"
      +            },
      +            "resultSetOptions": {
      +              "description": "Data API resultSetOptions, forwarded verbatim.",
      +              "type": "object"
      +            },
      +            "schema": {
      +              "description": "Data API schema qualifier, forwarded verbatim.",
      +              "type": "string"
      +            },
      +            "sql": {
      +              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      +              "type": "string"
      +            },
      +            "transaction": {
      +              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      +              "enum": [
      +                "begin",
      +                "commit",
      +                "rollback"
      +              ],
      +              "type": "string"
      +            },
      +            "transactionId": {
      +              "description": "Run inside an existing Data API transaction.",
      +              "type": "string"
      +            },
      +            "write": {
      +              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      +              "type": "boolean"
      +            }
      +          },
      +          "required": [
      +            "db"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "aws_sweep"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "tool_name"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "endpoint_id"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "endpoint_id": {
      +              "description": "A catalog endpoint id, used instead of tool_name.",
      +              "type": "string"
      +            },
      +            "includeEnv": {
      +              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      +              "type": "boolean"
      +            },
      +            "instances": {
      +              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": [
      +                "array",
      +                "string"
      +              ]
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied to each instance's result.",
      +              "type": "string"
      +            },
      +            "paginateAll": {
      +              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      +              "type": "boolean"
      +            },
      +            "params": {
      +              "description": "The swept op's OWN params, passed through to each per-instance call.",
      +              "type": "object"
      +            },
      +            "tool_name": {
      +              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "probe"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "targets"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "url"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "bodyContains": {
      +              "description": "Single-target shorthand: substring the body must contain.",
      +              "type": "string"
      +            },
      +            "expectStatus": {
      +              "description": "Single-target shorthand: the exact status to expect.",
      +              "type": "integer"
      +            },
      +            "headers": {
      +              "description": "Single-target shorthand: request headers.",
      +              "type": "object"
      +            },
      +            "method": {
      +              "description": "Single-target shorthand: HTTP method. Default GET.",
      +              "type": "string"
      +            },
      +            "targets": {
      +              "description": "Up to 10 targets per call.",
      +              "items": {
      +                "properties": {
      +                  "bodyContains": {
      +                    "description": "Substring the response body must contain to pass.",
      +                    "type": "string"
      +                  },
      +                  "expectStatus": {
      +                    "description": "Pass only on this exact status; default any 2xx.",
      +                    "type": "integer"
      +                  },
      +                  "headers": {
      +                    "description": "Request headers. Sent, never echoed back in the reply.",
      +                    "type": "object"
      +                  },
      +                  "method": {
      +                    "description": "HTTP method, uppercased by the handler. Default GET.",
      +                    "type": "string"
      +                  },
      +                  "url": {
      +                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "url"
      +                ],
      +                "type": "object"
      +              },
      +              "maxItems": 10,
      +              "type": "array"
      +            },
      +            "url": {
      +              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "logs_tail"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "functionName"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "fn"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "logGroup"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "filter": {
      +              "description": "CloudWatch filter pattern.",
      +              "type": "string"
      +            },
      +            "filterPattern": {
      +              "description": "Alias of filter.",
      +              "type": "string"
      +            },
      +            "fn": {
      +              "description": "Alias of functionName.",
      +              "type": "string"
      +            },
      +            "functionName": {
      +              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      +              "type": "string"
      +            },
      +            "limit": {
      +              "description": "Max events. Default 100, clamped to 1-1000.",
      +              "type": "integer"
      +            },
      +            "logGroup": {
      +              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      +              "type": "string"
      +            },
      +            "minutes": {
      +              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      +              "type": "integer"
      +            },
      +            "region": {
      +              "description": "Region of the log group. Default us-east-1.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "qr_code"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "errorCorrection": {
      +              "description": "How much damage the code survives; higher is denser. Default M.",
      +              "enum": [
      +                "L",
      +                "M",
      +                "Q",
      +                "H"
      +              ],
      +              "type": "string"
      +            },
      +            "format": {
      +              "description": "What to return. Default svg.",
      +              "enum": [
      +                "svg",
      +                "png",
      +                "both"
      +              ],
      +              "type": "string"
      +            },
      +            "label": {
      +              "description": "The SVG's accessible name. Default 'QR code'.",
      +              "type": "string"
      +            },
      +            "sizePx": {
      +              "description": "Width and height in pixels. Default 512.",
      +              "maximum": 2048,
      +              "minimum": 64,
      +              "type": "integer"
      +            },
      +            "value": {
      +              "description": "The link or text the code holds.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "value"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  }
      +]
  2. Changed1 schema field changed
    • changedInput schema / allOf
      Previous value: -[
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "rds_query"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "continueAfterTimeout": {
      -              "description": "Data API flag, forwarded verbatim.",
      -              "type": "boolean"
      -            },
      -            "db": {
      -              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      -              "enum": [
      -                "main",
      -                "aegis",
      -                "analytics",
      -                "pay",
      -                "companies",
      -                "events",
      -                "dating",
      -                "intel",
      -                "studio",
      -                "ledger",
      -                "deals",
      -                "ads",
      -                "chat",
      -                "market",
      -                "referrals",
      -                "notes",
      -                "learn",
      -                "storage",
      -                "give",
      -                "launch",
      -                "communities",
      -                "schedule",
      -                "gift",
      -                "seats",
      -                "boardroom",
      -                "email",
      -                "book",
      -                "sales",
      -                "newsletter",
      -                "legal",
      -                "rivals",
      -                "message",
      -                "apps",
      -                "architect",
      -                "verify",
      -                "import",
      -                "sign",
      -                "games",
      -                "myconnect",
      -                "notifications",
      -                "realtor",
      -                "credits",
      -                "licensing",
      -                "crowdfund",
      -                "ship",
      -                "catalog",
      -                "attention",
      -                "network",
      -                "dictation",
      -                "pass",
      -                "ab",
      -                "pages",
      -                "mydomains",
      -                "enterprise",
      -                "life",
      -                "wallpaper",
      -                "calls",
      -                "share",
      -                "google",
      -                "deletion",
      -                "outreach",
      -                "video",
      -                "translate",
      -                "contacts",
      -                "database",
      -                "cranium",
      -                "connections",
      -                "identity",
      -                "accounts",
      -                "argus",
      -                "plutus",
      -                "payments",
      -                "intelligence",
      -                "heimdall",
      -                "hephaestus",
      -                "brand-deals",
      -                "hermes",
      -                "history",
      -                "locker"
      -              ],
      -              "type": "string"
      -            },
      -            "formatRecordsAs": {
      -              "description": "RDS Data API records format; defaults to JSON.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      -              "type": "string"
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied server-side before the rows are returned.",
      -              "type": "string"
      -            },
      -            "parameters": {
      -              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      -              "type": "array"
      -            },
      -            "resultSetOptions": {
      -              "description": "Data API resultSetOptions, forwarded verbatim.",
      -              "type": "object"
      -            },
      -            "schema": {
      -              "description": "Data API schema qualifier, forwarded verbatim.",
      -              "type": "string"
      -            },
      -            "sql": {
      -              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      -              "type": "string"
      -            },
      -            "transaction": {
      -              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      -              "enum": [
      -                "begin",
      -                "commit",
      -                "rollback"
      -              ],
      -              "type": "string"
      -            },
      -            "transactionId": {
      -              "description": "Run inside an existing Data API transaction.",
      -              "type": "string"
      -            },
      -            "write": {
      -              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      -              "type": "boolean"
      -            }
      -          },
      -          "required": [
      -            "db"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "aws_sweep"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "tool_name"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "endpoint_id"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "endpoint_id": {
      -              "description": "A catalog endpoint id, used instead of tool_name.",
      -              "type": "string"
      -            },
      -            "includeEnv": {
      -              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      -              "type": "boolean"
      -            },
      -            "instances": {
      -              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": [
      -                "array",
      -                "string"
      -              ]
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied to each instance's result.",
      -              "type": "string"
      -            },
      -            "paginateAll": {
      -              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      -              "type": "boolean"
      -            },
      -            "params": {
      -              "description": "The swept op's OWN params, passed through to each per-instance call.",
      -              "type": "object"
      -            },
      -            "tool_name": {
      -              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "probe"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "targets"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "url"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "bodyContains": {
      -              "description": "Single-target shorthand: substring the body must contain.",
      -              "type": "string"
      -            },
      -            "expectStatus": {
      -              "description": "Single-target shorthand: the exact status to expect.",
      -              "type": "integer"
      -            },
      -            "headers": {
      -              "description": "Single-target shorthand: request headers.",
      -              "type": "object"
      -            },
      -            "method": {
      -              "description": "Single-target shorthand: HTTP method. Default GET.",
      -              "type": "string"
      -            },
      -            "targets": {
      -              "description": "Up to 10 targets per call.",
      -              "items": {
      -                "properties": {
      -                  "bodyContains": {
      -                    "description": "Substring the response body must contain to pass.",
      -                    "type": "string"
      -                  },
      -                  "expectStatus": {
      -                    "description": "Pass only on this exact status; default any 2xx.",
      -                    "type": "integer"
      -                  },
      -                  "headers": {
      -                    "description": "Request headers. Sent, never echoed back in the reply.",
      -                    "type": "object"
      -                  },
      -                  "method": {
      -                    "description": "HTTP method, uppercased by the handler. Default GET.",
      -                    "type": "string"
      -                  },
      -                  "url": {
      -                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "url"
      -                ],
      -                "type": "object"
      -              },
      -              "maxItems": 10,
      -              "type": "array"
      -            },
      -            "url": {
      -              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "logs_tail"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "functionName"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "fn"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "logGroup"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "filter": {
      -              "description": "CloudWatch filter pattern.",
      -              "type": "string"
      -            },
      -            "filterPattern": {
      -              "description": "Alias of filter.",
      -              "type": "string"
      -            },
      -            "fn": {
      -              "description": "Alias of functionName.",
      -              "type": "string"
      -            },
      -            "functionName": {
      -              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      -              "type": "string"
      -            },
      -            "limit": {
      -              "description": "Max events. Default 100, clamped to 1-1000.",
      -              "type": "integer"
      -            },
      -            "logGroup": {
      -              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      -              "type": "string"
      -            },
      -            "minutes": {
      -              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      -              "type": "integer"
      -            },
      -            "region": {
      -              "description": "Region of the log group. Default us-east-1.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "qr_code"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "errorCorrection": {
      -              "description": "How much damage the code survives; higher is denser. Default M.",
      -              "enum": [
      -                "L",
      -                "M",
      -                "Q",
      -                "H"
      -              ],
      -              "type": "string"
      -            },
      -            "format": {
      -              "description": "What to return. Default svg.",
      -              "enum": [
      -                "svg",
      -                "png",
      -                "both"
      -              ],
      -              "type": "string"
      -            },
      -            "label": {
      -              "description": "The SVG's accessible name. Default 'QR code'.",
      -              "type": "string"
      -            },
      -            "sizePx": {
      -              "description": "Width and height in pixels. Default 512.",
      -              "maximum": 2048,
      -              "minimum": 64,
      -              "type": "integer"
      -            },
      -            "value": {
      -              "description": "The link or text the code holds.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "value"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  }
      -]New value: +[
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "rds_query"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "continueAfterTimeout": {
      +              "description": "Data API flag, forwarded verbatim.",
      +              "type": "boolean"
      +            },
      +            "db": {
      +              "description": "The plane database to query, by NAME (never an ARN) - lowercase. Some are aliases of another name (database→appdb, connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      +              "enum": [
      +                "main",
      +                "aegis",
      +                "analytics",
      +                "pay",
      +                "companies",
      +                "events",
      +                "dating",
      +                "intel",
      +                "studio",
      +                "ledger",
      +                "deals",
      +                "ads",
      +                "chat",
      +                "market",
      +                "referrals",
      +                "notes",
      +                "learn",
      +                "storage",
      +                "give",
      +                "launch",
      +                "communities",
      +                "schedule",
      +                "gift",
      +                "seats",
      +                "boardroom",
      +                "email",
      +                "book",
      +                "sales",
      +                "newsletter",
      +                "legal",
      +                "rivals",
      +                "message",
      +                "apps",
      +                "architect",
      +                "verify",
      +                "import",
      +                "sign",
      +                "games",
      +                "myconnect",
      +                "notifications",
      +                "realtor",
      +                "credits",
      +                "licensing",
      +                "crowdfund",
      +                "ship",
      +                "catalog",
      +                "attention",
      +                "network",
      +                "dictation",
      +                "pass",
      +                "ab",
      +                "pages",
      +                "mydomains",
      +                "enterprise",
      +                "life",
      +                "wallpaper",
      +                "calls",
      +                "share",
      +                "google",
      +                "deletion",
      +                "outreach",
      +                "video",
      +                "translate",
      +                "contacts",
      +                "appdb",
      +                "orders",
      +                "database",
      +                "cranium",
      +                "connections",
      +                "identity",
      +                "accounts",
      +                "argus",
      +                "plutus",
      +                "payments",
      +                "intelligence",
      +                "heimdall",
      +                "hephaestus",
      +                "brand-deals",
      +                "hermes",
      +                "history",
      +                "locker"
      +              ],
      +              "type": "string"
      +            },
      +            "formatRecordsAs": {
      +              "description": "RDS Data API records format; defaults to JSON.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      +              "type": "string"
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied server-side before the rows are returned.",
      +              "type": "string"
      +            },
      +            "parameters": {
      +              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      +              "type": "array"
      +            },
      +            "resultSetOptions": {
      +              "description": "Data API resultSetOptions, forwarded verbatim.",
      +              "type": "object"
      +            },
      +            "schema": {
      +              "description": "Data API schema qualifier, forwarded verbatim.",
      +              "type": "string"
      +            },
      +            "sql": {
      +              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      +              "type": "string"
      +            },
      +            "transaction": {
      +              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      +              "enum": [
      +                "begin",
      +                "commit",
      +                "rollback"
      +              ],
      +              "type": "string"
      +            },
      +            "transactionId": {
      +              "description": "Run inside an existing Data API transaction.",
      +              "type": "string"
      +            },
      +            "write": {
      +              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      +              "type": "boolean"
      +            }
      +          },
      +          "required": [
      +            "db"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "aws_sweep"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "tool_name"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "endpoint_id"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "endpoint_id": {
      +              "description": "A catalog endpoint id, used instead of tool_name.",
      +              "type": "string"
      +            },
      +            "includeEnv": {
      +              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      +              "type": "boolean"
      +            },
      +            "instances": {
      +              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": [
      +                "array",
      +                "string"
      +              ]
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied to each instance's result.",
      +              "type": "string"
      +            },
      +            "paginateAll": {
      +              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      +              "type": "boolean"
      +            },
      +            "params": {
      +              "description": "The swept op's OWN params, passed through to each per-instance call.",
      +              "type": "object"
      +            },
      +            "tool_name": {
      +              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "probe"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "targets"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "url"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "bodyContains": {
      +              "description": "Single-target shorthand: substring the body must contain.",
      +              "type": "string"
      +            },
      +            "expectStatus": {
      +              "description": "Single-target shorthand: the exact status to expect.",
      +              "type": "integer"
      +            },
      +            "headers": {
      +              "description": "Single-target shorthand: request headers.",
      +              "type": "object"
      +            },
      +            "method": {
      +              "description": "Single-target shorthand: HTTP method. Default GET.",
      +              "type": "string"
      +            },
      +            "targets": {
      +              "description": "Up to 10 targets per call.",
      +              "items": {
      +                "properties": {
      +                  "bodyContains": {
      +                    "description": "Substring the response body must contain to pass.",
      +                    "type": "string"
      +                  },
      +                  "expectStatus": {
      +                    "description": "Pass only on this exact status; default any 2xx.",
      +                    "type": "integer"
      +                  },
      +                  "headers": {
      +                    "description": "Request headers. Sent, never echoed back in the reply.",
      +                    "type": "object"
      +                  },
      +                  "method": {
      +                    "description": "HTTP method, uppercased by the handler. Default GET.",
      +                    "type": "string"
      +                  },
      +                  "url": {
      +                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "url"
      +                ],
      +                "type": "object"
      +              },
      +              "maxItems": 10,
      +              "type": "array"
      +            },
      +            "url": {
      +              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "logs_tail"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "functionName"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "fn"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "logGroup"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "filter": {
      +              "description": "CloudWatch filter pattern.",
      +              "type": "string"
      +            },
      +            "filterPattern": {
      +              "description": "Alias of filter.",
      +              "type": "string"
      +            },
      +            "fn": {
      +              "description": "Alias of functionName.",
      +              "type": "string"
      +            },
      +            "functionName": {
      +              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      +              "type": "string"
      +            },
      +            "limit": {
      +              "description": "Max events. Default 100, clamped to 1-1000.",
      +              "type": "integer"
      +            },
      +            "logGroup": {
      +              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      +              "type": "string"
      +            },
      +            "minutes": {
      +              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      +              "type": "integer"
      +            },
      +            "region": {
      +              "description": "Region of the log group. Default us-east-1.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "qr_code"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "errorCorrection": {
      +              "description": "How much damage the code survives; higher is denser. Default M.",
      +              "enum": [
      +                "L",
      +                "M",
      +                "Q",
      +                "H"
      +              ],
      +              "type": "string"
      +            },
      +            "format": {
      +              "description": "What to return. Default svg.",
      +              "enum": [
      +                "svg",
      +                "png",
      +                "both"
      +              ],
      +              "type": "string"
      +            },
      +            "label": {
      +              "description": "The SVG's accessible name. Default 'QR code'.",
      +              "type": "string"
      +            },
      +            "sizePx": {
      +              "description": "Width and height in pixels. Default 512.",
      +              "maximum": 2048,
      +              "minimum": 64,
      +              "type": "integer"
      +            },
      +            "value": {
      +              "description": "The link or text the code holds.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "value"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  }
      +]
  3. Changed1 schema field changed
    • changedInput schema / allOf
      Previous value: -[
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "rds_query"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "continueAfterTimeout": {
      -              "description": "Data API flag, forwarded verbatim.",
      -              "type": "boolean"
      -            },
      -            "db": {
      -              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      -              "enum": [
      -                "main",
      -                "aegis",
      -                "analytics",
      -                "pay",
      -                "companies",
      -                "events",
      -                "dating",
      -                "intel",
      -                "studio",
      -                "ledger",
      -                "deals",
      -                "ads",
      -                "chat",
      -                "market",
      -                "referrals",
      -                "notes",
      -                "learn",
      -                "storage",
      -                "give",
      -                "launch",
      -                "communities",
      -                "schedule",
      -                "gift",
      -                "seats",
      -                "boardroom",
      -                "email",
      -                "book",
      -                "sales",
      -                "newsletter",
      -                "legal",
      -                "rivals",
      -                "message",
      -                "apps",
      -                "verify",
      -                "import",
      -                "sign",
      -                "games",
      -                "myconnect",
      -                "notifications",
      -                "realtor",
      -                "credits",
      -                "licensing",
      -                "crowdfund",
      -                "ship",
      -                "catalog",
      -                "attention",
      -                "network",
      -                "dictation",
      -                "pass",
      -                "ab",
      -                "pages",
      -                "mydomains",
      -                "enterprise",
      -                "life",
      -                "wallpaper",
      -                "calls",
      -                "share",
      -                "google",
      -                "deletion",
      -                "outreach",
      -                "video",
      -                "translate",
      -                "contacts",
      -                "database",
      -                "cranium",
      -                "connections",
      -                "identity",
      -                "accounts",
      -                "argus",
      -                "plutus",
      -                "payments",
      -                "intelligence",
      -                "heimdall",
      -                "hephaestus",
      -                "brand-deals",
      -                "hermes",
      -                "history",
      -                "locker"
      -              ],
      -              "type": "string"
      -            },
      -            "formatRecordsAs": {
      -              "description": "RDS Data API records format; defaults to JSON.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      -              "type": "string"
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied server-side before the rows are returned.",
      -              "type": "string"
      -            },
      -            "parameters": {
      -              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      -              "type": "array"
      -            },
      -            "resultSetOptions": {
      -              "description": "Data API resultSetOptions, forwarded verbatim.",
      -              "type": "object"
      -            },
      -            "schema": {
      -              "description": "Data API schema qualifier, forwarded verbatim.",
      -              "type": "string"
      -            },
      -            "sql": {
      -              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      -              "type": "string"
      -            },
      -            "transaction": {
      -              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      -              "enum": [
      -                "begin",
      -                "commit",
      -                "rollback"
      -              ],
      -              "type": "string"
      -            },
      -            "transactionId": {
      -              "description": "Run inside an existing Data API transaction.",
      -              "type": "string"
      -            },
      -            "write": {
      -              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      -              "type": "boolean"
      -            }
      -          },
      -          "required": [
      -            "db"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "aws_sweep"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "tool_name"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "endpoint_id"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "endpoint_id": {
      -              "description": "A catalog endpoint id, used instead of tool_name.",
      -              "type": "string"
      -            },
      -            "includeEnv": {
      -              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      -              "type": "boolean"
      -            },
      -            "instances": {
      -              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": [
      -                "array",
      -                "string"
      -              ]
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied to each instance's result.",
      -              "type": "string"
      -            },
      -            "paginateAll": {
      -              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      -              "type": "boolean"
      -            },
      -            "params": {
      -              "description": "The swept op's OWN params, passed through to each per-instance call.",
      -              "type": "object"
      -            },
      -            "tool_name": {
      -              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "probe"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "targets"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "url"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "bodyContains": {
      -              "description": "Single-target shorthand: substring the body must contain.",
      -              "type": "string"
      -            },
      -            "expectStatus": {
      -              "description": "Single-target shorthand: the exact status to expect.",
      -              "type": "integer"
      -            },
      -            "headers": {
      -              "description": "Single-target shorthand: request headers.",
      -              "type": "object"
      -            },
      -            "method": {
      -              "description": "Single-target shorthand: HTTP method. Default GET.",
      -              "type": "string"
      -            },
      -            "targets": {
      -              "description": "Up to 10 targets per call.",
      -              "items": {
      -                "properties": {
      -                  "bodyContains": {
      -                    "description": "Substring the response body must contain to pass.",
      -                    "type": "string"
      -                  },
      -                  "expectStatus": {
      -                    "description": "Pass only on this exact status; default any 2xx.",
      -                    "type": "integer"
      -                  },
      -                  "headers": {
      -                    "description": "Request headers. Sent, never echoed back in the reply.",
      -                    "type": "object"
      -                  },
      -                  "method": {
      -                    "description": "HTTP method, uppercased by the handler. Default GET.",
      -                    "type": "string"
      -                  },
      -                  "url": {
      -                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "url"
      -                ],
      -                "type": "object"
      -              },
      -              "maxItems": 10,
      -              "type": "array"
      -            },
      -            "url": {
      -              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "logs_tail"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "functionName"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "fn"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "logGroup"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "filter": {
      -              "description": "CloudWatch filter pattern.",
      -              "type": "string"
      -            },
      -            "filterPattern": {
      -              "description": "Alias of filter.",
      -              "type": "string"
      -            },
      -            "fn": {
      -              "description": "Alias of functionName.",
      -              "type": "string"
      -            },
      -            "functionName": {
      -              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      -              "type": "string"
      -            },
      -            "limit": {
      -              "description": "Max events. Default 100, clamped to 1-1000.",
      -              "type": "integer"
      -            },
      -            "logGroup": {
      -              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      -              "type": "string"
      -            },
      -            "minutes": {
      -              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      -              "type": "integer"
      -            },
      -            "region": {
      -              "description": "Region of the log group. Default us-east-1.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "qr_code"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "errorCorrection": {
      -              "description": "How much damage the code survives; higher is denser. Default M.",
      -              "enum": [
      -                "L",
      -                "M",
      -                "Q",
      -                "H"
      -              ],
      -              "type": "string"
      -            },
      -            "format": {
      -              "description": "What to return. Default svg.",
      -              "enum": [
      -                "svg",
      -                "png",
      -                "both"
      -              ],
      -              "type": "string"
      -            },
      -            "label": {
      -              "description": "The SVG's accessible name. Default 'QR code'.",
      -              "type": "string"
      -            },
      -            "sizePx": {
      -              "description": "Width and height in pixels. Default 512.",
      -              "maximum": 2048,
      -              "minimum": 64,
      -              "type": "integer"
      -            },
      -            "value": {
      -              "description": "The link or text the code holds.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "value"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  }
      -]New value: +[
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "rds_query"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "continueAfterTimeout": {
      +              "description": "Data API flag, forwarded verbatim.",
      +              "type": "boolean"
      +            },
      +            "db": {
      +              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      +              "enum": [
      +                "main",
      +                "aegis",
      +                "analytics",
      +                "pay",
      +                "companies",
      +                "events",
      +                "dating",
      +                "intel",
      +                "studio",
      +                "ledger",
      +                "deals",
      +                "ads",
      +                "chat",
      +                "market",
      +                "referrals",
      +                "notes",
      +                "learn",
      +                "storage",
      +                "give",
      +                "launch",
      +                "communities",
      +                "schedule",
      +                "gift",
      +                "seats",
      +                "boardroom",
      +                "email",
      +                "book",
      +                "sales",
      +                "newsletter",
      +                "legal",
      +                "rivals",
      +                "message",
      +                "apps",
      +                "architect",
      +                "verify",
      +                "import",
      +                "sign",
      +                "games",
      +                "myconnect",
      +                "notifications",
      +                "realtor",
      +                "credits",
      +                "licensing",
      +                "crowdfund",
      +                "ship",
      +                "catalog",
      +                "attention",
      +                "network",
      +                "dictation",
      +                "pass",
      +                "ab",
      +                "pages",
      +                "mydomains",
      +                "enterprise",
      +                "life",
      +                "wallpaper",
      +                "calls",
      +                "share",
      +                "google",
      +                "deletion",
      +                "outreach",
      +                "video",
      +                "translate",
      +                "contacts",
      +                "database",
      +                "cranium",
      +                "connections",
      +                "identity",
      +                "accounts",
      +                "argus",
      +                "plutus",
      +                "payments",
      +                "intelligence",
      +                "heimdall",
      +                "hephaestus",
      +                "brand-deals",
      +                "hermes",
      +                "history",
      +                "locker"
      +              ],
      +              "type": "string"
      +            },
      +            "formatRecordsAs": {
      +              "description": "RDS Data API records format; defaults to JSON.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      +              "type": "string"
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied server-side before the rows are returned.",
      +              "type": "string"
      +            },
      +            "parameters": {
      +              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      +              "type": "array"
      +            },
      +            "resultSetOptions": {
      +              "description": "Data API resultSetOptions, forwarded verbatim.",
      +              "type": "object"
      +            },
      +            "schema": {
      +              "description": "Data API schema qualifier, forwarded verbatim.",
      +              "type": "string"
      +            },
      +            "sql": {
      +              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      +              "type": "string"
      +            },
      +            "transaction": {
      +              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      +              "enum": [
      +                "begin",
      +                "commit",
      +                "rollback"
      +              ],
      +              "type": "string"
      +            },
      +            "transactionId": {
      +              "description": "Run inside an existing Data API transaction.",
      +              "type": "string"
      +            },
      +            "write": {
      +              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      +              "type": "boolean"
      +            }
      +          },
      +          "required": [
      +            "db"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "aws_sweep"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "tool_name"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "endpoint_id"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "endpoint_id": {
      +              "description": "A catalog endpoint id, used instead of tool_name.",
      +              "type": "string"
      +            },
      +            "includeEnv": {
      +              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      +              "type": "boolean"
      +            },
      +            "instances": {
      +              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": [
      +                "array",
      +                "string"
      +              ]
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied to each instance's result.",
      +              "type": "string"
      +            },
      +            "paginateAll": {
      +              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      +              "type": "boolean"
      +            },
      +            "params": {
      +              "description": "The swept op's OWN params, passed through to each per-instance call.",
      +              "type": "object"
      +            },
      +            "tool_name": {
      +              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "probe"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "targets"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "url"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "bodyContains": {
      +              "description": "Single-target shorthand: substring the body must contain.",
      +              "type": "string"
      +            },
      +            "expectStatus": {
      +              "description": "Single-target shorthand: the exact status to expect.",
      +              "type": "integer"
      +            },
      +            "headers": {
      +              "description": "Single-target shorthand: request headers.",
      +              "type": "object"
      +            },
      +            "method": {
      +              "description": "Single-target shorthand: HTTP method. Default GET.",
      +              "type": "string"
      +            },
      +            "targets": {
      +              "description": "Up to 10 targets per call.",
      +              "items": {
      +                "properties": {
      +                  "bodyContains": {
      +                    "description": "Substring the response body must contain to pass.",
      +                    "type": "string"
      +                  },
      +                  "expectStatus": {
      +                    "description": "Pass only on this exact status; default any 2xx.",
      +                    "type": "integer"
      +                  },
      +                  "headers": {
      +                    "description": "Request headers. Sent, never echoed back in the reply.",
      +                    "type": "object"
      +                  },
      +                  "method": {
      +                    "description": "HTTP method, uppercased by the handler. Default GET.",
      +                    "type": "string"
      +                  },
      +                  "url": {
      +                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "url"
      +                ],
      +                "type": "object"
      +              },
      +              "maxItems": 10,
      +              "type": "array"
      +            },
      +            "url": {
      +              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "logs_tail"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "functionName"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "fn"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "logGroup"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "filter": {
      +              "description": "CloudWatch filter pattern.",
      +              "type": "string"
      +            },
      +            "filterPattern": {
      +              "description": "Alias of filter.",
      +              "type": "string"
      +            },
      +            "fn": {
      +              "description": "Alias of functionName.",
      +              "type": "string"
      +            },
      +            "functionName": {
      +              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      +              "type": "string"
      +            },
      +            "limit": {
      +              "description": "Max events. Default 100, clamped to 1-1000.",
      +              "type": "integer"
      +            },
      +            "logGroup": {
      +              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      +              "type": "string"
      +            },
      +            "minutes": {
      +              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      +              "type": "integer"
      +            },
      +            "region": {
      +              "description": "Region of the log group. Default us-east-1.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "qr_code"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "errorCorrection": {
      +              "description": "How much damage the code survives; higher is denser. Default M.",
      +              "enum": [
      +                "L",
      +                "M",
      +                "Q",
      +                "H"
      +              ],
      +              "type": "string"
      +            },
      +            "format": {
      +              "description": "What to return. Default svg.",
      +              "enum": [
      +                "svg",
      +                "png",
      +                "both"
      +              ],
      +              "type": "string"
      +            },
      +            "label": {
      +              "description": "The SVG's accessible name. Default 'QR code'.",
      +              "type": "string"
      +            },
      +            "sizePx": {
      +              "description": "Width and height in pixels. Default 512.",
      +              "maximum": 2048,
      +              "minimum": 64,
      +              "type": "integer"
      +            },
      +            "value": {
      +              "description": "The link or text the code holds.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "value"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  }
      +]
  4. Changed1 schema field changed
    • changedInput schema / allOf
      Previous value: -[
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "rds_query"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "continueAfterTimeout": {
      -              "description": "Data API flag, forwarded verbatim.",
      -              "type": "boolean"
      -            },
      -            "db": {
      -              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      -              "enum": [
      -                "main",
      -                "aegis",
      -                "analytics",
      -                "pay",
      -                "companies",
      -                "events",
      -                "dating",
      -                "intel",
      -                "studio",
      -                "ledger",
      -                "deals",
      -                "ads",
      -                "chat",
      -                "market",
      -                "referrals",
      -                "notes",
      -                "learn",
      -                "storage",
      -                "give",
      -                "launch",
      -                "communities",
      -                "schedule",
      -                "gift",
      -                "seats",
      -                "boardroom",
      -                "email",
      -                "book",
      -                "sales",
      -                "newsletter",
      -                "legal",
      -                "rivals",
      -                "message",
      -                "apps",
      -                "verify",
      -                "import",
      -                "sign",
      -                "games",
      -                "myconnect",
      -                "notifications",
      -                "realtor",
      -                "credits",
      -                "licensing",
      -                "crowdfund",
      -                "ship",
      -                "catalog",
      -                "attention",
      -                "network",
      -                "dictation",
      -                "pass",
      -                "ab",
      -                "pages",
      -                "mydomains",
      -                "enterprise",
      -                "life",
      -                "wallpaper",
      -                "calls",
      -                "share",
      -                "google",
      -                "deletion",
      -                "outreach",
      -                "video",
      -                "translate",
      -                "contacts",
      -                "appdb",
      -                "cranium",
      -                "connections",
      -                "identity",
      -                "accounts",
      -                "argus",
      -                "plutus",
      -                "payments",
      -                "intelligence",
      -                "heimdall",
      -                "hephaestus",
      -                "brand-deals",
      -                "hermes",
      -                "history",
      -                "locker"
      -              ],
      -              "type": "string"
      -            },
      -            "formatRecordsAs": {
      -              "description": "RDS Data API records format; defaults to JSON.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      -              "type": "string"
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied server-side before the rows are returned.",
      -              "type": "string"
      -            },
      -            "parameters": {
      -              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      -              "type": "array"
      -            },
      -            "resultSetOptions": {
      -              "description": "Data API resultSetOptions, forwarded verbatim.",
      -              "type": "object"
      -            },
      -            "schema": {
      -              "description": "Data API schema qualifier, forwarded verbatim.",
      -              "type": "string"
      -            },
      -            "sql": {
      -              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      -              "type": "string"
      -            },
      -            "transaction": {
      -              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      -              "enum": [
      -                "begin",
      -                "commit",
      -                "rollback"
      -              ],
      -              "type": "string"
      -            },
      -            "transactionId": {
      -              "description": "Run inside an existing Data API transaction.",
      -              "type": "string"
      -            },
      -            "write": {
      -              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      -              "type": "boolean"
      -            }
      -          },
      -          "required": [
      -            "db"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "aws_sweep"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "tool_name"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "endpoint_id"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "endpoint_id": {
      -              "description": "A catalog endpoint id, used instead of tool_name.",
      -              "type": "string"
      -            },
      -            "includeEnv": {
      -              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      -              "type": "boolean"
      -            },
      -            "instances": {
      -              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": [
      -                "array",
      -                "string"
      -              ]
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied to each instance's result.",
      -              "type": "string"
      -            },
      -            "paginateAll": {
      -              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      -              "type": "boolean"
      -            },
      -            "params": {
      -              "description": "The swept op's OWN params, passed through to each per-instance call.",
      -              "type": "object"
      -            },
      -            "tool_name": {
      -              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "probe"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "targets"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "url"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "bodyContains": {
      -              "description": "Single-target shorthand: substring the body must contain.",
      -              "type": "string"
      -            },
      -            "expectStatus": {
      -              "description": "Single-target shorthand: the exact status to expect.",
      -              "type": "integer"
      -            },
      -            "headers": {
      -              "description": "Single-target shorthand: request headers.",
      -              "type": "object"
      -            },
      -            "method": {
      -              "description": "Single-target shorthand: HTTP method. Default GET.",
      -              "type": "string"
      -            },
      -            "targets": {
      -              "description": "Up to 10 targets per call.",
      -              "items": {
      -                "properties": {
      -                  "bodyContains": {
      -                    "description": "Substring the response body must contain to pass.",
      -                    "type": "string"
      -                  },
      -                  "expectStatus": {
      -                    "description": "Pass only on this exact status; default any 2xx.",
      -                    "type": "integer"
      -                  },
      -                  "headers": {
      -                    "description": "Request headers. Sent, never echoed back in the reply.",
      -                    "type": "object"
      -                  },
      -                  "method": {
      -                    "description": "HTTP method, uppercased by the handler. Default GET.",
      -                    "type": "string"
      -                  },
      -                  "url": {
      -                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "url"
      -                ],
      -                "type": "object"
      -              },
      -              "maxItems": 10,
      -              "type": "array"
      -            },
      -            "url": {
      -              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "logs_tail"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "functionName"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "fn"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "logGroup"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "filter": {
      -              "description": "CloudWatch filter pattern.",
      -              "type": "string"
      -            },
      -            "filterPattern": {
      -              "description": "Alias of filter.",
      -              "type": "string"
      -            },
      -            "fn": {
      -              "description": "Alias of functionName.",
      -              "type": "string"
      -            },
      -            "functionName": {
      -              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      -              "type": "string"
      -            },
      -            "limit": {
      -              "description": "Max events. Default 100, clamped to 1-1000.",
      -              "type": "integer"
      -            },
      -            "logGroup": {
      -              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      -              "type": "string"
      -            },
      -            "minutes": {
      -              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      -              "type": "integer"
      -            },
      -            "region": {
      -              "description": "Region of the log group. Default us-east-1.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "qr_code"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "errorCorrection": {
      -              "description": "How much damage the code survives; higher is denser. Default M.",
      -              "enum": [
      -                "L",
      -                "M",
      -                "Q",
      -                "H"
      -              ],
      -              "type": "string"
      -            },
      -            "format": {
      -              "description": "What to return. Default svg.",
      -              "enum": [
      -                "svg",
      -                "png",
      -                "both"
      -              ],
      -              "type": "string"
      -            },
      -            "label": {
      -              "description": "The SVG's accessible name. Default 'QR code'.",
      -              "type": "string"
      -            },
      -            "sizePx": {
      -              "description": "Width and height in pixels. Default 512.",
      -              "maximum": 2048,
      -              "minimum": 64,
      -              "type": "integer"
      -            },
      -            "value": {
      -              "description": "The link or text the code holds.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "value"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  }
      -]New value: +[
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "rds_query"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "continueAfterTimeout": {
      +              "description": "Data API flag, forwarded verbatim.",
      +              "type": "boolean"
      +            },
      +            "db": {
      +              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      +              "enum": [
      +                "main",
      +                "aegis",
      +                "analytics",
      +                "pay",
      +                "companies",
      +                "events",
      +                "dating",
      +                "intel",
      +                "studio",
      +                "ledger",
      +                "deals",
      +                "ads",
      +                "chat",
      +                "market",
      +                "referrals",
      +                "notes",
      +                "learn",
      +                "storage",
      +                "give",
      +                "launch",
      +                "communities",
      +                "schedule",
      +                "gift",
      +                "seats",
      +                "boardroom",
      +                "email",
      +                "book",
      +                "sales",
      +                "newsletter",
      +                "legal",
      +                "rivals",
      +                "message",
      +                "apps",
      +                "verify",
      +                "import",
      +                "sign",
      +                "games",
      +                "myconnect",
      +                "notifications",
      +                "realtor",
      +                "credits",
      +                "licensing",
      +                "crowdfund",
      +                "ship",
      +                "catalog",
      +                "attention",
      +                "network",
      +                "dictation",
      +                "pass",
      +                "ab",
      +                "pages",
      +                "mydomains",
      +                "enterprise",
      +                "life",
      +                "wallpaper",
      +                "calls",
      +                "share",
      +                "google",
      +                "deletion",
      +                "outreach",
      +                "video",
      +                "translate",
      +                "contacts",
      +                "database",
      +                "cranium",
      +                "connections",
      +                "identity",
      +                "accounts",
      +                "argus",
      +                "plutus",
      +                "payments",
      +                "intelligence",
      +                "heimdall",
      +                "hephaestus",
      +                "brand-deals",
      +                "hermes",
      +                "history",
      +                "locker"
      +              ],
      +              "type": "string"
      +            },
      +            "formatRecordsAs": {
      +              "description": "RDS Data API records format; defaults to JSON.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      +              "type": "string"
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied server-side before the rows are returned.",
      +              "type": "string"
      +            },
      +            "parameters": {
      +              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      +              "type": "array"
      +            },
      +            "resultSetOptions": {
      +              "description": "Data API resultSetOptions, forwarded verbatim.",
      +              "type": "object"
      +            },
      +            "schema": {
      +              "description": "Data API schema qualifier, forwarded verbatim.",
      +              "type": "string"
      +            },
      +            "sql": {
      +              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      +              "type": "string"
      +            },
      +            "transaction": {
      +              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      +              "enum": [
      +                "begin",
      +                "commit",
      +                "rollback"
      +              ],
      +              "type": "string"
      +            },
      +            "transactionId": {
      +              "description": "Run inside an existing Data API transaction.",
      +              "type": "string"
      +            },
      +            "write": {
      +              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      +              "type": "boolean"
      +            }
      +          },
      +          "required": [
      +            "db"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "aws_sweep"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "tool_name"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "endpoint_id"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "endpoint_id": {
      +              "description": "A catalog endpoint id, used instead of tool_name.",
      +              "type": "string"
      +            },
      +            "includeEnv": {
      +              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      +              "type": "boolean"
      +            },
      +            "instances": {
      +              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": [
      +                "array",
      +                "string"
      +              ]
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied to each instance's result.",
      +              "type": "string"
      +            },
      +            "paginateAll": {
      +              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      +              "type": "boolean"
      +            },
      +            "params": {
      +              "description": "The swept op's OWN params, passed through to each per-instance call.",
      +              "type": "object"
      +            },
      +            "tool_name": {
      +              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "probe"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "targets"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "url"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "bodyContains": {
      +              "description": "Single-target shorthand: substring the body must contain.",
      +              "type": "string"
      +            },
      +            "expectStatus": {
      +              "description": "Single-target shorthand: the exact status to expect.",
      +              "type": "integer"
      +            },
      +            "headers": {
      +              "description": "Single-target shorthand: request headers.",
      +              "type": "object"
      +            },
      +            "method": {
      +              "description": "Single-target shorthand: HTTP method. Default GET.",
      +              "type": "string"
      +            },
      +            "targets": {
      +              "description": "Up to 10 targets per call.",
      +              "items": {
      +                "properties": {
      +                  "bodyContains": {
      +                    "description": "Substring the response body must contain to pass.",
      +                    "type": "string"
      +                  },
      +                  "expectStatus": {
      +                    "description": "Pass only on this exact status; default any 2xx.",
      +                    "type": "integer"
      +                  },
      +                  "headers": {
      +                    "description": "Request headers. Sent, never echoed back in the reply.",
      +                    "type": "object"
      +                  },
      +                  "method": {
      +                    "description": "HTTP method, uppercased by the handler. Default GET.",
      +                    "type": "string"
      +                  },
      +                  "url": {
      +                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "url"
      +                ],
      +                "type": "object"
      +              },
      +              "maxItems": 10,
      +              "type": "array"
      +            },
      +            "url": {
      +              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "logs_tail"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "functionName"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "fn"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "logGroup"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "filter": {
      +              "description": "CloudWatch filter pattern.",
      +              "type": "string"
      +            },
      +            "filterPattern": {
      +              "description": "Alias of filter.",
      +              "type": "string"
      +            },
      +            "fn": {
      +              "description": "Alias of functionName.",
      +              "type": "string"
      +            },
      +            "functionName": {
      +              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      +              "type": "string"
      +            },
      +            "limit": {
      +              "description": "Max events. Default 100, clamped to 1-1000.",
      +              "type": "integer"
      +            },
      +            "logGroup": {
      +              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      +              "type": "string"
      +            },
      +            "minutes": {
      +              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      +              "type": "integer"
      +            },
      +            "region": {
      +              "description": "Region of the log group. Default us-east-1.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "qr_code"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "errorCorrection": {
      +              "description": "How much damage the code survives; higher is denser. Default M.",
      +              "enum": [
      +                "L",
      +                "M",
      +                "Q",
      +                "H"
      +              ],
      +              "type": "string"
      +            },
      +            "format": {
      +              "description": "What to return. Default svg.",
      +              "enum": [
      +                "svg",
      +                "png",
      +                "both"
      +              ],
      +              "type": "string"
      +            },
      +            "label": {
      +              "description": "The SVG's accessible name. Default 'QR code'.",
      +              "type": "string"
      +            },
      +            "sizePx": {
      +              "description": "Width and height in pixels. Default 512.",
      +              "maximum": 2048,
      +              "minimum": 64,
      +              "type": "integer"
      +            },
      +            "value": {
      +              "description": "The link or text the code holds.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "value"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  }
      +]
  5. Changed1 schema field changed
    • changedInput schema / allOf
      Previous value: -[
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "rds_query"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "continueAfterTimeout": {
      -              "description": "Data API flag, forwarded verbatim.",
      -              "type": "boolean"
      -            },
      -            "db": {
      -              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      -              "enum": [
      -                "main",
      -                "aegis",
      -                "analytics",
      -                "pay",
      -                "companies",
      -                "events",
      -                "dating",
      -                "intel",
      -                "studio",
      -                "ledger",
      -                "deals",
      -                "ads",
      -                "chat",
      -                "market",
      -                "referrals",
      -                "notes",
      -                "learn",
      -                "storage",
      -                "give",
      -                "launch",
      -                "communities",
      -                "schedule",
      -                "gift",
      -                "seats",
      -                "boardroom",
      -                "email",
      -                "book",
      -                "sales",
      -                "newsletter",
      -                "legal",
      -                "rivals",
      -                "message",
      -                "apps",
      -                "verify",
      -                "import",
      -                "sign",
      -                "games",
      -                "myconnect",
      -                "notifications",
      -                "realtor",
      -                "credits",
      -                "licensing",
      -                "crowdfund",
      -                "ship",
      -                "catalog",
      -                "attention",
      -                "network",
      -                "dictation",
      -                "pass",
      -                "ab",
      -                "pages",
      -                "mydomains",
      -                "enterprise",
      -                "life",
      -                "wallpaper",
      -                "calls",
      -                "share",
      -                "google",
      -                "deletion",
      -                "outreach",
      -                "video",
      -                "translate",
      -                "contacts",
      -                "cranium",
      -                "connections",
      -                "identity",
      -                "accounts",
      -                "argus",
      -                "plutus",
      -                "payments",
      -                "intelligence",
      -                "heimdall",
      -                "hephaestus",
      -                "brand-deals",
      -                "hermes",
      -                "history",
      -                "locker"
      -              ],
      -              "type": "string"
      -            },
      -            "formatRecordsAs": {
      -              "description": "RDS Data API records format; defaults to JSON.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      -              "type": "string"
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied server-side before the rows are returned.",
      -              "type": "string"
      -            },
      -            "parameters": {
      -              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      -              "type": "array"
      -            },
      -            "resultSetOptions": {
      -              "description": "Data API resultSetOptions, forwarded verbatim.",
      -              "type": "object"
      -            },
      -            "schema": {
      -              "description": "Data API schema qualifier, forwarded verbatim.",
      -              "type": "string"
      -            },
      -            "sql": {
      -              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      -              "type": "string"
      -            },
      -            "transaction": {
      -              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      -              "enum": [
      -                "begin",
      -                "commit",
      -                "rollback"
      -              ],
      -              "type": "string"
      -            },
      -            "transactionId": {
      -              "description": "Run inside an existing Data API transaction.",
      -              "type": "string"
      -            },
      -            "write": {
      -              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      -              "type": "boolean"
      -            }
      -          },
      -          "required": [
      -            "db"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "aws_sweep"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "tool_name"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "endpoint_id"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "endpoint_id": {
      -              "description": "A catalog endpoint id, used instead of tool_name.",
      -              "type": "string"
      -            },
      -            "includeEnv": {
      -              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      -              "type": "boolean"
      -            },
      -            "instances": {
      -              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": [
      -                "array",
      -                "string"
      -              ]
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied to each instance's result.",
      -              "type": "string"
      -            },
      -            "paginateAll": {
      -              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      -              "type": "boolean"
      -            },
      -            "params": {
      -              "description": "The swept op's OWN params, passed through to each per-instance call.",
      -              "type": "object"
      -            },
      -            "tool_name": {
      -              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "probe"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "targets"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "url"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "bodyContains": {
      -              "description": "Single-target shorthand: substring the body must contain.",
      -              "type": "string"
      -            },
      -            "expectStatus": {
      -              "description": "Single-target shorthand: the exact status to expect.",
      -              "type": "integer"
      -            },
      -            "headers": {
      -              "description": "Single-target shorthand: request headers.",
      -              "type": "object"
      -            },
      -            "method": {
      -              "description": "Single-target shorthand: HTTP method. Default GET.",
      -              "type": "string"
      -            },
      -            "targets": {
      -              "description": "Up to 10 targets per call.",
      -              "items": {
      -                "properties": {
      -                  "bodyContains": {
      -                    "description": "Substring the response body must contain to pass.",
      -                    "type": "string"
      -                  },
      -                  "expectStatus": {
      -                    "description": "Pass only on this exact status; default any 2xx.",
      -                    "type": "integer"
      -                  },
      -                  "headers": {
      -                    "description": "Request headers. Sent, never echoed back in the reply.",
      -                    "type": "object"
      -                  },
      -                  "method": {
      -                    "description": "HTTP method, uppercased by the handler. Default GET.",
      -                    "type": "string"
      -                  },
      -                  "url": {
      -                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "url"
      -                ],
      -                "type": "object"
      -              },
      -              "maxItems": 10,
      -              "type": "array"
      -            },
      -            "url": {
      -              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "logs_tail"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "functionName"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "fn"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "logGroup"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "filter": {
      -              "description": "CloudWatch filter pattern.",
      -              "type": "string"
      -            },
      -            "filterPattern": {
      -              "description": "Alias of filter.",
      -              "type": "string"
      -            },
      -            "fn": {
      -              "description": "Alias of functionName.",
      -              "type": "string"
      -            },
      -            "functionName": {
      -              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      -              "type": "string"
      -            },
      -            "limit": {
      -              "description": "Max events. Default 100, clamped to 1-1000.",
      -              "type": "integer"
      -            },
      -            "logGroup": {
      -              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      -              "type": "string"
      -            },
      -            "minutes": {
      -              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      -              "type": "integer"
      -            },
      -            "region": {
      -              "description": "Region of the log group. Default us-east-1.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "qr_code"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "errorCorrection": {
      -              "description": "How much damage the code survives; higher is denser. Default M.",
      -              "enum": [
      -                "L",
      -                "M",
      -                "Q",
      -                "H"
      -              ],
      -              "type": "string"
      -            },
      -            "format": {
      -              "description": "What to return. Default svg.",
      -              "enum": [
      -                "svg",
      -                "png",
      -                "both"
      -              ],
      -              "type": "string"
      -            },
      -            "label": {
      -              "description": "The SVG's accessible name. Default 'QR code'.",
      -              "type": "string"
      -            },
      -            "sizePx": {
      -              "description": "Width and height in pixels. Default 512.",
      -              "maximum": 2048,
      -              "minimum": 64,
      -              "type": "integer"
      -            },
      -            "value": {
      -              "description": "The link or text the code holds.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "value"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  }
      -]New value: +[
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "rds_query"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "continueAfterTimeout": {
      +              "description": "Data API flag, forwarded verbatim.",
      +              "type": "boolean"
      +            },
      +            "db": {
      +              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      +              "enum": [
      +                "main",
      +                "aegis",
      +                "analytics",
      +                "pay",
      +                "companies",
      +                "events",
      +                "dating",
      +                "intel",
      +                "studio",
      +                "ledger",
      +                "deals",
      +                "ads",
      +                "chat",
      +                "market",
      +                "referrals",
      +                "notes",
      +                "learn",
      +                "storage",
      +                "give",
      +                "launch",
      +                "communities",
      +                "schedule",
      +                "gift",
      +                "seats",
      +                "boardroom",
      +                "email",
      +                "book",
      +                "sales",
      +                "newsletter",
      +                "legal",
      +                "rivals",
      +                "message",
      +                "apps",
      +                "verify",
      +                "import",
      +                "sign",
      +                "games",
      +                "myconnect",
      +                "notifications",
      +                "realtor",
      +                "credits",
      +                "licensing",
      +                "crowdfund",
      +                "ship",
      +                "catalog",
      +                "attention",
      +                "network",
      +                "dictation",
      +                "pass",
      +                "ab",
      +                "pages",
      +                "mydomains",
      +                "enterprise",
      +                "life",
      +                "wallpaper",
      +                "calls",
      +                "share",
      +                "google",
      +                "deletion",
      +                "outreach",
      +                "video",
      +                "translate",
      +                "contacts",
      +                "appdb",
      +                "cranium",
      +                "connections",
      +                "identity",
      +                "accounts",
      +                "argus",
      +                "plutus",
      +                "payments",
      +                "intelligence",
      +                "heimdall",
      +                "hephaestus",
      +                "brand-deals",
      +                "hermes",
      +                "history",
      +                "locker"
      +              ],
      +              "type": "string"
      +            },
      +            "formatRecordsAs": {
      +              "description": "RDS Data API records format; defaults to JSON.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      +              "type": "string"
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied server-side before the rows are returned.",
      +              "type": "string"
      +            },
      +            "parameters": {
      +              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      +              "type": "array"
      +            },
      +            "resultSetOptions": {
      +              "description": "Data API resultSetOptions, forwarded verbatim.",
      +              "type": "object"
      +            },
      +            "schema": {
      +              "description": "Data API schema qualifier, forwarded verbatim.",
      +              "type": "string"
      +            },
      +            "sql": {
      +              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      +              "type": "string"
      +            },
      +            "transaction": {
      +              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      +              "enum": [
      +                "begin",
      +                "commit",
      +                "rollback"
      +              ],
      +              "type": "string"
      +            },
      +            "transactionId": {
      +              "description": "Run inside an existing Data API transaction.",
      +              "type": "string"
      +            },
      +            "write": {
      +              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      +              "type": "boolean"
      +            }
      +          },
      +          "required": [
      +            "db"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "aws_sweep"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "tool_name"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "endpoint_id"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "endpoint_id": {
      +              "description": "A catalog endpoint id, used instead of tool_name.",
      +              "type": "string"
      +            },
      +            "includeEnv": {
      +              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      +              "type": "boolean"
      +            },
      +            "instances": {
      +              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": [
      +                "array",
      +                "string"
      +              ]
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied to each instance's result.",
      +              "type": "string"
      +            },
      +            "paginateAll": {
      +              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      +              "type": "boolean"
      +            },
      +            "params": {
      +              "description": "The swept op's OWN params, passed through to each per-instance call.",
      +              "type": "object"
      +            },
      +            "tool_name": {
      +              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "probe"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "targets"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "url"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "bodyContains": {
      +              "description": "Single-target shorthand: substring the body must contain.",
      +              "type": "string"
      +            },
      +            "expectStatus": {
      +              "description": "Single-target shorthand: the exact status to expect.",
      +              "type": "integer"
      +            },
      +            "headers": {
      +              "description": "Single-target shorthand: request headers.",
      +              "type": "object"
      +            },
      +            "method": {
      +              "description": "Single-target shorthand: HTTP method. Default GET.",
      +              "type": "string"
      +            },
      +            "targets": {
      +              "description": "Up to 10 targets per call.",
      +              "items": {
      +                "properties": {
      +                  "bodyContains": {
      +                    "description": "Substring the response body must contain to pass.",
      +                    "type": "string"
      +                  },
      +                  "expectStatus": {
      +                    "description": "Pass only on this exact status; default any 2xx.",
      +                    "type": "integer"
      +                  },
      +                  "headers": {
      +                    "description": "Request headers. Sent, never echoed back in the reply.",
      +                    "type": "object"
      +                  },
      +                  "method": {
      +                    "description": "HTTP method, uppercased by the handler. Default GET.",
      +                    "type": "string"
      +                  },
      +                  "url": {
      +                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "url"
      +                ],
      +                "type": "object"
      +              },
      +              "maxItems": 10,
      +              "type": "array"
      +            },
      +            "url": {
      +              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "logs_tail"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "functionName"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "fn"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "logGroup"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "filter": {
      +              "description": "CloudWatch filter pattern.",
      +              "type": "string"
      +            },
      +            "filterPattern": {
      +              "description": "Alias of filter.",
      +              "type": "string"
      +            },
      +            "fn": {
      +              "description": "Alias of functionName.",
      +              "type": "string"
      +            },
      +            "functionName": {
      +              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      +              "type": "string"
      +            },
      +            "limit": {
      +              "description": "Max events. Default 100, clamped to 1-1000.",
      +              "type": "integer"
      +            },
      +            "logGroup": {
      +              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      +              "type": "string"
      +            },
      +            "minutes": {
      +              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      +              "type": "integer"
      +            },
      +            "region": {
      +              "description": "Region of the log group. Default us-east-1.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "qr_code"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "errorCorrection": {
      +              "description": "How much damage the code survives; higher is denser. Default M.",
      +              "enum": [
      +                "L",
      +                "M",
      +                "Q",
      +                "H"
      +              ],
      +              "type": "string"
      +            },
      +            "format": {
      +              "description": "What to return. Default svg.",
      +              "enum": [
      +                "svg",
      +                "png",
      +                "both"
      +              ],
      +              "type": "string"
      +            },
      +            "label": {
      +              "description": "The SVG's accessible name. Default 'QR code'.",
      +              "type": "string"
      +            },
      +            "sizePx": {
      +              "description": "Width and height in pixels. Default 512.",
      +              "maximum": 2048,
      +              "minimum": 64,
      +              "type": "integer"
      +            },
      +            "value": {
      +              "description": "The link or text the code holds.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "value"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  }
      +]
  6. Changed1 schema field changed
    • changedInput schema / allOf
      Previous value: -[
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "rds_query"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "continueAfterTimeout": {
      -              "description": "Data API flag, forwarded verbatim.",
      -              "type": "boolean"
      -            },
      -            "db": {
      -              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      -              "enum": [
      -                "main",
      -                "aegis",
      -                "analytics",
      -                "pay",
      -                "companies",
      -                "events",
      -                "dating",
      -                "intel",
      -                "studio",
      -                "ledger",
      -                "deals",
      -                "ads",
      -                "chat",
      -                "market",
      -                "referrals",
      -                "notes",
      -                "learn",
      -                "storage",
      -                "give",
      -                "launch",
      -                "communities",
      -                "schedule",
      -                "gift",
      -                "seats",
      -                "boardroom",
      -                "email",
      -                "book",
      -                "sales",
      -                "newsletter",
      -                "legal",
      -                "rivals",
      -                "message",
      -                "apps",
      -                "verify",
      -                "import",
      -                "sign",
      -                "games",
      -                "myconnect",
      -                "notifications",
      -                "realtor",
      -                "credits",
      -                "licensing",
      -                "crowdfund",
      -                "ship",
      -                "catalog",
      -                "attention",
      -                "network",
      -                "dictation",
      -                "pass",
      -                "ab",
      -                "pages",
      -                "mydomains",
      -                "enterprise",
      -                "life",
      -                "wallpaper",
      -                "calls",
      -                "share",
      -                "google",
      -                "deletion",
      -                "outreach",
      -                "video",
      -                "translate",
      -                "cranium",
      -                "connections",
      -                "identity",
      -                "accounts",
      -                "argus",
      -                "plutus",
      -                "payments",
      -                "intelligence",
      -                "heimdall",
      -                "hephaestus",
      -                "brand-deals",
      -                "hermes",
      -                "history",
      -                "locker"
      -              ],
      -              "type": "string"
      -            },
      -            "formatRecordsAs": {
      -              "description": "RDS Data API records format; defaults to JSON.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      -              "type": "string"
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied server-side before the rows are returned.",
      -              "type": "string"
      -            },
      -            "parameters": {
      -              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      -              "type": "array"
      -            },
      -            "resultSetOptions": {
      -              "description": "Data API resultSetOptions, forwarded verbatim.",
      -              "type": "object"
      -            },
      -            "schema": {
      -              "description": "Data API schema qualifier, forwarded verbatim.",
      -              "type": "string"
      -            },
      -            "sql": {
      -              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      -              "type": "string"
      -            },
      -            "transaction": {
      -              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      -              "enum": [
      -                "begin",
      -                "commit",
      -                "rollback"
      -              ],
      -              "type": "string"
      -            },
      -            "transactionId": {
      -              "description": "Run inside an existing Data API transaction.",
      -              "type": "string"
      -            },
      -            "write": {
      -              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      -              "type": "boolean"
      -            }
      -          },
      -          "required": [
      -            "db"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "aws_sweep"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "tool_name"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "endpoint_id"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "endpoint_id": {
      -              "description": "A catalog endpoint id, used instead of tool_name.",
      -              "type": "string"
      -            },
      -            "includeEnv": {
      -              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      -              "type": "boolean"
      -            },
      -            "instances": {
      -              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": [
      -                "array",
      -                "string"
      -              ]
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied to each instance's result.",
      -              "type": "string"
      -            },
      -            "paginateAll": {
      -              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      -              "type": "boolean"
      -            },
      -            "params": {
      -              "description": "The swept op's OWN params, passed through to each per-instance call.",
      -              "type": "object"
      -            },
      -            "tool_name": {
      -              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "probe"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "targets"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "url"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "bodyContains": {
      -              "description": "Single-target shorthand: substring the body must contain.",
      -              "type": "string"
      -            },
      -            "expectStatus": {
      -              "description": "Single-target shorthand: the exact status to expect.",
      -              "type": "integer"
      -            },
      -            "headers": {
      -              "description": "Single-target shorthand: request headers.",
      -              "type": "object"
      -            },
      -            "method": {
      -              "description": "Single-target shorthand: HTTP method. Default GET.",
      -              "type": "string"
      -            },
      -            "targets": {
      -              "description": "Up to 10 targets per call.",
      -              "items": {
      -                "properties": {
      -                  "bodyContains": {
      -                    "description": "Substring the response body must contain to pass.",
      -                    "type": "string"
      -                  },
      -                  "expectStatus": {
      -                    "description": "Pass only on this exact status; default any 2xx.",
      -                    "type": "integer"
      -                  },
      -                  "headers": {
      -                    "description": "Request headers. Sent, never echoed back in the reply.",
      -                    "type": "object"
      -                  },
      -                  "method": {
      -                    "description": "HTTP method, uppercased by the handler. Default GET.",
      -                    "type": "string"
      -                  },
      -                  "url": {
      -                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "url"
      -                ],
      -                "type": "object"
      -              },
      -              "maxItems": 10,
      -              "type": "array"
      -            },
      -            "url": {
      -              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "logs_tail"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "functionName"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "fn"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "logGroup"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "filter": {
      -              "description": "CloudWatch filter pattern.",
      -              "type": "string"
      -            },
      -            "filterPattern": {
      -              "description": "Alias of filter.",
      -              "type": "string"
      -            },
      -            "fn": {
      -              "description": "Alias of functionName.",
      -              "type": "string"
      -            },
      -            "functionName": {
      -              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      -              "type": "string"
      -            },
      -            "limit": {
      -              "description": "Max events. Default 100, clamped to 1-1000.",
      -              "type": "integer"
      -            },
      -            "logGroup": {
      -              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      -              "type": "string"
      -            },
      -            "minutes": {
      -              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      -              "type": "integer"
      -            },
      -            "region": {
      -              "description": "Region of the log group. Default us-east-1.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "qr_code"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "errorCorrection": {
      -              "description": "How much damage the code survives; higher is denser. Default M.",
      -              "enum": [
      -                "L",
      -                "M",
      -                "Q",
      -                "H"
      -              ],
      -              "type": "string"
      -            },
      -            "format": {
      -              "description": "What to return. Default svg.",
      -              "enum": [
      -                "svg",
      -                "png",
      -                "both"
      -              ],
      -              "type": "string"
      -            },
      -            "label": {
      -              "description": "The SVG's accessible name. Default 'QR code'.",
      -              "type": "string"
      -            },
      -            "sizePx": {
      -              "description": "Width and height in pixels. Default 512.",
      -              "maximum": 2048,
      -              "minimum": 64,
      -              "type": "integer"
      -            },
      -            "value": {
      -              "description": "The link or text the code holds.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "value"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  }
      -]New value: +[
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "rds_query"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "continueAfterTimeout": {
      +              "description": "Data API flag, forwarded verbatim.",
      +              "type": "boolean"
      +            },
      +            "db": {
      +              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      +              "enum": [
      +                "main",
      +                "aegis",
      +                "analytics",
      +                "pay",
      +                "companies",
      +                "events",
      +                "dating",
      +                "intel",
      +                "studio",
      +                "ledger",
      +                "deals",
      +                "ads",
      +                "chat",
      +                "market",
      +                "referrals",
      +                "notes",
      +                "learn",
      +                "storage",
      +                "give",
      +                "launch",
      +                "communities",
      +                "schedule",
      +                "gift",
      +                "seats",
      +                "boardroom",
      +                "email",
      +                "book",
      +                "sales",
      +                "newsletter",
      +                "legal",
      +                "rivals",
      +                "message",
      +                "apps",
      +                "verify",
      +                "import",
      +                "sign",
      +                "games",
      +                "myconnect",
      +                "notifications",
      +                "realtor",
      +                "credits",
      +                "licensing",
      +                "crowdfund",
      +                "ship",
      +                "catalog",
      +                "attention",
      +                "network",
      +                "dictation",
      +                "pass",
      +                "ab",
      +                "pages",
      +                "mydomains",
      +                "enterprise",
      +                "life",
      +                "wallpaper",
      +                "calls",
      +                "share",
      +                "google",
      +                "deletion",
      +                "outreach",
      +                "video",
      +                "translate",
      +                "contacts",
      +                "cranium",
      +                "connections",
      +                "identity",
      +                "accounts",
      +                "argus",
      +                "plutus",
      +                "payments",
      +                "intelligence",
      +                "heimdall",
      +                "hephaestus",
      +                "brand-deals",
      +                "hermes",
      +                "history",
      +                "locker"
      +              ],
      +              "type": "string"
      +            },
      +            "formatRecordsAs": {
      +              "description": "RDS Data API records format; defaults to JSON.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      +              "type": "string"
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied server-side before the rows are returned.",
      +              "type": "string"
      +            },
      +            "parameters": {
      +              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      +              "type": "array"
      +            },
      +            "resultSetOptions": {
      +              "description": "Data API resultSetOptions, forwarded verbatim.",
      +              "type": "object"
      +            },
      +            "schema": {
      +              "description": "Data API schema qualifier, forwarded verbatim.",
      +              "type": "string"
      +            },
      +            "sql": {
      +              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      +              "type": "string"
      +            },
      +            "transaction": {
      +              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      +              "enum": [
      +                "begin",
      +                "commit",
      +                "rollback"
      +              ],
      +              "type": "string"
      +            },
      +            "transactionId": {
      +              "description": "Run inside an existing Data API transaction.",
      +              "type": "string"
      +            },
      +            "write": {
      +              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      +              "type": "boolean"
      +            }
      +          },
      +          "required": [
      +            "db"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "aws_sweep"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "tool_name"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "endpoint_id"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "endpoint_id": {
      +              "description": "A catalog endpoint id, used instead of tool_name.",
      +              "type": "string"
      +            },
      +            "includeEnv": {
      +              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      +              "type": "boolean"
      +            },
      +            "instances": {
      +              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": [
      +                "array",
      +                "string"
      +              ]
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied to each instance's result.",
      +              "type": "string"
      +            },
      +            "paginateAll": {
      +              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      +              "type": "boolean"
      +            },
      +            "params": {
      +              "description": "The swept op's OWN params, passed through to each per-instance call.",
      +              "type": "object"
      +            },
      +            "tool_name": {
      +              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "probe"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "targets"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "url"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "bodyContains": {
      +              "description": "Single-target shorthand: substring the body must contain.",
      +              "type": "string"
      +            },
      +            "expectStatus": {
      +              "description": "Single-target shorthand: the exact status to expect.",
      +              "type": "integer"
      +            },
      +            "headers": {
      +              "description": "Single-target shorthand: request headers.",
      +              "type": "object"
      +            },
      +            "method": {
      +              "description": "Single-target shorthand: HTTP method. Default GET.",
      +              "type": "string"
      +            },
      +            "targets": {
      +              "description": "Up to 10 targets per call.",
      +              "items": {
      +                "properties": {
      +                  "bodyContains": {
      +                    "description": "Substring the response body must contain to pass.",
      +                    "type": "string"
      +                  },
      +                  "expectStatus": {
      +                    "description": "Pass only on this exact status; default any 2xx.",
      +                    "type": "integer"
      +                  },
      +                  "headers": {
      +                    "description": "Request headers. Sent, never echoed back in the reply.",
      +                    "type": "object"
      +                  },
      +                  "method": {
      +                    "description": "HTTP method, uppercased by the handler. Default GET.",
      +                    "type": "string"
      +                  },
      +                  "url": {
      +                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "url"
      +                ],
      +                "type": "object"
      +              },
      +              "maxItems": 10,
      +              "type": "array"
      +            },
      +            "url": {
      +              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "logs_tail"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "functionName"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "fn"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "logGroup"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "filter": {
      +              "description": "CloudWatch filter pattern.",
      +              "type": "string"
      +            },
      +            "filterPattern": {
      +              "description": "Alias of filter.",
      +              "type": "string"
      +            },
      +            "fn": {
      +              "description": "Alias of functionName.",
      +              "type": "string"
      +            },
      +            "functionName": {
      +              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      +              "type": "string"
      +            },
      +            "limit": {
      +              "description": "Max events. Default 100, clamped to 1-1000.",
      +              "type": "integer"
      +            },
      +            "logGroup": {
      +              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      +              "type": "string"
      +            },
      +            "minutes": {
      +              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      +              "type": "integer"
      +            },
      +            "region": {
      +              "description": "Region of the log group. Default us-east-1.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "qr_code"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "errorCorrection": {
      +              "description": "How much damage the code survives; higher is denser. Default M.",
      +              "enum": [
      +                "L",
      +                "M",
      +                "Q",
      +                "H"
      +              ],
      +              "type": "string"
      +            },
      +            "format": {
      +              "description": "What to return. Default svg.",
      +              "enum": [
      +                "svg",
      +                "png",
      +                "both"
      +              ],
      +              "type": "string"
      +            },
      +            "label": {
      +              "description": "The SVG's accessible name. Default 'QR code'.",
      +              "type": "string"
      +            },
      +            "sizePx": {
      +              "description": "Width and height in pixels. Default 512.",
      +              "maximum": 2048,
      +              "minimum": 64,
      +              "type": "integer"
      +            },
      +            "value": {
      +              "description": "The link or text the code holds.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "value"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  }
      +]
  7. Changed1 schema field changed
    • changedInput schema / allOf
      Previous value: -[
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "rds_query"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "continueAfterTimeout": {
      -              "description": "Data API flag, forwarded verbatim.",
      -              "type": "boolean"
      -            },
      -            "db": {
      -              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      -              "enum": [
      -                "main",
      -                "aegis",
      -                "analytics",
      -                "pay",
      -                "companies",
      -                "events",
      -                "dating",
      -                "intel",
      -                "studio",
      -                "ledger",
      -                "deals",
      -                "ads",
      -                "chat",
      -                "market",
      -                "referrals",
      -                "notes",
      -                "learn",
      -                "storage",
      -                "give",
      -                "launch",
      -                "communities",
      -                "schedule",
      -                "gift",
      -                "seats",
      -                "boardroom",
      -                "email",
      -                "book",
      -                "sales",
      -                "newsletter",
      -                "legal",
      -                "rivals",
      -                "message",
      -                "apps",
      -                "verify",
      -                "import",
      -                "sign",
      -                "games",
      -                "myconnect",
      -                "notifications",
      -                "realtor",
      -                "credits",
      -                "licensing",
      -                "crowdfund",
      -                "ship",
      -                "catalog",
      -                "attention",
      -                "network",
      -                "dictation",
      -                "pass",
      -                "ab",
      -                "pages",
      -                "mydomains",
      -                "enterprise",
      -                "life",
      -                "wallpaper",
      -                "calls",
      -                "share",
      -                "google",
      -                "deletion",
      -                "outreach",
      -                "video",
      -                "cranium",
      -                "connections",
      -                "identity",
      -                "accounts",
      -                "argus",
      -                "plutus",
      -                "payments",
      -                "intelligence",
      -                "heimdall",
      -                "hephaestus",
      -                "brand-deals",
      -                "hermes",
      -                "history",
      -                "locker"
      -              ],
      -              "type": "string"
      -            },
      -            "formatRecordsAs": {
      -              "description": "RDS Data API records format; defaults to JSON.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      -              "type": "string"
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied server-side before the rows are returned.",
      -              "type": "string"
      -            },
      -            "parameters": {
      -              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      -              "type": "array"
      -            },
      -            "resultSetOptions": {
      -              "description": "Data API resultSetOptions, forwarded verbatim.",
      -              "type": "object"
      -            },
      -            "schema": {
      -              "description": "Data API schema qualifier, forwarded verbatim.",
      -              "type": "string"
      -            },
      -            "sql": {
      -              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      -              "type": "string"
      -            },
      -            "transaction": {
      -              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      -              "enum": [
      -                "begin",
      -                "commit",
      -                "rollback"
      -              ],
      -              "type": "string"
      -            },
      -            "transactionId": {
      -              "description": "Run inside an existing Data API transaction.",
      -              "type": "string"
      -            },
      -            "write": {
      -              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      -              "type": "boolean"
      -            }
      -          },
      -          "required": [
      -            "db"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "aws_sweep"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "tool_name"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "endpoint_id"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "endpoint_id": {
      -              "description": "A catalog endpoint id, used instead of tool_name.",
      -              "type": "string"
      -            },
      -            "includeEnv": {
      -              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      -              "type": "boolean"
      -            },
      -            "instances": {
      -              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": [
      -                "array",
      -                "string"
      -              ]
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied to each instance's result.",
      -              "type": "string"
      -            },
      -            "paginateAll": {
      -              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      -              "type": "boolean"
      -            },
      -            "params": {
      -              "description": "The swept op's OWN params, passed through to each per-instance call.",
      -              "type": "object"
      -            },
      -            "tool_name": {
      -              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "probe"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "targets"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "url"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "bodyContains": {
      -              "description": "Single-target shorthand: substring the body must contain.",
      -              "type": "string"
      -            },
      -            "expectStatus": {
      -              "description": "Single-target shorthand: the exact status to expect.",
      -              "type": "integer"
      -            },
      -            "headers": {
      -              "description": "Single-target shorthand: request headers.",
      -              "type": "object"
      -            },
      -            "method": {
      -              "description": "Single-target shorthand: HTTP method. Default GET.",
      -              "type": "string"
      -            },
      -            "targets": {
      -              "description": "Up to 10 targets per call.",
      -              "items": {
      -                "properties": {
      -                  "bodyContains": {
      -                    "description": "Substring the response body must contain to pass.",
      -                    "type": "string"
      -                  },
      -                  "expectStatus": {
      -                    "description": "Pass only on this exact status; default any 2xx.",
      -                    "type": "integer"
      -                  },
      -                  "headers": {
      -                    "description": "Request headers. Sent, never echoed back in the reply.",
      -                    "type": "object"
      -                  },
      -                  "method": {
      -                    "description": "HTTP method, uppercased by the handler. Default GET.",
      -                    "type": "string"
      -                  },
      -                  "url": {
      -                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "url"
      -                ],
      -                "type": "object"
      -              },
      -              "maxItems": 10,
      -              "type": "array"
      -            },
      -            "url": {
      -              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "logs_tail"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "functionName"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "fn"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "logGroup"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "filter": {
      -              "description": "CloudWatch filter pattern.",
      -              "type": "string"
      -            },
      -            "filterPattern": {
      -              "description": "Alias of filter.",
      -              "type": "string"
      -            },
      -            "fn": {
      -              "description": "Alias of functionName.",
      -              "type": "string"
      -            },
      -            "functionName": {
      -              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      -              "type": "string"
      -            },
      -            "limit": {
      -              "description": "Max events. Default 100, clamped to 1-1000.",
      -              "type": "integer"
      -            },
      -            "logGroup": {
      -              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      -              "type": "string"
      -            },
      -            "minutes": {
      -              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      -              "type": "integer"
      -            },
      -            "region": {
      -              "description": "Region of the log group. Default us-east-1.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "qr_code"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "errorCorrection": {
      -              "description": "How much damage the code survives; higher is denser. Default M.",
      -              "enum": [
      -                "L",
      -                "M",
      -                "Q",
      -                "H"
      -              ],
      -              "type": "string"
      -            },
      -            "format": {
      -              "description": "What to return. Default svg.",
      -              "enum": [
      -                "svg",
      -                "png",
      -                "both"
      -              ],
      -              "type": "string"
      -            },
      -            "label": {
      -              "description": "The SVG's accessible name. Default 'QR code'.",
      -              "type": "string"
      -            },
      -            "sizePx": {
      -              "description": "Width and height in pixels. Default 512.",
      -              "maximum": 2048,
      -              "minimum": 64,
      -              "type": "integer"
      -            },
      -            "value": {
      -              "description": "The link or text the code holds.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "value"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  }
      -]New value: +[
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "rds_query"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "continueAfterTimeout": {
      +              "description": "Data API flag, forwarded verbatim.",
      +              "type": "boolean"
      +            },
      +            "db": {
      +              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      +              "enum": [
      +                "main",
      +                "aegis",
      +                "analytics",
      +                "pay",
      +                "companies",
      +                "events",
      +                "dating",
      +                "intel",
      +                "studio",
      +                "ledger",
      +                "deals",
      +                "ads",
      +                "chat",
      +                "market",
      +                "referrals",
      +                "notes",
      +                "learn",
      +                "storage",
      +                "give",
      +                "launch",
      +                "communities",
      +                "schedule",
      +                "gift",
      +                "seats",
      +                "boardroom",
      +                "email",
      +                "book",
      +                "sales",
      +                "newsletter",
      +                "legal",
      +                "rivals",
      +                "message",
      +                "apps",
      +                "verify",
      +                "import",
      +                "sign",
      +                "games",
      +                "myconnect",
      +                "notifications",
      +                "realtor",
      +                "credits",
      +                "licensing",
      +                "crowdfund",
      +                "ship",
      +                "catalog",
      +                "attention",
      +                "network",
      +                "dictation",
      +                "pass",
      +                "ab",
      +                "pages",
      +                "mydomains",
      +                "enterprise",
      +                "life",
      +                "wallpaper",
      +                "calls",
      +                "share",
      +                "google",
      +                "deletion",
      +                "outreach",
      +                "video",
      +                "translate",
      +                "cranium",
      +                "connections",
      +                "identity",
      +                "accounts",
      +                "argus",
      +                "plutus",
      +                "payments",
      +                "intelligence",
      +                "heimdall",
      +                "hephaestus",
      +                "brand-deals",
      +                "hermes",
      +                "history",
      +                "locker"
      +              ],
      +              "type": "string"
      +            },
      +            "formatRecordsAs": {
      +              "description": "RDS Data API records format; defaults to JSON.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      +              "type": "string"
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied server-side before the rows are returned.",
      +              "type": "string"
      +            },
      +            "parameters": {
      +              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      +              "type": "array"
      +            },
      +            "resultSetOptions": {
      +              "description": "Data API resultSetOptions, forwarded verbatim.",
      +              "type": "object"
      +            },
      +            "schema": {
      +              "description": "Data API schema qualifier, forwarded verbatim.",
      +              "type": "string"
      +            },
      +            "sql": {
      +              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      +              "type": "string"
      +            },
      +            "transaction": {
      +              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      +              "enum": [
      +                "begin",
      +                "commit",
      +                "rollback"
      +              ],
      +              "type": "string"
      +            },
      +            "transactionId": {
      +              "description": "Run inside an existing Data API transaction.",
      +              "type": "string"
      +            },
      +            "write": {
      +              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      +              "type": "boolean"
      +            }
      +          },
      +          "required": [
      +            "db"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "aws_sweep"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "tool_name"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "endpoint_id"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "endpoint_id": {
      +              "description": "A catalog endpoint id, used instead of tool_name.",
      +              "type": "string"
      +            },
      +            "includeEnv": {
      +              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      +              "type": "boolean"
      +            },
      +            "instances": {
      +              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": [
      +                "array",
      +                "string"
      +              ]
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied to each instance's result.",
      +              "type": "string"
      +            },
      +            "paginateAll": {
      +              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      +              "type": "boolean"
      +            },
      +            "params": {
      +              "description": "The swept op's OWN params, passed through to each per-instance call.",
      +              "type": "object"
      +            },
      +            "tool_name": {
      +              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "probe"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "targets"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "url"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "bodyContains": {
      +              "description": "Single-target shorthand: substring the body must contain.",
      +              "type": "string"
      +            },
      +            "expectStatus": {
      +              "description": "Single-target shorthand: the exact status to expect.",
      +              "type": "integer"
      +            },
      +            "headers": {
      +              "description": "Single-target shorthand: request headers.",
      +              "type": "object"
      +            },
      +            "method": {
      +              "description": "Single-target shorthand: HTTP method. Default GET.",
      +              "type": "string"
      +            },
      +            "targets": {
      +              "description": "Up to 10 targets per call.",
      +              "items": {
      +                "properties": {
      +                  "bodyContains": {
      +                    "description": "Substring the response body must contain to pass.",
      +                    "type": "string"
      +                  },
      +                  "expectStatus": {
      +                    "description": "Pass only on this exact status; default any 2xx.",
      +                    "type": "integer"
      +                  },
      +                  "headers": {
      +                    "description": "Request headers. Sent, never echoed back in the reply.",
      +                    "type": "object"
      +                  },
      +                  "method": {
      +                    "description": "HTTP method, uppercased by the handler. Default GET.",
      +                    "type": "string"
      +                  },
      +                  "url": {
      +                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "url"
      +                ],
      +                "type": "object"
      +              },
      +              "maxItems": 10,
      +              "type": "array"
      +            },
      +            "url": {
      +              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "logs_tail"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "functionName"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "fn"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "logGroup"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "filter": {
      +              "description": "CloudWatch filter pattern.",
      +              "type": "string"
      +            },
      +            "filterPattern": {
      +              "description": "Alias of filter.",
      +              "type": "string"
      +            },
      +            "fn": {
      +              "description": "Alias of functionName.",
      +              "type": "string"
      +            },
      +            "functionName": {
      +              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      +              "type": "string"
      +            },
      +            "limit": {
      +              "description": "Max events. Default 100, clamped to 1-1000.",
      +              "type": "integer"
      +            },
      +            "logGroup": {
      +              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      +              "type": "string"
      +            },
      +            "minutes": {
      +              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      +              "type": "integer"
      +            },
      +            "region": {
      +              "description": "Region of the log group. Default us-east-1.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "qr_code"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "errorCorrection": {
      +              "description": "How much damage the code survives; higher is denser. Default M.",
      +              "enum": [
      +                "L",
      +                "M",
      +                "Q",
      +                "H"
      +              ],
      +              "type": "string"
      +            },
      +            "format": {
      +              "description": "What to return. Default svg.",
      +              "enum": [
      +                "svg",
      +                "png",
      +                "both"
      +              ],
      +              "type": "string"
      +            },
      +            "label": {
      +              "description": "The SVG's accessible name. Default 'QR code'.",
      +              "type": "string"
      +            },
      +            "sizePx": {
      +              "description": "Width and height in pixels. Default 512.",
      +              "maximum": 2048,
      +              "minimum": 64,
      +              "type": "integer"
      +            },
      +            "value": {
      +              "description": "The link or text the code holds.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "value"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  }
      +]
  8. Changed2 schema fields changed
    • addedInput schema / properties / workflow / anyOf
      Added value: +[
      +  {
      +    "type": "object"
      +  },
      +  {
      +    "type": "string"
      +  }
      +]
    • removedInput schema / properties / workflow / type
      Removed value: -"string"
  9. Changed1 schema field changed
    • changedInput schema / allOf
      Previous value: -[
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "rds_query"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "continueAfterTimeout": {
      -              "description": "Data API flag, forwarded verbatim.",
      -              "type": "boolean"
      -            },
      -            "db": {
      -              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      -              "enum": [
      -                "main",
      -                "aegis",
      -                "analytics",
      -                "pay",
      -                "companies",
      -                "events",
      -                "dating",
      -                "intel",
      -                "studio",
      -                "ledger",
      -                "deals",
      -                "ads",
      -                "chat",
      -                "market",
      -                "referrals",
      -                "notes",
      -                "learn",
      -                "storage",
      -                "give",
      -                "launch",
      -                "communities",
      -                "schedule",
      -                "gift",
      -                "seats",
      -                "boardroom",
      -                "email",
      -                "book",
      -                "sales",
      -                "newsletter",
      -                "legal",
      -                "rivals",
      -                "message",
      -                "apps",
      -                "verify",
      -                "import",
      -                "sign",
      -                "games",
      -                "myconnect",
      -                "notifications",
      -                "realtor",
      -                "credits",
      -                "licensing",
      -                "crowdfund",
      -                "ship",
      -                "catalog",
      -                "attention",
      -                "network",
      -                "dictation",
      -                "pass",
      -                "ab",
      -                "pages",
      -                "mydomains",
      -                "enterprise",
      -                "life",
      -                "wallpaper",
      -                "calls",
      -                "share",
      -                "google",
      -                "deletion",
      -                "outreach",
      -                "cranium",
      -                "connections",
      -                "identity",
      -                "accounts",
      -                "argus",
      -                "plutus",
      -                "payments",
      -                "intelligence",
      -                "heimdall",
      -                "hephaestus",
      -                "brand-deals",
      -                "hermes",
      -                "history",
      -                "locker"
      -              ],
      -              "type": "string"
      -            },
      -            "formatRecordsAs": {
      -              "description": "RDS Data API records format; defaults to JSON.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      -              "type": "string"
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied server-side before the rows are returned.",
      -              "type": "string"
      -            },
      -            "parameters": {
      -              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      -              "type": "array"
      -            },
      -            "resultSetOptions": {
      -              "description": "Data API resultSetOptions, forwarded verbatim.",
      -              "type": "object"
      -            },
      -            "schema": {
      -              "description": "Data API schema qualifier, forwarded verbatim.",
      -              "type": "string"
      -            },
      -            "sql": {
      -              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      -              "type": "string"
      -            },
      -            "transaction": {
      -              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      -              "enum": [
      -                "begin",
      -                "commit",
      -                "rollback"
      -              ],
      -              "type": "string"
      -            },
      -            "transactionId": {
      -              "description": "Run inside an existing Data API transaction.",
      -              "type": "string"
      -            },
      -            "write": {
      -              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      -              "type": "boolean"
      -            }
      -          },
      -          "required": [
      -            "db"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "aws_sweep"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "tool_name"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "endpoint_id"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "endpoint_id": {
      -              "description": "A catalog endpoint id, used instead of tool_name.",
      -              "type": "string"
      -            },
      -            "includeEnv": {
      -              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      -              "type": "boolean"
      -            },
      -            "instances": {
      -              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": [
      -                "array",
      -                "string"
      -              ]
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied to each instance's result.",
      -              "type": "string"
      -            },
      -            "paginateAll": {
      -              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      -              "type": "boolean"
      -            },
      -            "params": {
      -              "description": "The swept op's OWN params, passed through to each per-instance call.",
      -              "type": "object"
      -            },
      -            "tool_name": {
      -              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "probe"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "targets"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "url"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "bodyContains": {
      -              "description": "Single-target shorthand: substring the body must contain.",
      -              "type": "string"
      -            },
      -            "expectStatus": {
      -              "description": "Single-target shorthand: the exact status to expect.",
      -              "type": "integer"
      -            },
      -            "headers": {
      -              "description": "Single-target shorthand: request headers.",
      -              "type": "object"
      -            },
      -            "method": {
      -              "description": "Single-target shorthand: HTTP method. Default GET.",
      -              "type": "string"
      -            },
      -            "targets": {
      -              "description": "Up to 10 targets per call.",
      -              "items": {
      -                "properties": {
      -                  "bodyContains": {
      -                    "description": "Substring the response body must contain to pass.",
      -                    "type": "string"
      -                  },
      -                  "expectStatus": {
      -                    "description": "Pass only on this exact status; default any 2xx.",
      -                    "type": "integer"
      -                  },
      -                  "headers": {
      -                    "description": "Request headers. Sent, never echoed back in the reply.",
      -                    "type": "object"
      -                  },
      -                  "method": {
      -                    "description": "HTTP method, uppercased by the handler. Default GET.",
      -                    "type": "string"
      -                  },
      -                  "url": {
      -                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "url"
      -                ],
      -                "type": "object"
      -              },
      -              "maxItems": 10,
      -              "type": "array"
      -            },
      -            "url": {
      -              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "logs_tail"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "functionName"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "fn"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "logGroup"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "filter": {
      -              "description": "CloudWatch filter pattern.",
      -              "type": "string"
      -            },
      -            "filterPattern": {
      -              "description": "Alias of filter.",
      -              "type": "string"
      -            },
      -            "fn": {
      -              "description": "Alias of functionName.",
      -              "type": "string"
      -            },
      -            "functionName": {
      -              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      -              "type": "string"
      -            },
      -            "limit": {
      -              "description": "Max events. Default 100, clamped to 1-1000.",
      -              "type": "integer"
      -            },
      -            "logGroup": {
      -              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      -              "type": "string"
      -            },
      -            "minutes": {
      -              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      -              "type": "integer"
      -            },
      -            "region": {
      -              "description": "Region of the log group. Default us-east-1.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "qr_code"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "errorCorrection": {
      -              "description": "How much damage the code survives; higher is denser. Default M.",
      -              "enum": [
      -                "L",
      -                "M",
      -                "Q",
      -                "H"
      -              ],
      -              "type": "string"
      -            },
      -            "format": {
      -              "description": "What to return. Default svg.",
      -              "enum": [
      -                "svg",
      -                "png",
      -                "both"
      -              ],
      -              "type": "string"
      -            },
      -            "label": {
      -              "description": "The SVG's accessible name. Default 'QR code'.",
      -              "type": "string"
      -            },
      -            "sizePx": {
      -              "description": "Width and height in pixels. Default 512.",
      -              "maximum": 2048,
      -              "minimum": 64,
      -              "type": "integer"
      -            },
      -            "value": {
      -              "description": "The link or text the code holds.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "value"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  }
      -]New value: +[
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "rds_query"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "continueAfterTimeout": {
      +              "description": "Data API flag, forwarded verbatim.",
      +              "type": "boolean"
      +            },
      +            "db": {
      +              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      +              "enum": [
      +                "main",
      +                "aegis",
      +                "analytics",
      +                "pay",
      +                "companies",
      +                "events",
      +                "dating",
      +                "intel",
      +                "studio",
      +                "ledger",
      +                "deals",
      +                "ads",
      +                "chat",
      +                "market",
      +                "referrals",
      +                "notes",
      +                "learn",
      +                "storage",
      +                "give",
      +                "launch",
      +                "communities",
      +                "schedule",
      +                "gift",
      +                "seats",
      +                "boardroom",
      +                "email",
      +                "book",
      +                "sales",
      +                "newsletter",
      +                "legal",
      +                "rivals",
      +                "message",
      +                "apps",
      +                "verify",
      +                "import",
      +                "sign",
      +                "games",
      +                "myconnect",
      +                "notifications",
      +                "realtor",
      +                "credits",
      +                "licensing",
      +                "crowdfund",
      +                "ship",
      +                "catalog",
      +                "attention",
      +                "network",
      +                "dictation",
      +                "pass",
      +                "ab",
      +                "pages",
      +                "mydomains",
      +                "enterprise",
      +                "life",
      +                "wallpaper",
      +                "calls",
      +                "share",
      +                "google",
      +                "deletion",
      +                "outreach",
      +                "video",
      +                "cranium",
      +                "connections",
      +                "identity",
      +                "accounts",
      +                "argus",
      +                "plutus",
      +                "payments",
      +                "intelligence",
      +                "heimdall",
      +                "hephaestus",
      +                "brand-deals",
      +                "hermes",
      +                "history",
      +                "locker"
      +              ],
      +              "type": "string"
      +            },
      +            "formatRecordsAs": {
      +              "description": "RDS Data API records format; defaults to JSON.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      +              "type": "string"
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied server-side before the rows are returned.",
      +              "type": "string"
      +            },
      +            "parameters": {
      +              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      +              "type": "array"
      +            },
      +            "resultSetOptions": {
      +              "description": "Data API resultSetOptions, forwarded verbatim.",
      +              "type": "object"
      +            },
      +            "schema": {
      +              "description": "Data API schema qualifier, forwarded verbatim.",
      +              "type": "string"
      +            },
      +            "sql": {
      +              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      +              "type": "string"
      +            },
      +            "transaction": {
      +              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      +              "enum": [
      +                "begin",
      +                "commit",
      +                "rollback"
      +              ],
      +              "type": "string"
      +            },
      +            "transactionId": {
      +              "description": "Run inside an existing Data API transaction.",
      +              "type": "string"
      +            },
      +            "write": {
      +              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      +              "type": "boolean"
      +            }
      +          },
      +          "required": [
      +            "db"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "aws_sweep"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "tool_name"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "endpoint_id"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "endpoint_id": {
      +              "description": "A catalog endpoint id, used instead of tool_name.",
      +              "type": "string"
      +            },
      +            "includeEnv": {
      +              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      +              "type": "boolean"
      +            },
      +            "instances": {
      +              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": [
      +                "array",
      +                "string"
      +              ]
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied to each instance's result.",
      +              "type": "string"
      +            },
      +            "paginateAll": {
      +              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      +              "type": "boolean"
      +            },
      +            "params": {
      +              "description": "The swept op's OWN params, passed through to each per-instance call.",
      +              "type": "object"
      +            },
      +            "tool_name": {
      +              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "probe"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "targets"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "url"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "bodyContains": {
      +              "description": "Single-target shorthand: substring the body must contain.",
      +              "type": "string"
      +            },
      +            "expectStatus": {
      +              "description": "Single-target shorthand: the exact status to expect.",
      +              "type": "integer"
      +            },
      +            "headers": {
      +              "description": "Single-target shorthand: request headers.",
      +              "type": "object"
      +            },
      +            "method": {
      +              "description": "Single-target shorthand: HTTP method. Default GET.",
      +              "type": "string"
      +            },
      +            "targets": {
      +              "description": "Up to 10 targets per call.",
      +              "items": {
      +                "properties": {
      +                  "bodyContains": {
      +                    "description": "Substring the response body must contain to pass.",
      +                    "type": "string"
      +                  },
      +                  "expectStatus": {
      +                    "description": "Pass only on this exact status; default any 2xx.",
      +                    "type": "integer"
      +                  },
      +                  "headers": {
      +                    "description": "Request headers. Sent, never echoed back in the reply.",
      +                    "type": "object"
      +                  },
      +                  "method": {
      +                    "description": "HTTP method, uppercased by the handler. Default GET.",
      +                    "type": "string"
      +                  },
      +                  "url": {
      +                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "url"
      +                ],
      +                "type": "object"
      +              },
      +              "maxItems": 10,
      +              "type": "array"
      +            },
      +            "url": {
      +              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "logs_tail"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "functionName"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "fn"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "logGroup"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "filter": {
      +              "description": "CloudWatch filter pattern.",
      +              "type": "string"
      +            },
      +            "filterPattern": {
      +              "description": "Alias of filter.",
      +              "type": "string"
      +            },
      +            "fn": {
      +              "description": "Alias of functionName.",
      +              "type": "string"
      +            },
      +            "functionName": {
      +              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      +              "type": "string"
      +            },
      +            "limit": {
      +              "description": "Max events. Default 100, clamped to 1-1000.",
      +              "type": "integer"
      +            },
      +            "logGroup": {
      +              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      +              "type": "string"
      +            },
      +            "minutes": {
      +              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      +              "type": "integer"
      +            },
      +            "region": {
      +              "description": "Region of the log group. Default us-east-1.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "qr_code"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "errorCorrection": {
      +              "description": "How much damage the code survives; higher is denser. Default M.",
      +              "enum": [
      +                "L",
      +                "M",
      +                "Q",
      +                "H"
      +              ],
      +              "type": "string"
      +            },
      +            "format": {
      +              "description": "What to return. Default svg.",
      +              "enum": [
      +                "svg",
      +                "png",
      +                "both"
      +              ],
      +              "type": "string"
      +            },
      +            "label": {
      +              "description": "The SVG's accessible name. Default 'QR code'.",
      +              "type": "string"
      +            },
      +            "sizePx": {
      +              "description": "Width and height in pixels. Default 512.",
      +              "maximum": 2048,
      +              "minimum": 64,
      +              "type": "integer"
      +            },
      +            "value": {
      +              "description": "The link or text the code holds.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "value"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  }
      +]
  10. Changed1 schema field changed
    • changedInput schema / allOf
      Previous value: -[
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "rds_query"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "continueAfterTimeout": {
      -              "description": "Data API flag, forwarded verbatim.",
      -              "type": "boolean"
      -            },
      -            "db": {
      -              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      -              "enum": [
      -                "main",
      -                "aegis",
      -                "analytics",
      -                "pay",
      -                "companies",
      -                "events",
      -                "dating",
      -                "intel",
      -                "studio",
      -                "ledger",
      -                "deals",
      -                "ads",
      -                "chat",
      -                "market",
      -                "referrals",
      -                "notes",
      -                "learn",
      -                "storage",
      -                "give",
      -                "launch",
      -                "communities",
      -                "schedule",
      -                "gift",
      -                "seats",
      -                "boardroom",
      -                "email",
      -                "book",
      -                "sales",
      -                "newsletter",
      -                "legal",
      -                "rivals",
      -                "message",
      -                "apps",
      -                "verify",
      -                "import",
      -                "sign",
      -                "games",
      -                "myconnect",
      -                "notifications",
      -                "realtor",
      -                "credits",
      -                "licensing",
      -                "crowdfund",
      -                "ship",
      -                "catalog",
      -                "attention",
      -                "network",
      -                "dictation",
      -                "pass",
      -                "ab",
      -                "pages",
      -                "mydomains",
      -                "enterprise",
      -                "life",
      -                "wallpaper",
      -                "calls",
      -                "share",
      -                "cranium",
      -                "connections",
      -                "identity",
      -                "accounts",
      -                "argus",
      -                "plutus",
      -                "payments",
      -                "intelligence",
      -                "heimdall",
      -                "hephaestus",
      -                "brand-deals",
      -                "hermes",
      -                "history",
      -                "locker"
      -              ],
      -              "type": "string"
      -            },
      -            "formatRecordsAs": {
      -              "description": "RDS Data API records format; defaults to JSON.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      -              "type": "string"
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied server-side before the rows are returned.",
      -              "type": "string"
      -            },
      -            "parameters": {
      -              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      -              "type": "array"
      -            },
      -            "resultSetOptions": {
      -              "description": "Data API resultSetOptions, forwarded verbatim.",
      -              "type": "object"
      -            },
      -            "schema": {
      -              "description": "Data API schema qualifier, forwarded verbatim.",
      -              "type": "string"
      -            },
      -            "sql": {
      -              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      -              "type": "string"
      -            },
      -            "transaction": {
      -              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      -              "enum": [
      -                "begin",
      -                "commit",
      -                "rollback"
      -              ],
      -              "type": "string"
      -            },
      -            "transactionId": {
      -              "description": "Run inside an existing Data API transaction.",
      -              "type": "string"
      -            },
      -            "write": {
      -              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      -              "type": "boolean"
      -            }
      -          },
      -          "required": [
      -            "db"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "aws_sweep"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "tool_name"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "endpoint_id"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "endpoint_id": {
      -              "description": "A catalog endpoint id, used instead of tool_name.",
      -              "type": "string"
      -            },
      -            "includeEnv": {
      -              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      -              "type": "boolean"
      -            },
      -            "instances": {
      -              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": [
      -                "array",
      -                "string"
      -              ]
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied to each instance's result.",
      -              "type": "string"
      -            },
      -            "paginateAll": {
      -              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      -              "type": "boolean"
      -            },
      -            "params": {
      -              "description": "The swept op's OWN params, passed through to each per-instance call.",
      -              "type": "object"
      -            },
      -            "tool_name": {
      -              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "probe"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "targets"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "url"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "bodyContains": {
      -              "description": "Single-target shorthand: substring the body must contain.",
      -              "type": "string"
      -            },
      -            "expectStatus": {
      -              "description": "Single-target shorthand: the exact status to expect.",
      -              "type": "integer"
      -            },
      -            "headers": {
      -              "description": "Single-target shorthand: request headers.",
      -              "type": "object"
      -            },
      -            "method": {
      -              "description": "Single-target shorthand: HTTP method. Default GET.",
      -              "type": "string"
      -            },
      -            "targets": {
      -              "description": "Up to 10 targets per call.",
      -              "items": {
      -                "properties": {
      -                  "bodyContains": {
      -                    "description": "Substring the response body must contain to pass.",
      -                    "type": "string"
      -                  },
      -                  "expectStatus": {
      -                    "description": "Pass only on this exact status; default any 2xx.",
      -                    "type": "integer"
      -                  },
      -                  "headers": {
      -                    "description": "Request headers. Sent, never echoed back in the reply.",
      -                    "type": "object"
      -                  },
      -                  "method": {
      -                    "description": "HTTP method, uppercased by the handler. Default GET.",
      -                    "type": "string"
      -                  },
      -                  "url": {
      -                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "url"
      -                ],
      -                "type": "object"
      -              },
      -              "maxItems": 10,
      -              "type": "array"
      -            },
      -            "url": {
      -              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "logs_tail"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "functionName"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "fn"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "logGroup"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "filter": {
      -              "description": "CloudWatch filter pattern.",
      -              "type": "string"
      -            },
      -            "filterPattern": {
      -              "description": "Alias of filter.",
      -              "type": "string"
      -            },
      -            "fn": {
      -              "description": "Alias of functionName.",
      -              "type": "string"
      -            },
      -            "functionName": {
      -              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      -              "type": "string"
      -            },
      -            "limit": {
      -              "description": "Max events. Default 100, clamped to 1-1000.",
      -              "type": "integer"
      -            },
      -            "logGroup": {
      -              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      -              "type": "string"
      -            },
      -            "minutes": {
      -              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      -              "type": "integer"
      -            },
      -            "region": {
      -              "description": "Region of the log group. Default us-east-1.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "qr_code"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "errorCorrection": {
      -              "description": "How much damage the code survives; higher is denser. Default M.",
      -              "enum": [
      -                "L",
      -                "M",
      -                "Q",
      -                "H"
      -              ],
      -              "type": "string"
      -            },
      -            "format": {
      -              "description": "What to return. Default svg.",
      -              "enum": [
      -                "svg",
      -                "png",
      -                "both"
      -              ],
      -              "type": "string"
      -            },
      -            "label": {
      -              "description": "The SVG's accessible name. Default 'QR code'.",
      -              "type": "string"
      -            },
      -            "sizePx": {
      -              "description": "Width and height in pixels. Default 512.",
      -              "maximum": 2048,
      -              "minimum": 64,
      -              "type": "integer"
      -            },
      -            "value": {
      -              "description": "The link or text the code holds.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "value"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  }
      -]New value: +[
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "rds_query"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "continueAfterTimeout": {
      +              "description": "Data API flag, forwarded verbatim.",
      +              "type": "boolean"
      +            },
      +            "db": {
      +              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      +              "enum": [
      +                "main",
      +                "aegis",
      +                "analytics",
      +                "pay",
      +                "companies",
      +                "events",
      +                "dating",
      +                "intel",
      +                "studio",
      +                "ledger",
      +                "deals",
      +                "ads",
      +                "chat",
      +                "market",
      +                "referrals",
      +                "notes",
      +                "learn",
      +                "storage",
      +                "give",
      +                "launch",
      +                "communities",
      +                "schedule",
      +                "gift",
      +                "seats",
      +                "boardroom",
      +                "email",
      +                "book",
      +                "sales",
      +                "newsletter",
      +                "legal",
      +                "rivals",
      +                "message",
      +                "apps",
      +                "verify",
      +                "import",
      +                "sign",
      +                "games",
      +                "myconnect",
      +                "notifications",
      +                "realtor",
      +                "credits",
      +                "licensing",
      +                "crowdfund",
      +                "ship",
      +                "catalog",
      +                "attention",
      +                "network",
      +                "dictation",
      +                "pass",
      +                "ab",
      +                "pages",
      +                "mydomains",
      +                "enterprise",
      +                "life",
      +                "wallpaper",
      +                "calls",
      +                "share",
      +                "google",
      +                "deletion",
      +                "outreach",
      +                "cranium",
      +                "connections",
      +                "identity",
      +                "accounts",
      +                "argus",
      +                "plutus",
      +                "payments",
      +                "intelligence",
      +                "heimdall",
      +                "hephaestus",
      +                "brand-deals",
      +                "hermes",
      +                "history",
      +                "locker"
      +              ],
      +              "type": "string"
      +            },
      +            "formatRecordsAs": {
      +              "description": "RDS Data API records format; defaults to JSON.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      +              "type": "string"
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied server-side before the rows are returned.",
      +              "type": "string"
      +            },
      +            "parameters": {
      +              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      +              "type": "array"
      +            },
      +            "resultSetOptions": {
      +              "description": "Data API resultSetOptions, forwarded verbatim.",
      +              "type": "object"
      +            },
      +            "schema": {
      +              "description": "Data API schema qualifier, forwarded verbatim.",
      +              "type": "string"
      +            },
      +            "sql": {
      +              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      +              "type": "string"
      +            },
      +            "transaction": {
      +              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      +              "enum": [
      +                "begin",
      +                "commit",
      +                "rollback"
      +              ],
      +              "type": "string"
      +            },
      +            "transactionId": {
      +              "description": "Run inside an existing Data API transaction.",
      +              "type": "string"
      +            },
      +            "write": {
      +              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      +              "type": "boolean"
      +            }
      +          },
      +          "required": [
      +            "db"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "aws_sweep"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "tool_name"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "endpoint_id"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "endpoint_id": {
      +              "description": "A catalog endpoint id, used instead of tool_name.",
      +              "type": "string"
      +            },
      +            "includeEnv": {
      +              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      +              "type": "boolean"
      +            },
      +            "instances": {
      +              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": [
      +                "array",
      +                "string"
      +              ]
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied to each instance's result.",
      +              "type": "string"
      +            },
      +            "paginateAll": {
      +              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      +              "type": "boolean"
      +            },
      +            "params": {
      +              "description": "The swept op's OWN params, passed through to each per-instance call.",
      +              "type": "object"
      +            },
      +            "tool_name": {
      +              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "probe"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "targets"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "url"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "bodyContains": {
      +              "description": "Single-target shorthand: substring the body must contain.",
      +              "type": "string"
      +            },
      +            "expectStatus": {
      +              "description": "Single-target shorthand: the exact status to expect.",
      +              "type": "integer"
      +            },
      +            "headers": {
      +              "description": "Single-target shorthand: request headers.",
      +              "type": "object"
      +            },
      +            "method": {
      +              "description": "Single-target shorthand: HTTP method. Default GET.",
      +              "type": "string"
      +            },
      +            "targets": {
      +              "description": "Up to 10 targets per call.",
      +              "items": {
      +                "properties": {
      +                  "bodyContains": {
      +                    "description": "Substring the response body must contain to pass.",
      +                    "type": "string"
      +                  },
      +                  "expectStatus": {
      +                    "description": "Pass only on this exact status; default any 2xx.",
      +                    "type": "integer"
      +                  },
      +                  "headers": {
      +                    "description": "Request headers. Sent, never echoed back in the reply.",
      +                    "type": "object"
      +                  },
      +                  "method": {
      +                    "description": "HTTP method, uppercased by the handler. Default GET.",
      +                    "type": "string"
      +                  },
      +                  "url": {
      +                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "url"
      +                ],
      +                "type": "object"
      +              },
      +              "maxItems": 10,
      +              "type": "array"
      +            },
      +            "url": {
      +              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "logs_tail"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "functionName"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "fn"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "logGroup"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "filter": {
      +              "description": "CloudWatch filter pattern.",
      +              "type": "string"
      +            },
      +            "filterPattern": {
      +              "description": "Alias of filter.",
      +              "type": "string"
      +            },
      +            "fn": {
      +              "description": "Alias of functionName.",
      +              "type": "string"
      +            },
      +            "functionName": {
      +              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      +              "type": "string"
      +            },
      +            "limit": {
      +              "description": "Max events. Default 100, clamped to 1-1000.",
      +              "type": "integer"
      +            },
      +            "logGroup": {
      +              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      +              "type": "string"
      +            },
      +            "minutes": {
      +              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      +              "type": "integer"
      +            },
      +            "region": {
      +              "description": "Region of the log group. Default us-east-1.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "qr_code"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "errorCorrection": {
      +              "description": "How much damage the code survives; higher is denser. Default M.",
      +              "enum": [
      +                "L",
      +                "M",
      +                "Q",
      +                "H"
      +              ],
      +              "type": "string"
      +            },
      +            "format": {
      +              "description": "What to return. Default svg.",
      +              "enum": [
      +                "svg",
      +                "png",
      +                "both"
      +              ],
      +              "type": "string"
      +            },
      +            "label": {
      +              "description": "The SVG's accessible name. Default 'QR code'.",
      +              "type": "string"
      +            },
      +            "sizePx": {
      +              "description": "Width and height in pixels. Default 512.",
      +              "maximum": 2048,
      +              "minimum": 64,
      +              "type": "integer"
      +            },
      +            "value": {
      +              "description": "The link or text the code holds.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "value"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  }
      +]
  11. Changed1 schema field changed
    • changedInput schema / allOf
      Previous value: -[
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "rds_query"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "continueAfterTimeout": {
      -              "description": "Data API flag, forwarded verbatim.",
      -              "type": "boolean"
      -            },
      -            "db": {
      -              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      -              "enum": [
      -                "main",
      -                "aegis",
      -                "analytics",
      -                "pay",
      -                "companies",
      -                "events",
      -                "dating",
      -                "intel",
      -                "studio",
      -                "ledger",
      -                "deals",
      -                "ads",
      -                "chat",
      -                "market",
      -                "referrals",
      -                "notes",
      -                "learn",
      -                "storage",
      -                "give",
      -                "launch",
      -                "communities",
      -                "schedule",
      -                "gift",
      -                "seats",
      -                "boardroom",
      -                "email",
      -                "book",
      -                "sales",
      -                "newsletter",
      -                "legal",
      -                "rivals",
      -                "message",
      -                "connectors",
      -                "verify",
      -                "import",
      -                "sign",
      -                "games",
      -                "myconnect",
      -                "notifications",
      -                "realtor",
      -                "credits",
      -                "licensing",
      -                "crowdfund",
      -                "ship",
      -                "catalog",
      -                "attention",
      -                "network",
      -                "dictation",
      -                "pass",
      -                "ab",
      -                "pages",
      -                "mydomains",
      -                "enterprise",
      -                "life",
      -                "wallpaper",
      -                "calls",
      -                "share",
      -                "cranium",
      -                "connections",
      -                "identity",
      -                "accounts",
      -                "argus",
      -                "plutus",
      -                "payments",
      -                "intelligence",
      -                "heimdall",
      -                "hephaestus",
      -                "brand-deals",
      -                "hermes",
      -                "locker"
      -              ],
      -              "type": "string"
      -            },
      -            "formatRecordsAs": {
      -              "description": "RDS Data API records format; defaults to JSON.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      -              "type": "string"
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied server-side before the rows are returned.",
      -              "type": "string"
      -            },
      -            "parameters": {
      -              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      -              "type": "array"
      -            },
      -            "resultSetOptions": {
      -              "description": "Data API resultSetOptions, forwarded verbatim.",
      -              "type": "object"
      -            },
      -            "schema": {
      -              "description": "Data API schema qualifier, forwarded verbatim.",
      -              "type": "string"
      -            },
      -            "sql": {
      -              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      -              "type": "string"
      -            },
      -            "transaction": {
      -              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      -              "enum": [
      -                "begin",
      -                "commit",
      -                "rollback"
      -              ],
      -              "type": "string"
      -            },
      -            "transactionId": {
      -              "description": "Run inside an existing Data API transaction.",
      -              "type": "string"
      -            },
      -            "write": {
      -              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      -              "type": "boolean"
      -            }
      -          },
      -          "required": [
      -            "db"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "aws_sweep"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "tool_name"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "endpoint_id"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "endpoint_id": {
      -              "description": "A catalog endpoint id, used instead of tool_name.",
      -              "type": "string"
      -            },
      -            "includeEnv": {
      -              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      -              "type": "boolean"
      -            },
      -            "instances": {
      -              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": [
      -                "array",
      -                "string"
      -              ]
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied to each instance's result.",
      -              "type": "string"
      -            },
      -            "paginateAll": {
      -              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      -              "type": "boolean"
      -            },
      -            "params": {
      -              "description": "The swept op's OWN params, passed through to each per-instance call.",
      -              "type": "object"
      -            },
      -            "tool_name": {
      -              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "probe"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "targets"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "url"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "bodyContains": {
      -              "description": "Single-target shorthand: substring the body must contain.",
      -              "type": "string"
      -            },
      -            "expectStatus": {
      -              "description": "Single-target shorthand: the exact status to expect.",
      -              "type": "integer"
      -            },
      -            "headers": {
      -              "description": "Single-target shorthand: request headers.",
      -              "type": "object"
      -            },
      -            "method": {
      -              "description": "Single-target shorthand: HTTP method. Default GET.",
      -              "type": "string"
      -            },
      -            "targets": {
      -              "description": "Up to 10 targets per call.",
      -              "items": {
      -                "properties": {
      -                  "bodyContains": {
      -                    "description": "Substring the response body must contain to pass.",
      -                    "type": "string"
      -                  },
      -                  "expectStatus": {
      -                    "description": "Pass only on this exact status; default any 2xx.",
      -                    "type": "integer"
      -                  },
      -                  "headers": {
      -                    "description": "Request headers. Sent, never echoed back in the reply.",
      -                    "type": "object"
      -                  },
      -                  "method": {
      -                    "description": "HTTP method, uppercased by the handler. Default GET.",
      -                    "type": "string"
      -                  },
      -                  "url": {
      -                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "url"
      -                ],
      -                "type": "object"
      -              },
      -              "maxItems": 10,
      -              "type": "array"
      -            },
      -            "url": {
      -              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "logs_tail"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "functionName"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "fn"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "logGroup"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "filter": {
      -              "description": "CloudWatch filter pattern.",
      -              "type": "string"
      -            },
      -            "filterPattern": {
      -              "description": "Alias of filter.",
      -              "type": "string"
      -            },
      -            "fn": {
      -              "description": "Alias of functionName.",
      -              "type": "string"
      -            },
      -            "functionName": {
      -              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      -              "type": "string"
      -            },
      -            "limit": {
      -              "description": "Max events. Default 100, clamped to 1-1000.",
      -              "type": "integer"
      -            },
      -            "logGroup": {
      -              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      -              "type": "string"
      -            },
      -            "minutes": {
      -              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      -              "type": "integer"
      -            },
      -            "region": {
      -              "description": "Region of the log group. Default us-east-1.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "qr_code"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "errorCorrection": {
      -              "description": "How much damage the code survives; higher is denser. Default M.",
      -              "enum": [
      -                "L",
      -                "M",
      -                "Q",
      -                "H"
      -              ],
      -              "type": "string"
      -            },
      -            "format": {
      -              "description": "What to return. Default svg.",
      -              "enum": [
      -                "svg",
      -                "png",
      -                "both"
      -              ],
      -              "type": "string"
      -            },
      -            "label": {
      -              "description": "The SVG's accessible name. Default 'QR code'.",
      -              "type": "string"
      -            },
      -            "sizePx": {
      -              "description": "Width and height in pixels. Default 512.",
      -              "maximum": 2048,
      -              "minimum": 64,
      -              "type": "integer"
      -            },
      -            "value": {
      -              "description": "The link or text the code holds.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "value"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  }
      -]New value: +[
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "rds_query"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "continueAfterTimeout": {
      +              "description": "Data API flag, forwarded verbatim.",
      +              "type": "boolean"
      +            },
      +            "db": {
      +              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      +              "enum": [
      +                "main",
      +                "aegis",
      +                "analytics",
      +                "pay",
      +                "companies",
      +                "events",
      +                "dating",
      +                "intel",
      +                "studio",
      +                "ledger",
      +                "deals",
      +                "ads",
      +                "chat",
      +                "market",
      +                "referrals",
      +                "notes",
      +                "learn",
      +                "storage",
      +                "give",
      +                "launch",
      +                "communities",
      +                "schedule",
      +                "gift",
      +                "seats",
      +                "boardroom",
      +                "email",
      +                "book",
      +                "sales",
      +                "newsletter",
      +                "legal",
      +                "rivals",
      +                "message",
      +                "apps",
      +                "verify",
      +                "import",
      +                "sign",
      +                "games",
      +                "myconnect",
      +                "notifications",
      +                "realtor",
      +                "credits",
      +                "licensing",
      +                "crowdfund",
      +                "ship",
      +                "catalog",
      +                "attention",
      +                "network",
      +                "dictation",
      +                "pass",
      +                "ab",
      +                "pages",
      +                "mydomains",
      +                "enterprise",
      +                "life",
      +                "wallpaper",
      +                "calls",
      +                "share",
      +                "cranium",
      +                "connections",
      +                "identity",
      +                "accounts",
      +                "argus",
      +                "plutus",
      +                "payments",
      +                "intelligence",
      +                "heimdall",
      +                "hephaestus",
      +                "brand-deals",
      +                "hermes",
      +                "history",
      +                "locker"
      +              ],
      +              "type": "string"
      +            },
      +            "formatRecordsAs": {
      +              "description": "RDS Data API records format; defaults to JSON.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      +              "type": "string"
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied server-side before the rows are returned.",
      +              "type": "string"
      +            },
      +            "parameters": {
      +              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      +              "type": "array"
      +            },
      +            "resultSetOptions": {
      +              "description": "Data API resultSetOptions, forwarded verbatim.",
      +              "type": "object"
      +            },
      +            "schema": {
      +              "description": "Data API schema qualifier, forwarded verbatim.",
      +              "type": "string"
      +            },
      +            "sql": {
      +              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      +              "type": "string"
      +            },
      +            "transaction": {
      +              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      +              "enum": [
      +                "begin",
      +                "commit",
      +                "rollback"
      +              ],
      +              "type": "string"
      +            },
      +            "transactionId": {
      +              "description": "Run inside an existing Data API transaction.",
      +              "type": "string"
      +            },
      +            "write": {
      +              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      +              "type": "boolean"
      +            }
      +          },
      +          "required": [
      +            "db"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "aws_sweep"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "tool_name"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "endpoint_id"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "endpoint_id": {
      +              "description": "A catalog endpoint id, used instead of tool_name.",
      +              "type": "string"
      +            },
      +            "includeEnv": {
      +              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      +              "type": "boolean"
      +            },
      +            "instances": {
      +              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": [
      +                "array",
      +                "string"
      +              ]
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied to each instance's result.",
      +              "type": "string"
      +            },
      +            "paginateAll": {
      +              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      +              "type": "boolean"
      +            },
      +            "params": {
      +              "description": "The swept op's OWN params, passed through to each per-instance call.",
      +              "type": "object"
      +            },
      +            "tool_name": {
      +              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "probe"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "targets"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "url"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "bodyContains": {
      +              "description": "Single-target shorthand: substring the body must contain.",
      +              "type": "string"
      +            },
      +            "expectStatus": {
      +              "description": "Single-target shorthand: the exact status to expect.",
      +              "type": "integer"
      +            },
      +            "headers": {
      +              "description": "Single-target shorthand: request headers.",
      +              "type": "object"
      +            },
      +            "method": {
      +              "description": "Single-target shorthand: HTTP method. Default GET.",
      +              "type": "string"
      +            },
      +            "targets": {
      +              "description": "Up to 10 targets per call.",
      +              "items": {
      +                "properties": {
      +                  "bodyContains": {
      +                    "description": "Substring the response body must contain to pass.",
      +                    "type": "string"
      +                  },
      +                  "expectStatus": {
      +                    "description": "Pass only on this exact status; default any 2xx.",
      +                    "type": "integer"
      +                  },
      +                  "headers": {
      +                    "description": "Request headers. Sent, never echoed back in the reply.",
      +                    "type": "object"
      +                  },
      +                  "method": {
      +                    "description": "HTTP method, uppercased by the handler. Default GET.",
      +                    "type": "string"
      +                  },
      +                  "url": {
      +                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "url"
      +                ],
      +                "type": "object"
      +              },
      +              "maxItems": 10,
      +              "type": "array"
      +            },
      +            "url": {
      +              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "logs_tail"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "functionName"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "fn"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "logGroup"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "filter": {
      +              "description": "CloudWatch filter pattern.",
      +              "type": "string"
      +            },
      +            "filterPattern": {
      +              "description": "Alias of filter.",
      +              "type": "string"
      +            },
      +            "fn": {
      +              "description": "Alias of functionName.",
      +              "type": "string"
      +            },
      +            "functionName": {
      +              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      +              "type": "string"
      +            },
      +            "limit": {
      +              "description": "Max events. Default 100, clamped to 1-1000.",
      +              "type": "integer"
      +            },
      +            "logGroup": {
      +              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      +              "type": "string"
      +            },
      +            "minutes": {
      +              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      +              "type": "integer"
      +            },
      +            "region": {
      +              "description": "Region of the log group. Default us-east-1.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "qr_code"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "errorCorrection": {
      +              "description": "How much damage the code survives; higher is denser. Default M.",
      +              "enum": [
      +                "L",
      +                "M",
      +                "Q",
      +                "H"
      +              ],
      +              "type": "string"
      +            },
      +            "format": {
      +              "description": "What to return. Default svg.",
      +              "enum": [
      +                "svg",
      +                "png",
      +                "both"
      +              ],
      +              "type": "string"
      +            },
      +            "label": {
      +              "description": "The SVG's accessible name. Default 'QR code'.",
      +              "type": "string"
      +            },
      +            "sizePx": {
      +              "description": "Width and height in pixels. Default 512.",
      +              "maximum": 2048,
      +              "minimum": 64,
      +              "type": "integer"
      +            },
      +            "value": {
      +              "description": "The link or text the code holds.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "value"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  }
      +]
  12. Changed1 schema field changed
    • changedInput schema / allOf
      Previous value: -[
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "rds_query"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "continueAfterTimeout": {
      -              "description": "Data API flag, forwarded verbatim.",
      -              "type": "boolean"
      -            },
      -            "db": {
      -              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      -              "enum": [
      -                "main",
      -                "aegis",
      -                "analytics",
      -                "pay",
      -                "companies",
      -                "events",
      -                "dating",
      -                "intel",
      -                "studio",
      -                "ledger",
      -                "deals",
      -                "ads",
      -                "chat",
      -                "market",
      -                "referrals",
      -                "notes",
      -                "learn",
      -                "storage",
      -                "give",
      -                "launch",
      -                "communities",
      -                "schedule",
      -                "gift",
      -                "seats",
      -                "boardroom",
      -                "email",
      -                "book",
      -                "sales",
      -                "newsletter",
      -                "legal",
      -                "rivals",
      -                "message",
      -                "connectors",
      -                "verify",
      -                "import",
      -                "sign",
      -                "games",
      -                "myconnect",
      -                "notifications",
      -                "realtor",
      -                "credits",
      -                "licensing",
      -                "crowdfund",
      -                "ship",
      -                "catalog",
      -                "attention",
      -                "network",
      -                "dictation",
      -                "pass",
      -                "ab",
      -                "pages",
      -                "mydomains",
      -                "enterprise",
      -                "life",
      -                "wallpaper",
      -                "calls",
      -                "share",
      -                "google",
      -                "cranium",
      -                "connections",
      -                "identity",
      -                "accounts",
      -                "argus",
      -                "plutus",
      -                "payments",
      -                "intelligence",
      -                "heimdall",
      -                "hephaestus",
      -                "brand-deals",
      -                "hermes",
      -                "locker"
      -              ],
      -              "type": "string"
      -            },
      -            "formatRecordsAs": {
      -              "description": "RDS Data API records format; defaults to JSON.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      -              "type": "string"
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied server-side before the rows are returned.",
      -              "type": "string"
      -            },
      -            "parameters": {
      -              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      -              "type": "array"
      -            },
      -            "resultSetOptions": {
      -              "description": "Data API resultSetOptions, forwarded verbatim.",
      -              "type": "object"
      -            },
      -            "schema": {
      -              "description": "Data API schema qualifier, forwarded verbatim.",
      -              "type": "string"
      -            },
      -            "sql": {
      -              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      -              "type": "string"
      -            },
      -            "transaction": {
      -              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      -              "enum": [
      -                "begin",
      -                "commit",
      -                "rollback"
      -              ],
      -              "type": "string"
      -            },
      -            "transactionId": {
      -              "description": "Run inside an existing Data API transaction.",
      -              "type": "string"
      -            },
      -            "write": {
      -              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      -              "type": "boolean"
      -            }
      -          },
      -          "required": [
      -            "db"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "aws_sweep"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "tool_name"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "endpoint_id"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "endpoint_id": {
      -              "description": "A catalog endpoint id, used instead of tool_name.",
      -              "type": "string"
      -            },
      -            "includeEnv": {
      -              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      -              "type": "boolean"
      -            },
      -            "instances": {
      -              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": [
      -                "array",
      -                "string"
      -              ]
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied to each instance's result.",
      -              "type": "string"
      -            },
      -            "paginateAll": {
      -              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      -              "type": "boolean"
      -            },
      -            "params": {
      -              "description": "The swept op's OWN params, passed through to each per-instance call.",
      -              "type": "object"
      -            },
      -            "tool_name": {
      -              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "probe"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "targets"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "url"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "bodyContains": {
      -              "description": "Single-target shorthand: substring the body must contain.",
      -              "type": "string"
      -            },
      -            "expectStatus": {
      -              "description": "Single-target shorthand: the exact status to expect.",
      -              "type": "integer"
      -            },
      -            "headers": {
      -              "description": "Single-target shorthand: request headers.",
      -              "type": "object"
      -            },
      -            "method": {
      -              "description": "Single-target shorthand: HTTP method. Default GET.",
      -              "type": "string"
      -            },
      -            "targets": {
      -              "description": "Up to 10 targets per call.",
      -              "items": {
      -                "properties": {
      -                  "bodyContains": {
      -                    "description": "Substring the response body must contain to pass.",
      -                    "type": "string"
      -                  },
      -                  "expectStatus": {
      -                    "description": "Pass only on this exact status; default any 2xx.",
      -                    "type": "integer"
      -                  },
      -                  "headers": {
      -                    "description": "Request headers. Sent, never echoed back in the reply.",
      -                    "type": "object"
      -                  },
      -                  "method": {
      -                    "description": "HTTP method, uppercased by the handler. Default GET.",
      -                    "type": "string"
      -                  },
      -                  "url": {
      -                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "url"
      -                ],
      -                "type": "object"
      -              },
      -              "maxItems": 10,
      -              "type": "array"
      -            },
      -            "url": {
      -              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "logs_tail"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "functionName"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "fn"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "logGroup"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "filter": {
      -              "description": "CloudWatch filter pattern.",
      -              "type": "string"
      -            },
      -            "filterPattern": {
      -              "description": "Alias of filter.",
      -              "type": "string"
      -            },
      -            "fn": {
      -              "description": "Alias of functionName.",
      -              "type": "string"
      -            },
      -            "functionName": {
      -              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      -              "type": "string"
      -            },
      -            "limit": {
      -              "description": "Max events. Default 100, clamped to 1-1000.",
      -              "type": "integer"
      -            },
      -            "logGroup": {
      -              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      -              "type": "string"
      -            },
      -            "minutes": {
      -              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      -              "type": "integer"
      -            },
      -            "region": {
      -              "description": "Region of the log group. Default us-east-1.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "qr_code"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "errorCorrection": {
      -              "description": "How much damage the code survives; higher is denser. Default M.",
      -              "enum": [
      -                "L",
      -                "M",
      -                "Q",
      -                "H"
      -              ],
      -              "type": "string"
      -            },
      -            "format": {
      -              "description": "What to return. Default svg.",
      -              "enum": [
      -                "svg",
      -                "png",
      -                "both"
      -              ],
      -              "type": "string"
      -            },
      -            "label": {
      -              "description": "The SVG's accessible name. Default 'QR code'.",
      -              "type": "string"
      -            },
      -            "sizePx": {
      -              "description": "Width and height in pixels. Default 512.",
      -              "maximum": 2048,
      -              "minimum": 64,
      -              "type": "integer"
      -            },
      -            "value": {
      -              "description": "The link or text the code holds.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "value"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  }
      -]New value: +[
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "rds_query"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "continueAfterTimeout": {
      +              "description": "Data API flag, forwarded verbatim.",
      +              "type": "boolean"
      +            },
      +            "db": {
      +              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      +              "enum": [
      +                "main",
      +                "aegis",
      +                "analytics",
      +                "pay",
      +                "companies",
      +                "events",
      +                "dating",
      +                "intel",
      +                "studio",
      +                "ledger",
      +                "deals",
      +                "ads",
      +                "chat",
      +                "market",
      +                "referrals",
      +                "notes",
      +                "learn",
      +                "storage",
      +                "give",
      +                "launch",
      +                "communities",
      +                "schedule",
      +                "gift",
      +                "seats",
      +                "boardroom",
      +                "email",
      +                "book",
      +                "sales",
      +                "newsletter",
      +                "legal",
      +                "rivals",
      +                "message",
      +                "connectors",
      +                "verify",
      +                "import",
      +                "sign",
      +                "games",
      +                "myconnect",
      +                "notifications",
      +                "realtor",
      +                "credits",
      +                "licensing",
      +                "crowdfund",
      +                "ship",
      +                "catalog",
      +                "attention",
      +                "network",
      +                "dictation",
      +                "pass",
      +                "ab",
      +                "pages",
      +                "mydomains",
      +                "enterprise",
      +                "life",
      +                "wallpaper",
      +                "calls",
      +                "share",
      +                "cranium",
      +                "connections",
      +                "identity",
      +                "accounts",
      +                "argus",
      +                "plutus",
      +                "payments",
      +                "intelligence",
      +                "heimdall",
      +                "hephaestus",
      +                "brand-deals",
      +                "hermes",
      +                "locker"
      +              ],
      +              "type": "string"
      +            },
      +            "formatRecordsAs": {
      +              "description": "RDS Data API records format; defaults to JSON.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      +              "type": "string"
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied server-side before the rows are returned.",
      +              "type": "string"
      +            },
      +            "parameters": {
      +              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      +              "type": "array"
      +            },
      +            "resultSetOptions": {
      +              "description": "Data API resultSetOptions, forwarded verbatim.",
      +              "type": "object"
      +            },
      +            "schema": {
      +              "description": "Data API schema qualifier, forwarded verbatim.",
      +              "type": "string"
      +            },
      +            "sql": {
      +              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      +              "type": "string"
      +            },
      +            "transaction": {
      +              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      +              "enum": [
      +                "begin",
      +                "commit",
      +                "rollback"
      +              ],
      +              "type": "string"
      +            },
      +            "transactionId": {
      +              "description": "Run inside an existing Data API transaction.",
      +              "type": "string"
      +            },
      +            "write": {
      +              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      +              "type": "boolean"
      +            }
      +          },
      +          "required": [
      +            "db"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "aws_sweep"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "tool_name"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "endpoint_id"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "endpoint_id": {
      +              "description": "A catalog endpoint id, used instead of tool_name.",
      +              "type": "string"
      +            },
      +            "includeEnv": {
      +              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      +              "type": "boolean"
      +            },
      +            "instances": {
      +              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": [
      +                "array",
      +                "string"
      +              ]
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied to each instance's result.",
      +              "type": "string"
      +            },
      +            "paginateAll": {
      +              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      +              "type": "boolean"
      +            },
      +            "params": {
      +              "description": "The swept op's OWN params, passed through to each per-instance call.",
      +              "type": "object"
      +            },
      +            "tool_name": {
      +              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "probe"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "targets"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "url"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "bodyContains": {
      +              "description": "Single-target shorthand: substring the body must contain.",
      +              "type": "string"
      +            },
      +            "expectStatus": {
      +              "description": "Single-target shorthand: the exact status to expect.",
      +              "type": "integer"
      +            },
      +            "headers": {
      +              "description": "Single-target shorthand: request headers.",
      +              "type": "object"
      +            },
      +            "method": {
      +              "description": "Single-target shorthand: HTTP method. Default GET.",
      +              "type": "string"
      +            },
      +            "targets": {
      +              "description": "Up to 10 targets per call.",
      +              "items": {
      +                "properties": {
      +                  "bodyContains": {
      +                    "description": "Substring the response body must contain to pass.",
      +                    "type": "string"
      +                  },
      +                  "expectStatus": {
      +                    "description": "Pass only on this exact status; default any 2xx.",
      +                    "type": "integer"
      +                  },
      +                  "headers": {
      +                    "description": "Request headers. Sent, never echoed back in the reply.",
      +                    "type": "object"
      +                  },
      +                  "method": {
      +                    "description": "HTTP method, uppercased by the handler. Default GET.",
      +                    "type": "string"
      +                  },
      +                  "url": {
      +                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "url"
      +                ],
      +                "type": "object"
      +              },
      +              "maxItems": 10,
      +              "type": "array"
      +            },
      +            "url": {
      +              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "logs_tail"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "functionName"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "fn"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "logGroup"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "filter": {
      +              "description": "CloudWatch filter pattern.",
      +              "type": "string"
      +            },
      +            "filterPattern": {
      +              "description": "Alias of filter.",
      +              "type": "string"
      +            },
      +            "fn": {
      +              "description": "Alias of functionName.",
      +              "type": "string"
      +            },
      +            "functionName": {
      +              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      +              "type": "string"
      +            },
      +            "limit": {
      +              "description": "Max events. Default 100, clamped to 1-1000.",
      +              "type": "integer"
      +            },
      +            "logGroup": {
      +              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      +              "type": "string"
      +            },
      +            "minutes": {
      +              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      +              "type": "integer"
      +            },
      +            "region": {
      +              "description": "Region of the log group. Default us-east-1.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "qr_code"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "errorCorrection": {
      +              "description": "How much damage the code survives; higher is denser. Default M.",
      +              "enum": [
      +                "L",
      +                "M",
      +                "Q",
      +                "H"
      +              ],
      +              "type": "string"
      +            },
      +            "format": {
      +              "description": "What to return. Default svg.",
      +              "enum": [
      +                "svg",
      +                "png",
      +                "both"
      +              ],
      +              "type": "string"
      +            },
      +            "label": {
      +              "description": "The SVG's accessible name. Default 'QR code'.",
      +              "type": "string"
      +            },
      +            "sizePx": {
      +              "description": "Width and height in pixels. Default 512.",
      +              "maximum": 2048,
      +              "minimum": 64,
      +              "type": "integer"
      +            },
      +            "value": {
      +              "description": "The link or text the code holds.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "value"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  }
      +]
  13. Changed1 schema field changed
    • changedInput schema / allOf
      Previous value: -[
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "rds_query"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "continueAfterTimeout": {
      -              "description": "Data API flag, forwarded verbatim.",
      -              "type": "boolean"
      -            },
      -            "db": {
      -              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      -              "enum": [
      -                "main",
      -                "aegis",
      -                "analytics",
      -                "pay",
      -                "companies",
      -                "events",
      -                "dating",
      -                "intel",
      -                "studio",
      -                "ledger",
      -                "deals",
      -                "ads",
      -                "chat",
      -                "market",
      -                "referrals",
      -                "notes",
      -                "learn",
      -                "storage",
      -                "give",
      -                "launch",
      -                "communities",
      -                "schedule",
      -                "gift",
      -                "seats",
      -                "boardroom",
      -                "email",
      -                "book",
      -                "sales",
      -                "newsletter",
      -                "legal",
      -                "rivals",
      -                "message",
      -                "connectors",
      -                "verify",
      -                "import",
      -                "sign",
      -                "games",
      -                "myconnect",
      -                "notifications",
      -                "realtor",
      -                "credits",
      -                "licensing",
      -                "crowdfund",
      -                "ship",
      -                "catalog",
      -                "attention",
      -                "network",
      -                "dictation",
      -                "pass",
      -                "ab",
      -                "pages",
      -                "mydomains",
      -                "enterprise",
      -                "life",
      -                "wallpaper",
      -                "calls",
      -                "share",
      -                "cranium",
      -                "connections",
      -                "identity",
      -                "accounts",
      -                "argus",
      -                "plutus",
      -                "payments",
      -                "intelligence",
      -                "heimdall",
      -                "hephaestus",
      -                "brand-deals",
      -                "hermes",
      -                "locker"
      -              ],
      -              "type": "string"
      -            },
      -            "formatRecordsAs": {
      -              "description": "RDS Data API records format; defaults to JSON.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      -              "type": "string"
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied server-side before the rows are returned.",
      -              "type": "string"
      -            },
      -            "parameters": {
      -              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      -              "type": "array"
      -            },
      -            "resultSetOptions": {
      -              "description": "Data API resultSetOptions, forwarded verbatim.",
      -              "type": "object"
      -            },
      -            "schema": {
      -              "description": "Data API schema qualifier, forwarded verbatim.",
      -              "type": "string"
      -            },
      -            "sql": {
      -              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      -              "type": "string"
      -            },
      -            "transaction": {
      -              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      -              "enum": [
      -                "begin",
      -                "commit",
      -                "rollback"
      -              ],
      -              "type": "string"
      -            },
      -            "transactionId": {
      -              "description": "Run inside an existing Data API transaction.",
      -              "type": "string"
      -            },
      -            "write": {
      -              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      -              "type": "boolean"
      -            }
      -          },
      -          "required": [
      -            "db"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "aws_sweep"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "tool_name"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "endpoint_id"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "endpoint_id": {
      -              "description": "A catalog endpoint id, used instead of tool_name.",
      -              "type": "string"
      -            },
      -            "includeEnv": {
      -              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      -              "type": "boolean"
      -            },
      -            "instances": {
      -              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": [
      -                "array",
      -                "string"
      -              ]
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied to each instance's result.",
      -              "type": "string"
      -            },
      -            "paginateAll": {
      -              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      -              "type": "boolean"
      -            },
      -            "params": {
      -              "description": "The swept op's OWN params, passed through to each per-instance call.",
      -              "type": "object"
      -            },
      -            "tool_name": {
      -              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "probe"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "targets"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "url"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "bodyContains": {
      -              "description": "Single-target shorthand: substring the body must contain.",
      -              "type": "string"
      -            },
      -            "expectStatus": {
      -              "description": "Single-target shorthand: the exact status to expect.",
      -              "type": "integer"
      -            },
      -            "headers": {
      -              "description": "Single-target shorthand: request headers.",
      -              "type": "object"
      -            },
      -            "method": {
      -              "description": "Single-target shorthand: HTTP method. Default GET.",
      -              "type": "string"
      -            },
      -            "targets": {
      -              "description": "Up to 10 targets per call.",
      -              "items": {
      -                "properties": {
      -                  "bodyContains": {
      -                    "description": "Substring the response body must contain to pass.",
      -                    "type": "string"
      -                  },
      -                  "expectStatus": {
      -                    "description": "Pass only on this exact status; default any 2xx.",
      -                    "type": "integer"
      -                  },
      -                  "headers": {
      -                    "description": "Request headers. Sent, never echoed back in the reply.",
      -                    "type": "object"
      -                  },
      -                  "method": {
      -                    "description": "HTTP method, uppercased by the handler. Default GET.",
      -                    "type": "string"
      -                  },
      -                  "url": {
      -                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "url"
      -                ],
      -                "type": "object"
      -              },
      -              "maxItems": 10,
      -              "type": "array"
      -            },
      -            "url": {
      -              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "logs_tail"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "functionName"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "fn"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "logGroup"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "filter": {
      -              "description": "CloudWatch filter pattern.",
      -              "type": "string"
      -            },
      -            "filterPattern": {
      -              "description": "Alias of filter.",
      -              "type": "string"
      -            },
      -            "fn": {
      -              "description": "Alias of functionName.",
      -              "type": "string"
      -            },
      -            "functionName": {
      -              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      -              "type": "string"
      -            },
      -            "limit": {
      -              "description": "Max events. Default 100, clamped to 1-1000.",
      -              "type": "integer"
      -            },
      -            "logGroup": {
      -              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      -              "type": "string"
      -            },
      -            "minutes": {
      -              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      -              "type": "integer"
      -            },
      -            "region": {
      -              "description": "Region of the log group. Default us-east-1.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "qr_code"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "errorCorrection": {
      -              "description": "How much damage the code survives; higher is denser. Default M.",
      -              "enum": [
      -                "L",
      -                "M",
      -                "Q",
      -                "H"
      -              ],
      -              "type": "string"
      -            },
      -            "format": {
      -              "description": "What to return. Default svg.",
      -              "enum": [
      -                "svg",
      -                "png",
      -                "both"
      -              ],
      -              "type": "string"
      -            },
      -            "label": {
      -              "description": "The SVG's accessible name. Default 'QR code'.",
      -              "type": "string"
      -            },
      -            "sizePx": {
      -              "description": "Width and height in pixels. Default 512.",
      -              "maximum": 2048,
      -              "minimum": 64,
      -              "type": "integer"
      -            },
      -            "value": {
      -              "description": "The link or text the code holds.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "value"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  }
      -]New value: +[
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "rds_query"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "continueAfterTimeout": {
      +              "description": "Data API flag, forwarded verbatim.",
      +              "type": "boolean"
      +            },
      +            "db": {
      +              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      +              "enum": [
      +                "main",
      +                "aegis",
      +                "analytics",
      +                "pay",
      +                "companies",
      +                "events",
      +                "dating",
      +                "intel",
      +                "studio",
      +                "ledger",
      +                "deals",
      +                "ads",
      +                "chat",
      +                "market",
      +                "referrals",
      +                "notes",
      +                "learn",
      +                "storage",
      +                "give",
      +                "launch",
      +                "communities",
      +                "schedule",
      +                "gift",
      +                "seats",
      +                "boardroom",
      +                "email",
      +                "book",
      +                "sales",
      +                "newsletter",
      +                "legal",
      +                "rivals",
      +                "message",
      +                "connectors",
      +                "verify",
      +                "import",
      +                "sign",
      +                "games",
      +                "myconnect",
      +                "notifications",
      +                "realtor",
      +                "credits",
      +                "licensing",
      +                "crowdfund",
      +                "ship",
      +                "catalog",
      +                "attention",
      +                "network",
      +                "dictation",
      +                "pass",
      +                "ab",
      +                "pages",
      +                "mydomains",
      +                "enterprise",
      +                "life",
      +                "wallpaper",
      +                "calls",
      +                "share",
      +                "google",
      +                "cranium",
      +                "connections",
      +                "identity",
      +                "accounts",
      +                "argus",
      +                "plutus",
      +                "payments",
      +                "intelligence",
      +                "heimdall",
      +                "hephaestus",
      +                "brand-deals",
      +                "hermes",
      +                "locker"
      +              ],
      +              "type": "string"
      +            },
      +            "formatRecordsAs": {
      +              "description": "RDS Data API records format; defaults to JSON.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      +              "type": "string"
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied server-side before the rows are returned.",
      +              "type": "string"
      +            },
      +            "parameters": {
      +              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      +              "type": "array"
      +            },
      +            "resultSetOptions": {
      +              "description": "Data API resultSetOptions, forwarded verbatim.",
      +              "type": "object"
      +            },
      +            "schema": {
      +              "description": "Data API schema qualifier, forwarded verbatim.",
      +              "type": "string"
      +            },
      +            "sql": {
      +              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      +              "type": "string"
      +            },
      +            "transaction": {
      +              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      +              "enum": [
      +                "begin",
      +                "commit",
      +                "rollback"
      +              ],
      +              "type": "string"
      +            },
      +            "transactionId": {
      +              "description": "Run inside an existing Data API transaction.",
      +              "type": "string"
      +            },
      +            "write": {
      +              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      +              "type": "boolean"
      +            }
      +          },
      +          "required": [
      +            "db"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "aws_sweep"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "tool_name"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "endpoint_id"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "endpoint_id": {
      +              "description": "A catalog endpoint id, used instead of tool_name.",
      +              "type": "string"
      +            },
      +            "includeEnv": {
      +              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      +              "type": "boolean"
      +            },
      +            "instances": {
      +              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": [
      +                "array",
      +                "string"
      +              ]
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied to each instance's result.",
      +              "type": "string"
      +            },
      +            "paginateAll": {
      +              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      +              "type": "boolean"
      +            },
      +            "params": {
      +              "description": "The swept op's OWN params, passed through to each per-instance call.",
      +              "type": "object"
      +            },
      +            "tool_name": {
      +              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "probe"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "targets"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "url"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "bodyContains": {
      +              "description": "Single-target shorthand: substring the body must contain.",
      +              "type": "string"
      +            },
      +            "expectStatus": {
      +              "description": "Single-target shorthand: the exact status to expect.",
      +              "type": "integer"
      +            },
      +            "headers": {
      +              "description": "Single-target shorthand: request headers.",
      +              "type": "object"
      +            },
      +            "method": {
      +              "description": "Single-target shorthand: HTTP method. Default GET.",
      +              "type": "string"
      +            },
      +            "targets": {
      +              "description": "Up to 10 targets per call.",
      +              "items": {
      +                "properties": {
      +                  "bodyContains": {
      +                    "description": "Substring the response body must contain to pass.",
      +                    "type": "string"
      +                  },
      +                  "expectStatus": {
      +                    "description": "Pass only on this exact status; default any 2xx.",
      +                    "type": "integer"
      +                  },
      +                  "headers": {
      +                    "description": "Request headers. Sent, never echoed back in the reply.",
      +                    "type": "object"
      +                  },
      +                  "method": {
      +                    "description": "HTTP method, uppercased by the handler. Default GET.",
      +                    "type": "string"
      +                  },
      +                  "url": {
      +                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "url"
      +                ],
      +                "type": "object"
      +              },
      +              "maxItems": 10,
      +              "type": "array"
      +            },
      +            "url": {
      +              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "logs_tail"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "functionName"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "fn"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "logGroup"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "filter": {
      +              "description": "CloudWatch filter pattern.",
      +              "type": "string"
      +            },
      +            "filterPattern": {
      +              "description": "Alias of filter.",
      +              "type": "string"
      +            },
      +            "fn": {
      +              "description": "Alias of functionName.",
      +              "type": "string"
      +            },
      +            "functionName": {
      +              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      +              "type": "string"
      +            },
      +            "limit": {
      +              "description": "Max events. Default 100, clamped to 1-1000.",
      +              "type": "integer"
      +            },
      +            "logGroup": {
      +              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      +              "type": "string"
      +            },
      +            "minutes": {
      +              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      +              "type": "integer"
      +            },
      +            "region": {
      +              "description": "Region of the log group. Default us-east-1.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "qr_code"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "errorCorrection": {
      +              "description": "How much damage the code survives; higher is denser. Default M.",
      +              "enum": [
      +                "L",
      +                "M",
      +                "Q",
      +                "H"
      +              ],
      +              "type": "string"
      +            },
      +            "format": {
      +              "description": "What to return. Default svg.",
      +              "enum": [
      +                "svg",
      +                "png",
      +                "both"
      +              ],
      +              "type": "string"
      +            },
      +            "label": {
      +              "description": "The SVG's accessible name. Default 'QR code'.",
      +              "type": "string"
      +            },
      +            "sizePx": {
      +              "description": "Width and height in pixels. Default 512.",
      +              "maximum": 2048,
      +              "minimum": 64,
      +              "type": "integer"
      +            },
      +            "value": {
      +              "description": "The link or text the code holds.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "value"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  }
      +]
  14. Changed1 schema field changed
    • changedInput schema / properties / workflow / type
      Previous value: -[
      -  "object",
      -  "string"
      -]New value: +"string"
  15. Changed1 schema field changed
    • changedInput schema / properties / workflow / type
      Previous value: -"string"New value: +[
      +  "object",
      +  "string"
      +]
  16. Changed1 schema field changed
    • changedInput schema / allOf
      Previous value: -[
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "rds_query"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "continueAfterTimeout": {
      -              "description": "Data API flag, forwarded verbatim.",
      -              "type": "boolean"
      -            },
      -            "db": {
      -              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      -              "enum": [
      -                "main",
      -                "aegis",
      -                "analytics",
      -                "pay",
      -                "companies",
      -                "events",
      -                "dating",
      -                "intel",
      -                "studio",
      -                "ledger",
      -                "deals",
      -                "ads",
      -                "chat",
      -                "market",
      -                "referrals",
      -                "notes",
      -                "learn",
      -                "storage",
      -                "give",
      -                "launch",
      -                "communities",
      -                "schedule",
      -                "gift",
      -                "seats",
      -                "boardroom",
      -                "email",
      -                "book",
      -                "sales",
      -                "newsletter",
      -                "legal",
      -                "rivals",
      -                "message",
      -                "connectors",
      -                "verify",
      -                "import",
      -                "sign",
      -                "games",
      -                "myconnect",
      -                "notifications",
      -                "realtor",
      -                "credits",
      -                "licensing",
      -                "crowdfund",
      -                "ship",
      -                "catalog",
      -                "attention",
      -                "network",
      -                "dictation",
      -                "pass",
      -                "ab",
      -                "pages",
      -                "mydomains",
      -                "enterprise",
      -                "life",
      -                "wallpaper",
      -                "calls",
      -                "cranium",
      -                "connections",
      -                "identity",
      -                "accounts",
      -                "argus",
      -                "plutus",
      -                "payments",
      -                "intelligence",
      -                "heimdall",
      -                "hephaestus",
      -                "brand-deals",
      -                "hermes",
      -                "locker"
      -              ],
      -              "type": "string"
      -            },
      -            "formatRecordsAs": {
      -              "description": "RDS Data API records format; defaults to JSON.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      -              "type": "string"
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied server-side before the rows are returned.",
      -              "type": "string"
      -            },
      -            "parameters": {
      -              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      -              "type": "array"
      -            },
      -            "resultSetOptions": {
      -              "description": "Data API resultSetOptions, forwarded verbatim.",
      -              "type": "object"
      -            },
      -            "schema": {
      -              "description": "Data API schema qualifier, forwarded verbatim.",
      -              "type": "string"
      -            },
      -            "sql": {
      -              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      -              "type": "string"
      -            },
      -            "transaction": {
      -              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      -              "enum": [
      -                "begin",
      -                "commit",
      -                "rollback"
      -              ],
      -              "type": "string"
      -            },
      -            "transactionId": {
      -              "description": "Run inside an existing Data API transaction.",
      -              "type": "string"
      -            },
      -            "write": {
      -              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      -              "type": "boolean"
      -            }
      -          },
      -          "required": [
      -            "db"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "aws_sweep"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "tool_name"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "endpoint_id"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "endpoint_id": {
      -              "description": "A catalog endpoint id, used instead of tool_name.",
      -              "type": "string"
      -            },
      -            "includeEnv": {
      -              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      -              "type": "boolean"
      -            },
      -            "instances": {
      -              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": [
      -                "array",
      -                "string"
      -              ]
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied to each instance's result.",
      -              "type": "string"
      -            },
      -            "paginateAll": {
      -              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      -              "type": "boolean"
      -            },
      -            "params": {
      -              "description": "The swept op's OWN params, passed through to each per-instance call.",
      -              "type": "object"
      -            },
      -            "tool_name": {
      -              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "probe"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "targets"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "url"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "bodyContains": {
      -              "description": "Single-target shorthand: substring the body must contain.",
      -              "type": "string"
      -            },
      -            "expectStatus": {
      -              "description": "Single-target shorthand: the exact status to expect.",
      -              "type": "integer"
      -            },
      -            "headers": {
      -              "description": "Single-target shorthand: request headers.",
      -              "type": "object"
      -            },
      -            "method": {
      -              "description": "Single-target shorthand: HTTP method. Default GET.",
      -              "type": "string"
      -            },
      -            "targets": {
      -              "description": "Up to 10 targets per call.",
      -              "items": {
      -                "properties": {
      -                  "bodyContains": {
      -                    "description": "Substring the response body must contain to pass.",
      -                    "type": "string"
      -                  },
      -                  "expectStatus": {
      -                    "description": "Pass only on this exact status; default any 2xx.",
      -                    "type": "integer"
      -                  },
      -                  "headers": {
      -                    "description": "Request headers. Sent, never echoed back in the reply.",
      -                    "type": "object"
      -                  },
      -                  "method": {
      -                    "description": "HTTP method, uppercased by the handler. Default GET.",
      -                    "type": "string"
      -                  },
      -                  "url": {
      -                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "url"
      -                ],
      -                "type": "object"
      -              },
      -              "maxItems": 10,
      -              "type": "array"
      -            },
      -            "url": {
      -              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "logs_tail"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "functionName"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "fn"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "logGroup"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "filter": {
      -              "description": "CloudWatch filter pattern.",
      -              "type": "string"
      -            },
      -            "filterPattern": {
      -              "description": "Alias of filter.",
      -              "type": "string"
      -            },
      -            "fn": {
      -              "description": "Alias of functionName.",
      -              "type": "string"
      -            },
      -            "functionName": {
      -              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      -              "type": "string"
      -            },
      -            "limit": {
      -              "description": "Max events. Default 100, clamped to 1-1000.",
      -              "type": "integer"
      -            },
      -            "logGroup": {
      -              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      -              "type": "string"
      -            },
      -            "minutes": {
      -              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      -              "type": "integer"
      -            },
      -            "region": {
      -              "description": "Region of the log group. Default us-east-1.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "qr_code"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "errorCorrection": {
      -              "description": "How much damage the code survives; higher is denser. Default M.",
      -              "enum": [
      -                "L",
      -                "M",
      -                "Q",
      -                "H"
      -              ],
      -              "type": "string"
      -            },
      -            "format": {
      -              "description": "What to return. Default svg.",
      -              "enum": [
      -                "svg",
      -                "png",
      -                "both"
      -              ],
      -              "type": "string"
      -            },
      -            "label": {
      -              "description": "The SVG's accessible name. Default 'QR code'.",
      -              "type": "string"
      -            },
      -            "sizePx": {
      -              "description": "Width and height in pixels. Default 512.",
      -              "maximum": 2048,
      -              "minimum": 64,
      -              "type": "integer"
      -            },
      -            "value": {
      -              "description": "The link or text the code holds.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "value"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  }
      -]New value: +[
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "rds_query"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "continueAfterTimeout": {
      +              "description": "Data API flag, forwarded verbatim.",
      +              "type": "boolean"
      +            },
      +            "db": {
      +              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      +              "enum": [
      +                "main",
      +                "aegis",
      +                "analytics",
      +                "pay",
      +                "companies",
      +                "events",
      +                "dating",
      +                "intel",
      +                "studio",
      +                "ledger",
      +                "deals",
      +                "ads",
      +                "chat",
      +                "market",
      +                "referrals",
      +                "notes",
      +                "learn",
      +                "storage",
      +                "give",
      +                "launch",
      +                "communities",
      +                "schedule",
      +                "gift",
      +                "seats",
      +                "boardroom",
      +                "email",
      +                "book",
      +                "sales",
      +                "newsletter",
      +                "legal",
      +                "rivals",
      +                "message",
      +                "connectors",
      +                "verify",
      +                "import",
      +                "sign",
      +                "games",
      +                "myconnect",
      +                "notifications",
      +                "realtor",
      +                "credits",
      +                "licensing",
      +                "crowdfund",
      +                "ship",
      +                "catalog",
      +                "attention",
      +                "network",
      +                "dictation",
      +                "pass",
      +                "ab",
      +                "pages",
      +                "mydomains",
      +                "enterprise",
      +                "life",
      +                "wallpaper",
      +                "calls",
      +                "share",
      +                "cranium",
      +                "connections",
      +                "identity",
      +                "accounts",
      +                "argus",
      +                "plutus",
      +                "payments",
      +                "intelligence",
      +                "heimdall",
      +                "hephaestus",
      +                "brand-deals",
      +                "hermes",
      +                "locker"
      +              ],
      +              "type": "string"
      +            },
      +            "formatRecordsAs": {
      +              "description": "RDS Data API records format; defaults to JSON.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      +              "type": "string"
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied server-side before the rows are returned.",
      +              "type": "string"
      +            },
      +            "parameters": {
      +              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      +              "type": "array"
      +            },
      +            "resultSetOptions": {
      +              "description": "Data API resultSetOptions, forwarded verbatim.",
      +              "type": "object"
      +            },
      +            "schema": {
      +              "description": "Data API schema qualifier, forwarded verbatim.",
      +              "type": "string"
      +            },
      +            "sql": {
      +              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      +              "type": "string"
      +            },
      +            "transaction": {
      +              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      +              "enum": [
      +                "begin",
      +                "commit",
      +                "rollback"
      +              ],
      +              "type": "string"
      +            },
      +            "transactionId": {
      +              "description": "Run inside an existing Data API transaction.",
      +              "type": "string"
      +            },
      +            "write": {
      +              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      +              "type": "boolean"
      +            }
      +          },
      +          "required": [
      +            "db"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "aws_sweep"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "tool_name"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "endpoint_id"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "endpoint_id": {
      +              "description": "A catalog endpoint id, used instead of tool_name.",
      +              "type": "string"
      +            },
      +            "includeEnv": {
      +              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      +              "type": "boolean"
      +            },
      +            "instances": {
      +              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": [
      +                "array",
      +                "string"
      +              ]
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied to each instance's result.",
      +              "type": "string"
      +            },
      +            "paginateAll": {
      +              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      +              "type": "boolean"
      +            },
      +            "params": {
      +              "description": "The swept op's OWN params, passed through to each per-instance call.",
      +              "type": "object"
      +            },
      +            "tool_name": {
      +              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "probe"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "targets"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "url"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "bodyContains": {
      +              "description": "Single-target shorthand: substring the body must contain.",
      +              "type": "string"
      +            },
      +            "expectStatus": {
      +              "description": "Single-target shorthand: the exact status to expect.",
      +              "type": "integer"
      +            },
      +            "headers": {
      +              "description": "Single-target shorthand: request headers.",
      +              "type": "object"
      +            },
      +            "method": {
      +              "description": "Single-target shorthand: HTTP method. Default GET.",
      +              "type": "string"
      +            },
      +            "targets": {
      +              "description": "Up to 10 targets per call.",
      +              "items": {
      +                "properties": {
      +                  "bodyContains": {
      +                    "description": "Substring the response body must contain to pass.",
      +                    "type": "string"
      +                  },
      +                  "expectStatus": {
      +                    "description": "Pass only on this exact status; default any 2xx.",
      +                    "type": "integer"
      +                  },
      +                  "headers": {
      +                    "description": "Request headers. Sent, never echoed back in the reply.",
      +                    "type": "object"
      +                  },
      +                  "method": {
      +                    "description": "HTTP method, uppercased by the handler. Default GET.",
      +                    "type": "string"
      +                  },
      +                  "url": {
      +                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "url"
      +                ],
      +                "type": "object"
      +              },
      +              "maxItems": 10,
      +              "type": "array"
      +            },
      +            "url": {
      +              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "logs_tail"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "functionName"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "fn"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "logGroup"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "filter": {
      +              "description": "CloudWatch filter pattern.",
      +              "type": "string"
      +            },
      +            "filterPattern": {
      +              "description": "Alias of filter.",
      +              "type": "string"
      +            },
      +            "fn": {
      +              "description": "Alias of functionName.",
      +              "type": "string"
      +            },
      +            "functionName": {
      +              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      +              "type": "string"
      +            },
      +            "limit": {
      +              "description": "Max events. Default 100, clamped to 1-1000.",
      +              "type": "integer"
      +            },
      +            "logGroup": {
      +              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      +              "type": "string"
      +            },
      +            "minutes": {
      +              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      +              "type": "integer"
      +            },
      +            "region": {
      +              "description": "Region of the log group. Default us-east-1.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "qr_code"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "errorCorrection": {
      +              "description": "How much damage the code survives; higher is denser. Default M.",
      +              "enum": [
      +                "L",
      +                "M",
      +                "Q",
      +                "H"
      +              ],
      +              "type": "string"
      +            },
      +            "format": {
      +              "description": "What to return. Default svg.",
      +              "enum": [
      +                "svg",
      +                "png",
      +                "both"
      +              ],
      +              "type": "string"
      +            },
      +            "label": {
      +              "description": "The SVG's accessible name. Default 'QR code'.",
      +              "type": "string"
      +            },
      +            "sizePx": {
      +              "description": "Width and height in pixels. Default 512.",
      +              "maximum": 2048,
      +              "minimum": 64,
      +              "type": "integer"
      +            },
      +            "value": {
      +              "description": "The link or text the code holds.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "value"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  }
      +]
  17. Changed2 schema fields changed
    • changedInput schema / properties / workflow / description
      Previous value: -"A saved workflow name, or an inline { steps: [{id, service, tool, params}], output } to chain multiple ops in one call. Each call has a ~24s time budget (the HTTP endpoint's 29s hard ceiling) - practically ~20-30 steps at typical per-step latency, fewer for a heavier op. A batch that would run past it STOPS STARTING new steps (never mid-step) and answers 200 with {ok:false, partial:true, stopped_reason:'time_budget', steps, stoppedAtIndex, stoppedAtStep, trace, output} carrying every step that DID run - never a bare 500. Resume by re-sending only the remaining steps (from stoppedAtIndex on) as a fresh inline workflow; do not resend the whole batch, or an already-run non-idempotent step runs twice."New value: +"A saved workflow name, or an inline { steps: [{id, service, tool, params}], output } as JSON text (an object is taken too) to chain multiple ops in one call. Each call has a ~24s time budget (the HTTP endpoint's 29s hard ceiling) - practically ~20-30 steps at typical per-step latency, fewer for a heavier op. A batch that would run past it STOPS STARTING new steps (never mid-step) and answers 200 with {ok:false, partial:true, stopped_reason:'time_budget', steps, stoppedAtIndex, stoppedAtStep, trace, output} carrying every step that DID run - never a bare 500. Resume by re-sending only the remaining steps (from stoppedAtIndex on) as a fresh inline workflow; do not resend the whole batch, or an already-run non-idempotent step runs twice."
    • changedInput schema / properties / workflow / type
      Previous value: -[
      -  "string",
      -  "object"
      -]New value: +"string"
  18. Changed1 schema field changed
    • addedInput schema / properties / person
      Added value: +{
      +  "description": "Linked person to run this call as (first name). Omit to run as the connection's holder.",
      +  "type": "string"
      +}
  19. Changed1 schema field changed
    • changedInput schema / allOf
      Previous value: -[
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "rds_query"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "continueAfterTimeout": {
      -              "description": "Data API flag, forwarded verbatim.",
      -              "type": "boolean"
      -            },
      -            "db": {
      -              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      -              "enum": [
      -                "main",
      -                "aegis",
      -                "analytics",
      -                "pay",
      -                "companies",
      -                "events",
      -                "dating",
      -                "intel",
      -                "studio",
      -                "ledger",
      -                "deals",
      -                "ads",
      -                "chat",
      -                "market",
      -                "referrals",
      -                "notes",
      -                "learn",
      -                "storage",
      -                "give",
      -                "launch",
      -                "communities",
      -                "schedule",
      -                "gift",
      -                "seats",
      -                "boardroom",
      -                "email",
      -                "book",
      -                "sales",
      -                "newsletter",
      -                "legal",
      -                "rivals",
      -                "message",
      -                "connectors",
      -                "verify",
      -                "import",
      -                "sign",
      -                "games",
      -                "myconnect",
      -                "notifications",
      -                "realtor",
      -                "credits",
      -                "licensing",
      -                "crowdfund",
      -                "ship",
      -                "catalog",
      -                "attention",
      -                "network",
      -                "dictation",
      -                "cranium",
      -                "connections",
      -                "identity",
      -                "accounts",
      -                "argus",
      -                "plutus",
      -                "payments",
      -                "intelligence",
      -                "heimdall",
      -                "hephaestus",
      -                "brand-deals",
      -                "hermes",
      -                "locker"
      -              ],
      -              "type": "string"
      -            },
      -            "formatRecordsAs": {
      -              "description": "RDS Data API records format; defaults to JSON.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      -              "type": "string"
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied server-side before the rows are returned.",
      -              "type": "string"
      -            },
      -            "parameters": {
      -              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      -              "type": "array"
      -            },
      -            "resultSetOptions": {
      -              "description": "Data API resultSetOptions, forwarded verbatim.",
      -              "type": "object"
      -            },
      -            "schema": {
      -              "description": "Data API schema qualifier, forwarded verbatim.",
      -              "type": "string"
      -            },
      -            "sql": {
      -              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      -              "type": "string"
      -            },
      -            "transaction": {
      -              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      -              "enum": [
      -                "begin",
      -                "commit",
      -                "rollback"
      -              ],
      -              "type": "string"
      -            },
      -            "transactionId": {
      -              "description": "Run inside an existing Data API transaction.",
      -              "type": "string"
      -            },
      -            "write": {
      -              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      -              "type": "boolean"
      -            }
      -          },
      -          "required": [
      -            "db"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "aws_sweep"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "tool_name"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "endpoint_id"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "endpoint_id": {
      -              "description": "A catalog endpoint id, used instead of tool_name.",
      -              "type": "string"
      -            },
      -            "includeEnv": {
      -              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      -              "type": "boolean"
      -            },
      -            "instances": {
      -              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": [
      -                "array",
      -                "string"
      -              ]
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied to each instance's result.",
      -              "type": "string"
      -            },
      -            "paginateAll": {
      -              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      -              "type": "boolean"
      -            },
      -            "params": {
      -              "description": "The swept op's OWN params, passed through to each per-instance call.",
      -              "type": "object"
      -            },
      -            "tool_name": {
      -              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "probe"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "targets"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "url"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "bodyContains": {
      -              "description": "Single-target shorthand: substring the body must contain.",
      -              "type": "string"
      -            },
      -            "expectStatus": {
      -              "description": "Single-target shorthand: the exact status to expect.",
      -              "type": "integer"
      -            },
      -            "headers": {
      -              "description": "Single-target shorthand: request headers.",
      -              "type": "object"
      -            },
      -            "method": {
      -              "description": "Single-target shorthand: HTTP method. Default GET.",
      -              "type": "string"
      -            },
      -            "targets": {
      -              "description": "Up to 10 targets per call.",
      -              "items": {
      -                "properties": {
      -                  "bodyContains": {
      -                    "description": "Substring the response body must contain to pass.",
      -                    "type": "string"
      -                  },
      -                  "expectStatus": {
      -                    "description": "Pass only on this exact status; default any 2xx.",
      -                    "type": "integer"
      -                  },
      -                  "headers": {
      -                    "description": "Request headers. Sent, never echoed back in the reply.",
      -                    "type": "object"
      -                  },
      -                  "method": {
      -                    "description": "HTTP method, uppercased by the handler. Default GET.",
      -                    "type": "string"
      -                  },
      -                  "url": {
      -                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "url"
      -                ],
      -                "type": "object"
      -              },
      -              "maxItems": 10,
      -              "type": "array"
      -            },
      -            "url": {
      -              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "logs_tail"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "functionName"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "fn"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "logGroup"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "filter": {
      -              "description": "CloudWatch filter pattern.",
      -              "type": "string"
      -            },
      -            "filterPattern": {
      -              "description": "Alias of filter.",
      -              "type": "string"
      -            },
      -            "fn": {
      -              "description": "Alias of functionName.",
      -              "type": "string"
      -            },
      -            "functionName": {
      -              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      -              "type": "string"
      -            },
      -            "limit": {
      -              "description": "Max events. Default 100, clamped to 1-1000.",
      -              "type": "integer"
      -            },
      -            "logGroup": {
      -              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      -              "type": "string"
      -            },
      -            "minutes": {
      -              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      -              "type": "integer"
      -            },
      -            "region": {
      -              "description": "Region of the log group. Default us-east-1.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "qr_code"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "errorCorrection": {
      -              "description": "How much damage the code survives; higher is denser. Default M.",
      -              "enum": [
      -                "L",
      -                "M",
      -                "Q",
      -                "H"
      -              ],
      -              "type": "string"
      -            },
      -            "format": {
      -              "description": "What to return. Default svg.",
      -              "enum": [
      -                "svg",
      -                "png",
      -                "both"
      -              ],
      -              "type": "string"
      -            },
      -            "label": {
      -              "description": "The SVG's accessible name. Default 'QR code'.",
      -              "type": "string"
      -            },
      -            "sizePx": {
      -              "description": "Width and height in pixels. Default 512.",
      -              "maximum": 2048,
      -              "minimum": 64,
      -              "type": "integer"
      -            },
      -            "value": {
      -              "description": "The link or text the code holds.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "value"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  }
      -]New value: +[
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "rds_query"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "continueAfterTimeout": {
      +              "description": "Data API flag, forwarded verbatim.",
      +              "type": "boolean"
      +            },
      +            "db": {
      +              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      +              "enum": [
      +                "main",
      +                "aegis",
      +                "analytics",
      +                "pay",
      +                "companies",
      +                "events",
      +                "dating",
      +                "intel",
      +                "studio",
      +                "ledger",
      +                "deals",
      +                "ads",
      +                "chat",
      +                "market",
      +                "referrals",
      +                "notes",
      +                "learn",
      +                "storage",
      +                "give",
      +                "launch",
      +                "communities",
      +                "schedule",
      +                "gift",
      +                "seats",
      +                "boardroom",
      +                "email",
      +                "book",
      +                "sales",
      +                "newsletter",
      +                "legal",
      +                "rivals",
      +                "message",
      +                "connectors",
      +                "verify",
      +                "import",
      +                "sign",
      +                "games",
      +                "myconnect",
      +                "notifications",
      +                "realtor",
      +                "credits",
      +                "licensing",
      +                "crowdfund",
      +                "ship",
      +                "catalog",
      +                "attention",
      +                "network",
      +                "dictation",
      +                "pass",
      +                "ab",
      +                "pages",
      +                "mydomains",
      +                "enterprise",
      +                "life",
      +                "wallpaper",
      +                "calls",
      +                "cranium",
      +                "connections",
      +                "identity",
      +                "accounts",
      +                "argus",
      +                "plutus",
      +                "payments",
      +                "intelligence",
      +                "heimdall",
      +                "hephaestus",
      +                "brand-deals",
      +                "hermes",
      +                "locker"
      +              ],
      +              "type": "string"
      +            },
      +            "formatRecordsAs": {
      +              "description": "RDS Data API records format; defaults to JSON.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      +              "type": "string"
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied server-side before the rows are returned.",
      +              "type": "string"
      +            },
      +            "parameters": {
      +              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      +              "type": "array"
      +            },
      +            "resultSetOptions": {
      +              "description": "Data API resultSetOptions, forwarded verbatim.",
      +              "type": "object"
      +            },
      +            "schema": {
      +              "description": "Data API schema qualifier, forwarded verbatim.",
      +              "type": "string"
      +            },
      +            "sql": {
      +              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      +              "type": "string"
      +            },
      +            "transaction": {
      +              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      +              "enum": [
      +                "begin",
      +                "commit",
      +                "rollback"
      +              ],
      +              "type": "string"
      +            },
      +            "transactionId": {
      +              "description": "Run inside an existing Data API transaction.",
      +              "type": "string"
      +            },
      +            "write": {
      +              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      +              "type": "boolean"
      +            }
      +          },
      +          "required": [
      +            "db"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "aws_sweep"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "tool_name"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "endpoint_id"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "endpoint_id": {
      +              "description": "A catalog endpoint id, used instead of tool_name.",
      +              "type": "string"
      +            },
      +            "includeEnv": {
      +              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      +              "type": "boolean"
      +            },
      +            "instances": {
      +              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": [
      +                "array",
      +                "string"
      +              ]
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied to each instance's result.",
      +              "type": "string"
      +            },
      +            "paginateAll": {
      +              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      +              "type": "boolean"
      +            },
      +            "params": {
      +              "description": "The swept op's OWN params, passed through to each per-instance call.",
      +              "type": "object"
      +            },
      +            "tool_name": {
      +              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "probe"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "targets"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "url"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "bodyContains": {
      +              "description": "Single-target shorthand: substring the body must contain.",
      +              "type": "string"
      +            },
      +            "expectStatus": {
      +              "description": "Single-target shorthand: the exact status to expect.",
      +              "type": "integer"
      +            },
      +            "headers": {
      +              "description": "Single-target shorthand: request headers.",
      +              "type": "object"
      +            },
      +            "method": {
      +              "description": "Single-target shorthand: HTTP method. Default GET.",
      +              "type": "string"
      +            },
      +            "targets": {
      +              "description": "Up to 10 targets per call.",
      +              "items": {
      +                "properties": {
      +                  "bodyContains": {
      +                    "description": "Substring the response body must contain to pass.",
      +                    "type": "string"
      +                  },
      +                  "expectStatus": {
      +                    "description": "Pass only on this exact status; default any 2xx.",
      +                    "type": "integer"
      +                  },
      +                  "headers": {
      +                    "description": "Request headers. Sent, never echoed back in the reply.",
      +                    "type": "object"
      +                  },
      +                  "method": {
      +                    "description": "HTTP method, uppercased by the handler. Default GET.",
      +                    "type": "string"
      +                  },
      +                  "url": {
      +                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "url"
      +                ],
      +                "type": "object"
      +              },
      +              "maxItems": 10,
      +              "type": "array"
      +            },
      +            "url": {
      +              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "logs_tail"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "functionName"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "fn"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "logGroup"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "filter": {
      +              "description": "CloudWatch filter pattern.",
      +              "type": "string"
      +            },
      +            "filterPattern": {
      +              "description": "Alias of filter.",
      +              "type": "string"
      +            },
      +            "fn": {
      +              "description": "Alias of functionName.",
      +              "type": "string"
      +            },
      +            "functionName": {
      +              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      +              "type": "string"
      +            },
      +            "limit": {
      +              "description": "Max events. Default 100, clamped to 1-1000.",
      +              "type": "integer"
      +            },
      +            "logGroup": {
      +              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      +              "type": "string"
      +            },
      +            "minutes": {
      +              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      +              "type": "integer"
      +            },
      +            "region": {
      +              "description": "Region of the log group. Default us-east-1.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "qr_code"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "errorCorrection": {
      +              "description": "How much damage the code survives; higher is denser. Default M.",
      +              "enum": [
      +                "L",
      +                "M",
      +                "Q",
      +                "H"
      +              ],
      +              "type": "string"
      +            },
      +            "format": {
      +              "description": "What to return. Default svg.",
      +              "enum": [
      +                "svg",
      +                "png",
      +                "both"
      +              ],
      +              "type": "string"
      +            },
      +            "label": {
      +              "description": "The SVG's accessible name. Default 'QR code'.",
      +              "type": "string"
      +            },
      +            "sizePx": {
      +              "description": "Width and height in pixels. Default 512.",
      +              "maximum": 2048,
      +              "minimum": 64,
      +              "type": "integer"
      +            },
      +            "value": {
      +              "description": "The link or text the code holds.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "value"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  }
      +]
  20. Changed1 schema field changed
    • changedInput schema / allOf
      Previous value: -[
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "rds_query"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "continueAfterTimeout": {
      -              "description": "Data API flag, forwarded verbatim.",
      -              "type": "boolean"
      -            },
      -            "db": {
      -              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      -              "enum": [
      -                "main",
      -                "aegis",
      -                "analytics",
      -                "pay",
      -                "companies",
      -                "events",
      -                "dating",
      -                "intel",
      -                "studio",
      -                "ledger",
      -                "deals",
      -                "ads",
      -                "chat",
      -                "market",
      -                "referrals",
      -                "notes",
      -                "learn",
      -                "storage",
      -                "give",
      -                "launch",
      -                "communities",
      -                "schedule",
      -                "gift",
      -                "seats",
      -                "boardroom",
      -                "email",
      -                "book",
      -                "sales",
      -                "newsletter",
      -                "legal",
      -                "rivals",
      -                "message",
      -                "connectors",
      -                "verify",
      -                "import",
      -                "sign",
      -                "games",
      -                "myconnect",
      -                "notifications",
      -                "realtor",
      -                "credits",
      -                "licensing",
      -                "crowdfund",
      -                "ship",
      -                "catalog",
      -                "attention",
      -                "network",
      -                "cranium",
      -                "connections",
      -                "identity",
      -                "accounts",
      -                "argus",
      -                "plutus",
      -                "payments",
      -                "intelligence",
      -                "heimdall",
      -                "hephaestus",
      -                "brand-deals",
      -                "hermes",
      -                "locker"
      -              ],
      -              "type": "string"
      -            },
      -            "formatRecordsAs": {
      -              "description": "RDS Data API records format; defaults to JSON.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      -              "type": "string"
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied server-side before the rows are returned.",
      -              "type": "string"
      -            },
      -            "parameters": {
      -              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      -              "type": "array"
      -            },
      -            "resultSetOptions": {
      -              "description": "Data API resultSetOptions, forwarded verbatim.",
      -              "type": "object"
      -            },
      -            "schema": {
      -              "description": "Data API schema qualifier, forwarded verbatim.",
      -              "type": "string"
      -            },
      -            "sql": {
      -              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      -              "type": "string"
      -            },
      -            "transaction": {
      -              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      -              "enum": [
      -                "begin",
      -                "commit",
      -                "rollback"
      -              ],
      -              "type": "string"
      -            },
      -            "transactionId": {
      -              "description": "Run inside an existing Data API transaction.",
      -              "type": "string"
      -            },
      -            "write": {
      -              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      -              "type": "boolean"
      -            }
      -          },
      -          "required": [
      -            "db"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "aws_sweep"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "tool_name"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "endpoint_id"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "endpoint_id": {
      -              "description": "A catalog endpoint id, used instead of tool_name.",
      -              "type": "string"
      -            },
      -            "includeEnv": {
      -              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      -              "type": "boolean"
      -            },
      -            "instances": {
      -              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": [
      -                "array",
      -                "string"
      -              ]
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied to each instance's result.",
      -              "type": "string"
      -            },
      -            "paginateAll": {
      -              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      -              "type": "boolean"
      -            },
      -            "params": {
      -              "description": "The swept op's OWN params, passed through to each per-instance call.",
      -              "type": "object"
      -            },
      -            "tool_name": {
      -              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "probe"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "targets"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "url"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "bodyContains": {
      -              "description": "Single-target shorthand: substring the body must contain.",
      -              "type": "string"
      -            },
      -            "expectStatus": {
      -              "description": "Single-target shorthand: the exact status to expect.",
      -              "type": "integer"
      -            },
      -            "headers": {
      -              "description": "Single-target shorthand: request headers.",
      -              "type": "object"
      -            },
      -            "method": {
      -              "description": "Single-target shorthand: HTTP method. Default GET.",
      -              "type": "string"
      -            },
      -            "targets": {
      -              "description": "Up to 10 targets per call.",
      -              "items": {
      -                "properties": {
      -                  "bodyContains": {
      -                    "description": "Substring the response body must contain to pass.",
      -                    "type": "string"
      -                  },
      -                  "expectStatus": {
      -                    "description": "Pass only on this exact status; default any 2xx.",
      -                    "type": "integer"
      -                  },
      -                  "headers": {
      -                    "description": "Request headers. Sent, never echoed back in the reply.",
      -                    "type": "object"
      -                  },
      -                  "method": {
      -                    "description": "HTTP method, uppercased by the handler. Default GET.",
      -                    "type": "string"
      -                  },
      -                  "url": {
      -                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "url"
      -                ],
      -                "type": "object"
      -              },
      -              "maxItems": 10,
      -              "type": "array"
      -            },
      -            "url": {
      -              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "logs_tail"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "functionName"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "fn"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "logGroup"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "filter": {
      -              "description": "CloudWatch filter pattern.",
      -              "type": "string"
      -            },
      -            "filterPattern": {
      -              "description": "Alias of filter.",
      -              "type": "string"
      -            },
      -            "fn": {
      -              "description": "Alias of functionName.",
      -              "type": "string"
      -            },
      -            "functionName": {
      -              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      -              "type": "string"
      -            },
      -            "limit": {
      -              "description": "Max events. Default 100, clamped to 1-1000.",
      -              "type": "integer"
      -            },
      -            "logGroup": {
      -              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      -              "type": "string"
      -            },
      -            "minutes": {
      -              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      -              "type": "integer"
      -            },
      -            "region": {
      -              "description": "Region of the log group. Default us-east-1.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "qr_code"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "errorCorrection": {
      -              "description": "How much damage the code survives; higher is denser. Default M.",
      -              "enum": [
      -                "L",
      -                "M",
      -                "Q",
      -                "H"
      -              ],
      -              "type": "string"
      -            },
      -            "format": {
      -              "description": "What to return. Default svg.",
      -              "enum": [
      -                "svg",
      -                "png",
      -                "both"
      -              ],
      -              "type": "string"
      -            },
      -            "label": {
      -              "description": "The SVG's accessible name. Default 'QR code'.",
      -              "type": "string"
      -            },
      -            "sizePx": {
      -              "description": "Width and height in pixels. Default 512.",
      -              "maximum": 2048,
      -              "minimum": 64,
      -              "type": "integer"
      -            },
      -            "value": {
      -              "description": "The link or text the code holds.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "value"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  }
      -]New value: +[
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "rds_query"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "continueAfterTimeout": {
      +              "description": "Data API flag, forwarded verbatim.",
      +              "type": "boolean"
      +            },
      +            "db": {
      +              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      +              "enum": [
      +                "main",
      +                "aegis",
      +                "analytics",
      +                "pay",
      +                "companies",
      +                "events",
      +                "dating",
      +                "intel",
      +                "studio",
      +                "ledger",
      +                "deals",
      +                "ads",
      +                "chat",
      +                "market",
      +                "referrals",
      +                "notes",
      +                "learn",
      +                "storage",
      +                "give",
      +                "launch",
      +                "communities",
      +                "schedule",
      +                "gift",
      +                "seats",
      +                "boardroom",
      +                "email",
      +                "book",
      +                "sales",
      +                "newsletter",
      +                "legal",
      +                "rivals",
      +                "message",
      +                "connectors",
      +                "verify",
      +                "import",
      +                "sign",
      +                "games",
      +                "myconnect",
      +                "notifications",
      +                "realtor",
      +                "credits",
      +                "licensing",
      +                "crowdfund",
      +                "ship",
      +                "catalog",
      +                "attention",
      +                "network",
      +                "dictation",
      +                "cranium",
      +                "connections",
      +                "identity",
      +                "accounts",
      +                "argus",
      +                "plutus",
      +                "payments",
      +                "intelligence",
      +                "heimdall",
      +                "hephaestus",
      +                "brand-deals",
      +                "hermes",
      +                "locker"
      +              ],
      +              "type": "string"
      +            },
      +            "formatRecordsAs": {
      +              "description": "RDS Data API records format; defaults to JSON.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      +              "type": "string"
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied server-side before the rows are returned.",
      +              "type": "string"
      +            },
      +            "parameters": {
      +              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      +              "type": "array"
      +            },
      +            "resultSetOptions": {
      +              "description": "Data API resultSetOptions, forwarded verbatim.",
      +              "type": "object"
      +            },
      +            "schema": {
      +              "description": "Data API schema qualifier, forwarded verbatim.",
      +              "type": "string"
      +            },
      +            "sql": {
      +              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      +              "type": "string"
      +            },
      +            "transaction": {
      +              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      +              "enum": [
      +                "begin",
      +                "commit",
      +                "rollback"
      +              ],
      +              "type": "string"
      +            },
      +            "transactionId": {
      +              "description": "Run inside an existing Data API transaction.",
      +              "type": "string"
      +            },
      +            "write": {
      +              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      +              "type": "boolean"
      +            }
      +          },
      +          "required": [
      +            "db"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "aws_sweep"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "tool_name"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "endpoint_id"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "endpoint_id": {
      +              "description": "A catalog endpoint id, used instead of tool_name.",
      +              "type": "string"
      +            },
      +            "includeEnv": {
      +              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      +              "type": "boolean"
      +            },
      +            "instances": {
      +              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": [
      +                "array",
      +                "string"
      +              ]
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied to each instance's result.",
      +              "type": "string"
      +            },
      +            "paginateAll": {
      +              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      +              "type": "boolean"
      +            },
      +            "params": {
      +              "description": "The swept op's OWN params, passed through to each per-instance call.",
      +              "type": "object"
      +            },
      +            "tool_name": {
      +              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "probe"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "targets"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "url"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "bodyContains": {
      +              "description": "Single-target shorthand: substring the body must contain.",
      +              "type": "string"
      +            },
      +            "expectStatus": {
      +              "description": "Single-target shorthand: the exact status to expect.",
      +              "type": "integer"
      +            },
      +            "headers": {
      +              "description": "Single-target shorthand: request headers.",
      +              "type": "object"
      +            },
      +            "method": {
      +              "description": "Single-target shorthand: HTTP method. Default GET.",
      +              "type": "string"
      +            },
      +            "targets": {
      +              "description": "Up to 10 targets per call.",
      +              "items": {
      +                "properties": {
      +                  "bodyContains": {
      +                    "description": "Substring the response body must contain to pass.",
      +                    "type": "string"
      +                  },
      +                  "expectStatus": {
      +                    "description": "Pass only on this exact status; default any 2xx.",
      +                    "type": "integer"
      +                  },
      +                  "headers": {
      +                    "description": "Request headers. Sent, never echoed back in the reply.",
      +                    "type": "object"
      +                  },
      +                  "method": {
      +                    "description": "HTTP method, uppercased by the handler. Default GET.",
      +                    "type": "string"
      +                  },
      +                  "url": {
      +                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "url"
      +                ],
      +                "type": "object"
      +              },
      +              "maxItems": 10,
      +              "type": "array"
      +            },
      +            "url": {
      +              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "logs_tail"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "functionName"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "fn"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "logGroup"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "filter": {
      +              "description": "CloudWatch filter pattern.",
      +              "type": "string"
      +            },
      +            "filterPattern": {
      +              "description": "Alias of filter.",
      +              "type": "string"
      +            },
      +            "fn": {
      +              "description": "Alias of functionName.",
      +              "type": "string"
      +            },
      +            "functionName": {
      +              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      +              "type": "string"
      +            },
      +            "limit": {
      +              "description": "Max events. Default 100, clamped to 1-1000.",
      +              "type": "integer"
      +            },
      +            "logGroup": {
      +              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      +              "type": "string"
      +            },
      +            "minutes": {
      +              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      +              "type": "integer"
      +            },
      +            "region": {
      +              "description": "Region of the log group. Default us-east-1.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "qr_code"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "errorCorrection": {
      +              "description": "How much damage the code survives; higher is denser. Default M.",
      +              "enum": [
      +                "L",
      +                "M",
      +                "Q",
      +                "H"
      +              ],
      +              "type": "string"
      +            },
      +            "format": {
      +              "description": "What to return. Default svg.",
      +              "enum": [
      +                "svg",
      +                "png",
      +                "both"
      +              ],
      +              "type": "string"
      +            },
      +            "label": {
      +              "description": "The SVG's accessible name. Default 'QR code'.",
      +              "type": "string"
      +            },
      +            "sizePx": {
      +              "description": "Width and height in pixels. Default 512.",
      +              "maximum": 2048,
      +              "minimum": 64,
      +              "type": "integer"
      +            },
      +            "value": {
      +              "description": "The link or text the code holds.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "value"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  }
      +]
  21. Changed1 schema field changed
    • changedInput schema / allOf
      Previous value: -[
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "rds_query"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "continueAfterTimeout": {
      -              "description": "Data API flag, forwarded verbatim.",
      -              "type": "boolean"
      -            },
      -            "db": {
      -              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      -              "enum": [
      -                "main",
      -                "aegis",
      -                "analytics",
      -                "pay",
      -                "companies",
      -                "events",
      -                "dating",
      -                "intel",
      -                "studio",
      -                "ledger",
      -                "deals",
      -                "ads",
      -                "chat",
      -                "market",
      -                "referrals",
      -                "notes",
      -                "learn",
      -                "storage",
      -                "give",
      -                "launch",
      -                "communities",
      -                "schedule",
      -                "gift",
      -                "seats",
      -                "connections",
      -                "identity",
      -                "accounts",
      -                "argus",
      -                "plutus",
      -                "payments",
      -                "intelligence",
      -                "heimdall",
      -                "hephaestus",
      -                "brand-deals",
      -                "hermes",
      -                "locker"
      -              ],
      -              "type": "string"
      -            },
      -            "formatRecordsAs": {
      -              "description": "RDS Data API records format; defaults to JSON.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      -              "type": "string"
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied server-side before the rows are returned.",
      -              "type": "string"
      -            },
      -            "parameters": {
      -              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      -              "type": "array"
      -            },
      -            "resultSetOptions": {
      -              "description": "Data API resultSetOptions, forwarded verbatim.",
      -              "type": "object"
      -            },
      -            "schema": {
      -              "description": "Data API schema qualifier, forwarded verbatim.",
      -              "type": "string"
      -            },
      -            "sql": {
      -              "description": "The statement to run. One statement per call.",
      -              "type": "string"
      -            },
      -            "transactionId": {
      -              "description": "Run inside an existing Data API transaction.",
      -              "type": "string"
      -            },
      -            "write": {
      -              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      -              "type": "boolean"
      -            }
      -          },
      -          "required": [
      -            "db",
      -            "sql"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "aws_sweep"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "tool_name"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "endpoint_id"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "endpoint_id": {
      -              "description": "A catalog endpoint id, used instead of tool_name.",
      -              "type": "string"
      -            },
      -            "includeEnv": {
      -              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      -              "type": "boolean"
      -            },
      -            "instances": {
      -              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": [
      -                "array",
      -                "string"
      -              ]
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied to each instance's result.",
      -              "type": "string"
      -            },
      -            "paginateAll": {
      -              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      -              "type": "boolean"
      -            },
      -            "params": {
      -              "description": "The swept op's OWN params, passed through to each per-instance call.",
      -              "type": "object"
      -            },
      -            "tool_name": {
      -              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "probe"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "targets"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "url"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "bodyContains": {
      -              "description": "Single-target shorthand: substring the body must contain.",
      -              "type": "string"
      -            },
      -            "expectStatus": {
      -              "description": "Single-target shorthand: the exact status to expect.",
      -              "type": "integer"
      -            },
      -            "headers": {
      -              "description": "Single-target shorthand: request headers.",
      -              "type": "object"
      -            },
      -            "method": {
      -              "description": "Single-target shorthand: HTTP method. Default GET.",
      -              "type": "string"
      -            },
      -            "targets": {
      -              "description": "Up to 10 targets per call.",
      -              "items": {
      -                "properties": {
      -                  "bodyContains": {
      -                    "description": "Substring the response body must contain to pass.",
      -                    "type": "string"
      -                  },
      -                  "expectStatus": {
      -                    "description": "Pass only on this exact status; default any 2xx.",
      -                    "type": "integer"
      -                  },
      -                  "headers": {
      -                    "description": "Request headers. Sent, never echoed back in the reply.",
      -                    "type": "object"
      -                  },
      -                  "method": {
      -                    "description": "HTTP method, uppercased by the handler. Default GET.",
      -                    "type": "string"
      -                  },
      -                  "url": {
      -                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "url"
      -                ],
      -                "type": "object"
      -              },
      -              "maxItems": 10,
      -              "type": "array"
      -            },
      -            "url": {
      -              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "logs_tail"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "functionName"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "fn"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "logGroup"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "filter": {
      -              "description": "CloudWatch filter pattern.",
      -              "type": "string"
      -            },
      -            "filterPattern": {
      -              "description": "Alias of filter.",
      -              "type": "string"
      -            },
      -            "fn": {
      -              "description": "Alias of functionName.",
      -              "type": "string"
      -            },
      -            "functionName": {
      -              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      -              "type": "string"
      -            },
      -            "limit": {
      -              "description": "Max events. Default 100, clamped to 1-1000.",
      -              "type": "integer"
      -            },
      -            "logGroup": {
      -              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      -              "type": "string"
      -            },
      -            "minutes": {
      -              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      -              "type": "integer"
      -            },
      -            "region": {
      -              "description": "Region of the log group. Default us-east-1.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "qr_code"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "errorCorrection": {
      -              "description": "How much damage the code survives; higher is denser. Default M.",
      -              "enum": [
      -                "L",
      -                "M",
      -                "Q",
      -                "H"
      -              ],
      -              "type": "string"
      -            },
      -            "format": {
      -              "description": "What to return. Default svg.",
      -              "enum": [
      -                "svg",
      -                "png",
      -                "both"
      -              ],
      -              "type": "string"
      -            },
      -            "label": {
      -              "description": "The SVG's accessible name. Default 'QR code'.",
      -              "type": "string"
      -            },
      -            "sizePx": {
      -              "description": "Width and height in pixels. Default 512.",
      -              "maximum": 2048,
      -              "minimum": 64,
      -              "type": "integer"
      -            },
      -            "value": {
      -              "description": "The link or text the code holds.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "value"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  }
      -]New value: +[
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "rds_query"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "continueAfterTimeout": {
      +              "description": "Data API flag, forwarded verbatim.",
      +              "type": "boolean"
      +            },
      +            "db": {
      +              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      +              "enum": [
      +                "main",
      +                "aegis",
      +                "analytics",
      +                "pay",
      +                "companies",
      +                "events",
      +                "dating",
      +                "intel",
      +                "studio",
      +                "ledger",
      +                "deals",
      +                "ads",
      +                "chat",
      +                "market",
      +                "referrals",
      +                "notes",
      +                "learn",
      +                "storage",
      +                "give",
      +                "launch",
      +                "communities",
      +                "schedule",
      +                "gift",
      +                "seats",
      +                "boardroom",
      +                "email",
      +                "book",
      +                "sales",
      +                "newsletter",
      +                "legal",
      +                "rivals",
      +                "message",
      +                "connectors",
      +                "verify",
      +                "import",
      +                "sign",
      +                "games",
      +                "myconnect",
      +                "notifications",
      +                "realtor",
      +                "credits",
      +                "licensing",
      +                "crowdfund",
      +                "ship",
      +                "catalog",
      +                "attention",
      +                "network",
      +                "cranium",
      +                "connections",
      +                "identity",
      +                "accounts",
      +                "argus",
      +                "plutus",
      +                "payments",
      +                "intelligence",
      +                "heimdall",
      +                "hephaestus",
      +                "brand-deals",
      +                "hermes",
      +                "locker"
      +              ],
      +              "type": "string"
      +            },
      +            "formatRecordsAs": {
      +              "description": "RDS Data API records format; defaults to JSON.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      +              "type": "string"
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied server-side before the rows are returned.",
      +              "type": "string"
      +            },
      +            "parameters": {
      +              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      +              "type": "array"
      +            },
      +            "resultSetOptions": {
      +              "description": "Data API resultSetOptions, forwarded verbatim.",
      +              "type": "object"
      +            },
      +            "schema": {
      +              "description": "Data API schema qualifier, forwarded verbatim.",
      +              "type": "string"
      +            },
      +            "sql": {
      +              "description": "The statement to run. One statement per call. Required unless `transaction` is given.",
      +              "type": "string"
      +            },
      +            "transaction": {
      +              "description": "Hold one transaction across calls: begin (needs write: true) answers a transactionId; send each statement in it with write: true and that transactionId; then commit or rollback with the transactionId. No sql on these calls.",
      +              "enum": [
      +                "begin",
      +                "commit",
      +                "rollback"
      +              ],
      +              "type": "string"
      +            },
      +            "transactionId": {
      +              "description": "Run inside an existing Data API transaction.",
      +              "type": "string"
      +            },
      +            "write": {
      +              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      +              "type": "boolean"
      +            }
      +          },
      +          "required": [
      +            "db"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "aws_sweep"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "tool_name"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "endpoint_id"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "endpoint_id": {
      +              "description": "A catalog endpoint id, used instead of tool_name.",
      +              "type": "string"
      +            },
      +            "includeEnv": {
      +              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      +              "type": "boolean"
      +            },
      +            "instances": {
      +              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": [
      +                "array",
      +                "string"
      +              ]
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied to each instance's result.",
      +              "type": "string"
      +            },
      +            "paginateAll": {
      +              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      +              "type": "boolean"
      +            },
      +            "params": {
      +              "description": "The swept op's OWN params, passed through to each per-instance call.",
      +              "type": "object"
      +            },
      +            "tool_name": {
      +              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "probe"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "targets"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "url"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "bodyContains": {
      +              "description": "Single-target shorthand: substring the body must contain.",
      +              "type": "string"
      +            },
      +            "expectStatus": {
      +              "description": "Single-target shorthand: the exact status to expect.",
      +              "type": "integer"
      +            },
      +            "headers": {
      +              "description": "Single-target shorthand: request headers.",
      +              "type": "object"
      +            },
      +            "method": {
      +              "description": "Single-target shorthand: HTTP method. Default GET.",
      +              "type": "string"
      +            },
      +            "targets": {
      +              "description": "Up to 10 targets per call.",
      +              "items": {
      +                "properties": {
      +                  "bodyContains": {
      +                    "description": "Substring the response body must contain to pass.",
      +                    "type": "string"
      +                  },
      +                  "expectStatus": {
      +                    "description": "Pass only on this exact status; default any 2xx.",
      +                    "type": "integer"
      +                  },
      +                  "headers": {
      +                    "description": "Request headers. Sent, never echoed back in the reply.",
      +                    "type": "object"
      +                  },
      +                  "method": {
      +                    "description": "HTTP method, uppercased by the handler. Default GET.",
      +                    "type": "string"
      +                  },
      +                  "url": {
      +                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "url"
      +                ],
      +                "type": "object"
      +              },
      +              "maxItems": 10,
      +              "type": "array"
      +            },
      +            "url": {
      +              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "logs_tail"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "functionName"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "fn"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "logGroup"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "filter": {
      +              "description": "CloudWatch filter pattern.",
      +              "type": "string"
      +            },
      +            "filterPattern": {
      +              "description": "Alias of filter.",
      +              "type": "string"
      +            },
      +            "fn": {
      +              "description": "Alias of functionName.",
      +              "type": "string"
      +            },
      +            "functionName": {
      +              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      +              "type": "string"
      +            },
      +            "limit": {
      +              "description": "Max events. Default 100, clamped to 1-1000.",
      +              "type": "integer"
      +            },
      +            "logGroup": {
      +              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      +              "type": "string"
      +            },
      +            "minutes": {
      +              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      +              "type": "integer"
      +            },
      +            "region": {
      +              "description": "Region of the log group. Default us-east-1.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "qr_code"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "errorCorrection": {
      +              "description": "How much damage the code survives; higher is denser. Default M.",
      +              "enum": [
      +                "L",
      +                "M",
      +                "Q",
      +                "H"
      +              ],
      +              "type": "string"
      +            },
      +            "format": {
      +              "description": "What to return. Default svg.",
      +              "enum": [
      +                "svg",
      +                "png",
      +                "both"
      +              ],
      +              "type": "string"
      +            },
      +            "label": {
      +              "description": "The SVG's accessible name. Default 'QR code'.",
      +              "type": "string"
      +            },
      +            "sizePx": {
      +              "description": "Width and height in pixels. Default 512.",
      +              "maximum": 2048,
      +              "minimum": 64,
      +              "type": "integer"
      +            },
      +            "value": {
      +              "description": "The link or text the code holds.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "value"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  }
      +]
  22. Changed1 schema field changed
    • changedInput schema / allOf
      Previous value: -[
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "rds_query"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "continueAfterTimeout": {
      -              "description": "Data API flag, forwarded verbatim.",
      -              "type": "boolean"
      -            },
      -            "db": {
      -              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      -              "enum": [
      -                "main",
      -                "aegis",
      -                "analytics",
      -                "pay",
      -                "companies",
      -                "events",
      -                "dating",
      -                "intel",
      -                "studio",
      -                "ledger",
      -                "deals",
      -                "ads",
      -                "chat",
      -                "market",
      -                "referrals",
      -                "notes",
      -                "learn",
      -                "storage",
      -                "give",
      -                "launch",
      -                "communities",
      -                "schedule",
      -                "gift",
      -                "seats",
      -                "connections",
      -                "identity",
      -                "accounts",
      -                "argus",
      -                "plutus",
      -                "payments",
      -                "intelligence",
      -                "heimdall",
      -                "hephaestus",
      -                "brand-deals",
      -                "hermes",
      -                "locker"
      -              ],
      -              "type": "string"
      -            },
      -            "formatRecordsAs": {
      -              "description": "RDS Data API records format; defaults to JSON.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      -              "type": "string"
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied server-side before the rows are returned.",
      -              "type": "string"
      -            },
      -            "parameters": {
      -              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      -              "type": "array"
      -            },
      -            "resultSetOptions": {
      -              "description": "Data API resultSetOptions, forwarded verbatim.",
      -              "type": "object"
      -            },
      -            "schema": {
      -              "description": "Data API schema qualifier, forwarded verbatim.",
      -              "type": "string"
      -            },
      -            "sql": {
      -              "description": "The statement to run. One statement per call.",
      -              "type": "string"
      -            },
      -            "transactionId": {
      -              "description": "Run inside an existing Data API transaction.",
      -              "type": "string"
      -            },
      -            "write": {
      -              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      -              "type": "boolean"
      -            }
      -          },
      -          "required": [
      -            "db",
      -            "sql"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "aws_sweep"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "tool_name"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "endpoint_id"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "endpoint_id": {
      -              "description": "A catalog endpoint id, used instead of tool_name.",
      -              "type": "string"
      -            },
      -            "includeEnv": {
      -              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      -              "type": "boolean"
      -            },
      -            "instances": {
      -              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": [
      -                "array",
      -                "string"
      -              ]
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied to each instance's result.",
      -              "type": "string"
      -            },
      -            "paginateAll": {
      -              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      -              "type": "boolean"
      -            },
      -            "params": {
      -              "description": "The swept op's OWN params, passed through to each per-instance call.",
      -              "type": "object"
      -            },
      -            "tool_name": {
      -              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "probe"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "targets"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "url"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "bodyContains": {
      -              "description": "Single-target shorthand: substring the body must contain.",
      -              "type": "string"
      -            },
      -            "expectStatus": {
      -              "description": "Single-target shorthand: the exact status to expect.",
      -              "type": "integer"
      -            },
      -            "headers": {
      -              "description": "Single-target shorthand: request headers.",
      -              "type": "object"
      -            },
      -            "method": {
      -              "description": "Single-target shorthand: HTTP method. Default GET.",
      -              "type": "string"
      -            },
      -            "targets": {
      -              "description": "Up to 10 targets per call.",
      -              "items": {
      -                "properties": {
      -                  "bodyContains": {
      -                    "description": "Substring the response body must contain to pass.",
      -                    "type": "string"
      -                  },
      -                  "expectStatus": {
      -                    "description": "Pass only on this exact status; default any 2xx.",
      -                    "type": "integer"
      -                  },
      -                  "headers": {
      -                    "description": "Request headers. Sent, never echoed back in the reply.",
      -                    "type": "object"
      -                  },
      -                  "method": {
      -                    "description": "HTTP method, uppercased by the handler. Default GET.",
      -                    "type": "string"
      -                  },
      -                  "url": {
      -                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "url"
      -                ],
      -                "type": "object"
      -              },
      -              "maxItems": 10,
      -              "type": "array"
      -            },
      -            "url": {
      -              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "logs_tail"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "functionName"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "fn"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "logGroup"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "filter": {
      -              "description": "CloudWatch filter pattern.",
      -              "type": "string"
      -            },
      -            "filterPattern": {
      -              "description": "Alias of filter.",
      -              "type": "string"
      -            },
      -            "fn": {
      -              "description": "Alias of functionName.",
      -              "type": "string"
      -            },
      -            "functionName": {
      -              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      -              "type": "string"
      -            },
      -            "limit": {
      -              "description": "Max events. Default 100, clamped to 1-1000.",
      -              "type": "integer"
      -            },
      -            "logGroup": {
      -              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      -              "type": "string"
      -            },
      -            "minutes": {
      -              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      -              "type": "integer"
      -            },
      -            "region": {
      -              "description": "Region of the log group. Default us-east-1.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  }
      -]New value: +[
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "rds_query"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "continueAfterTimeout": {
      +              "description": "Data API flag, forwarded verbatim.",
      +              "type": "boolean"
      +            },
      +            "db": {
      +              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      +              "enum": [
      +                "main",
      +                "aegis",
      +                "analytics",
      +                "pay",
      +                "companies",
      +                "events",
      +                "dating",
      +                "intel",
      +                "studio",
      +                "ledger",
      +                "deals",
      +                "ads",
      +                "chat",
      +                "market",
      +                "referrals",
      +                "notes",
      +                "learn",
      +                "storage",
      +                "give",
      +                "launch",
      +                "communities",
      +                "schedule",
      +                "gift",
      +                "seats",
      +                "connections",
      +                "identity",
      +                "accounts",
      +                "argus",
      +                "plutus",
      +                "payments",
      +                "intelligence",
      +                "heimdall",
      +                "hephaestus",
      +                "brand-deals",
      +                "hermes",
      +                "locker"
      +              ],
      +              "type": "string"
      +            },
      +            "formatRecordsAs": {
      +              "description": "RDS Data API records format; defaults to JSON.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      +              "type": "string"
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied server-side before the rows are returned.",
      +              "type": "string"
      +            },
      +            "parameters": {
      +              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      +              "type": "array"
      +            },
      +            "resultSetOptions": {
      +              "description": "Data API resultSetOptions, forwarded verbatim.",
      +              "type": "object"
      +            },
      +            "schema": {
      +              "description": "Data API schema qualifier, forwarded verbatim.",
      +              "type": "string"
      +            },
      +            "sql": {
      +              "description": "The statement to run. One statement per call.",
      +              "type": "string"
      +            },
      +            "transactionId": {
      +              "description": "Run inside an existing Data API transaction.",
      +              "type": "string"
      +            },
      +            "write": {
      +              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      +              "type": "boolean"
      +            }
      +          },
      +          "required": [
      +            "db",
      +            "sql"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "aws_sweep"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "tool_name"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "endpoint_id"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "endpoint_id": {
      +              "description": "A catalog endpoint id, used instead of tool_name.",
      +              "type": "string"
      +            },
      +            "includeEnv": {
      +              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      +              "type": "boolean"
      +            },
      +            "instances": {
      +              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": [
      +                "array",
      +                "string"
      +              ]
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied to each instance's result.",
      +              "type": "string"
      +            },
      +            "paginateAll": {
      +              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      +              "type": "boolean"
      +            },
      +            "params": {
      +              "description": "The swept op's OWN params, passed through to each per-instance call.",
      +              "type": "object"
      +            },
      +            "tool_name": {
      +              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "probe"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "targets"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "url"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "bodyContains": {
      +              "description": "Single-target shorthand: substring the body must contain.",
      +              "type": "string"
      +            },
      +            "expectStatus": {
      +              "description": "Single-target shorthand: the exact status to expect.",
      +              "type": "integer"
      +            },
      +            "headers": {
      +              "description": "Single-target shorthand: request headers.",
      +              "type": "object"
      +            },
      +            "method": {
      +              "description": "Single-target shorthand: HTTP method. Default GET.",
      +              "type": "string"
      +            },
      +            "targets": {
      +              "description": "Up to 10 targets per call.",
      +              "items": {
      +                "properties": {
      +                  "bodyContains": {
      +                    "description": "Substring the response body must contain to pass.",
      +                    "type": "string"
      +                  },
      +                  "expectStatus": {
      +                    "description": "Pass only on this exact status; default any 2xx.",
      +                    "type": "integer"
      +                  },
      +                  "headers": {
      +                    "description": "Request headers. Sent, never echoed back in the reply.",
      +                    "type": "object"
      +                  },
      +                  "method": {
      +                    "description": "HTTP method, uppercased by the handler. Default GET.",
      +                    "type": "string"
      +                  },
      +                  "url": {
      +                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "url"
      +                ],
      +                "type": "object"
      +              },
      +              "maxItems": 10,
      +              "type": "array"
      +            },
      +            "url": {
      +              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "logs_tail"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "functionName"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "fn"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "logGroup"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "filter": {
      +              "description": "CloudWatch filter pattern.",
      +              "type": "string"
      +            },
      +            "filterPattern": {
      +              "description": "Alias of filter.",
      +              "type": "string"
      +            },
      +            "fn": {
      +              "description": "Alias of functionName.",
      +              "type": "string"
      +            },
      +            "functionName": {
      +              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      +              "type": "string"
      +            },
      +            "limit": {
      +              "description": "Max events. Default 100, clamped to 1-1000.",
      +              "type": "integer"
      +            },
      +            "logGroup": {
      +              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      +              "type": "string"
      +            },
      +            "minutes": {
      +              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      +              "type": "integer"
      +            },
      +            "region": {
      +              "description": "Region of the log group. Default us-east-1.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "qr_code"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "errorCorrection": {
      +              "description": "How much damage the code survives; higher is denser. Default M.",
      +              "enum": [
      +                "L",
      +                "M",
      +                "Q",
      +                "H"
      +              ],
      +              "type": "string"
      +            },
      +            "format": {
      +              "description": "What to return. Default svg.",
      +              "enum": [
      +                "svg",
      +                "png",
      +                "both"
      +              ],
      +              "type": "string"
      +            },
      +            "label": {
      +              "description": "The SVG's accessible name. Default 'QR code'.",
      +              "type": "string"
      +            },
      +            "sizePx": {
      +              "description": "Width and height in pixels. Default 512.",
      +              "maximum": 2048,
      +              "minimum": 64,
      +              "type": "integer"
      +            },
      +            "value": {
      +              "description": "The link or text the code holds.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "value"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  }
      +]
  23. Changed1 schema field changed
    • changedInput schema / properties / workflow / description
      Previous value: -"A saved workflow name, or an inline { steps: [{id, service, tool, params}], output } to chain multiple ops in one call."New value: +"A saved workflow name, or an inline { steps: [{id, service, tool, params}], output } to chain multiple ops in one call. Each call has a ~24s time budget (the HTTP endpoint's 29s hard ceiling) - practically ~20-30 steps at typical per-step latency, fewer for a heavier op. A batch that would run past it STOPS STARTING new steps (never mid-step) and answers 200 with {ok:false, partial:true, stopped_reason:'time_budget', steps, stoppedAtIndex, stoppedAtStep, trace, output} carrying every step that DID run - never a bare 500. Resume by re-sending only the remaining steps (from stoppedAtIndex on) as a fresh inline workflow; do not resend the whole batch, or an already-run non-idempotent step runs twice."
  24. Changed1 schema field changed
    • changedInput schema / allOf
      Previous value: -[
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "rds_query"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "properties": {
      -            "continueAfterTimeout": {
      -              "description": "Data API flag, forwarded verbatim.",
      -              "type": "boolean"
      -            },
      -            "db": {
      -              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      -              "enum": [
      -                "main",
      -                "aegis",
      -                "analytics",
      -                "pay",
      -                "companies",
      -                "events",
      -                "dating",
      -                "intel",
      -                "studio",
      -                "ledger",
      -                "deals",
      -                "ads",
      -                "chat",
      -                "market",
      -                "referrals",
      -                "notes",
      -                "learn",
      -                "storage",
      -                "give",
      -                "launch",
      -                "communities",
      -                "schedule",
      -                "gift",
      -                "seats",
      -                "connections",
      -                "identity",
      -                "accounts",
      -                "argus",
      -                "plutus",
      -                "payments",
      -                "intelligence",
      -                "heimdall",
      -                "hephaestus",
      -                "brand-deals",
      -                "hermes",
      -                "locker"
      -              ],
      -              "type": "string"
      -            },
      -            "formatRecordsAs": {
      -              "description": "RDS Data API records format; defaults to JSON.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      -              "type": "string"
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied server-side before the rows are returned.",
      -              "type": "string"
      -            },
      -            "parameters": {
      -              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      -              "type": "array"
      -            },
      -            "resultSetOptions": {
      -              "description": "Data API resultSetOptions, forwarded verbatim.",
      -              "type": "object"
      -            },
      -            "schema": {
      -              "description": "Data API schema qualifier, forwarded verbatim.",
      -              "type": "string"
      -            },
      -            "sql": {
      -              "description": "The statement to run. One statement per call.",
      -              "type": "string"
      -            },
      -            "transactionId": {
      -              "description": "Run inside an existing Data API transaction.",
      -              "type": "string"
      -            },
      -            "write": {
      -              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      -              "type": "boolean"
      -            }
      -          },
      -          "required": [
      -            "db",
      -            "sql"
      -          ],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "aws_sweep"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "tool_name"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "endpoint_id"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "endpoint_id": {
      -              "description": "A catalog endpoint id, used instead of tool_name.",
      -              "type": "string"
      -            },
      -            "includeEnv": {
      -              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      -              "type": "boolean"
      -            },
      -            "instances": {
      -              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": [
      -                "array",
      -                "string"
      -              ]
      -            },
      -            "outputFilter": {
      -              "description": "JMESPath subset applied to each instance's result.",
      -              "type": "string"
      -            },
      -            "paginateAll": {
      -              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      -              "type": "boolean"
      -            },
      -            "params": {
      -              "description": "The swept op's OWN params, passed through to each per-instance call.",
      -              "type": "object"
      -            },
      -            "tool_name": {
      -              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query are refused as not sweepable.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "probe"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "targets"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "url"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "bodyContains": {
      -              "description": "Single-target shorthand: substring the body must contain.",
      -              "type": "string"
      -            },
      -            "expectStatus": {
      -              "description": "Single-target shorthand: the exact status to expect.",
      -              "type": "integer"
      -            },
      -            "headers": {
      -              "description": "Single-target shorthand: request headers.",
      -              "type": "object"
      -            },
      -            "method": {
      -              "description": "Single-target shorthand: HTTP method. Default GET.",
      -              "type": "string"
      -            },
      -            "targets": {
      -              "description": "Up to 10 targets per call.",
      -              "items": {
      -                "properties": {
      -                  "bodyContains": {
      -                    "description": "Substring the response body must contain to pass.",
      -                    "type": "string"
      -                  },
      -                  "expectStatus": {
      -                    "description": "Pass only on this exact status; default any 2xx.",
      -                    "type": "integer"
      -                  },
      -                  "headers": {
      -                    "description": "Request headers. Sent, never echoed back in the reply.",
      -                    "type": "object"
      -                  },
      -                  "method": {
      -                    "description": "HTTP method, uppercased by the handler. Default GET.",
      -                    "type": "string"
      -                  },
      -                  "url": {
      -                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "url"
      -                ],
      -                "type": "object"
      -              },
      -              "maxItems": 10,
      -              "type": "array"
      -            },
      -            "url": {
      -              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  },
      -  {
      -    "if": {
      -      "properties": {
      -        "tool_name": {
      -          "const": "logs_tail"
      -        }
      -      },
      -      "required": [
      -        "tool_name"
      -      ]
      -    },
      -    "then": {
      -      "properties": {
      -        "params": {
      -          "anyOf": [
      -            {
      -              "required": [
      -                "functionName"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "fn"
      -              ]
      -            },
      -            {
      -              "required": [
      -                "logGroup"
      -              ]
      -            }
      -          ],
      -          "properties": {
      -            "filter": {
      -              "description": "CloudWatch filter pattern.",
      -              "type": "string"
      -            },
      -            "filterPattern": {
      -              "description": "Alias of filter.",
      -              "type": "string"
      -            },
      -            "fn": {
      -              "description": "Alias of functionName.",
      -              "type": "string"
      -            },
      -            "functionName": {
      -              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      -              "type": "string"
      -            },
      -            "instance": {
      -              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      -              "type": "string"
      -            },
      -            "limit": {
      -              "description": "Max events. Default 100, clamped to 1-1000.",
      -              "type": "integer"
      -            },
      -            "logGroup": {
      -              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      -              "type": "string"
      -            },
      -            "minutes": {
      -              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      -              "type": "integer"
      -            },
      -            "region": {
      -              "description": "Region of the log group. Default us-east-1.",
      -              "type": "string"
      -            }
      -          },
      -          "required": [],
      -          "type": "object"
      -        }
      -      }
      -    }
      -  }
      -]New value: +[
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "rds_query"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "continueAfterTimeout": {
      +              "description": "Data API flag, forwarded verbatim.",
      +              "type": "boolean"
      +            },
      +            "db": {
      +              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      +              "enum": [
      +                "main",
      +                "aegis",
      +                "analytics",
      +                "pay",
      +                "companies",
      +                "events",
      +                "dating",
      +                "intel",
      +                "studio",
      +                "ledger",
      +                "deals",
      +                "ads",
      +                "chat",
      +                "market",
      +                "referrals",
      +                "notes",
      +                "learn",
      +                "storage",
      +                "give",
      +                "launch",
      +                "communities",
      +                "schedule",
      +                "gift",
      +                "seats",
      +                "connections",
      +                "identity",
      +                "accounts",
      +                "argus",
      +                "plutus",
      +                "payments",
      +                "intelligence",
      +                "heimdall",
      +                "hephaestus",
      +                "brand-deals",
      +                "hermes",
      +                "locker"
      +              ],
      +              "type": "string"
      +            },
      +            "formatRecordsAs": {
      +              "description": "RDS Data API records format; defaults to JSON.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      +              "type": "string"
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied server-side before the rows are returned.",
      +              "type": "string"
      +            },
      +            "parameters": {
      +              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      +              "type": "array"
      +            },
      +            "resultSetOptions": {
      +              "description": "Data API resultSetOptions, forwarded verbatim.",
      +              "type": "object"
      +            },
      +            "schema": {
      +              "description": "Data API schema qualifier, forwarded verbatim.",
      +              "type": "string"
      +            },
      +            "sql": {
      +              "description": "The statement to run. One statement per call.",
      +              "type": "string"
      +            },
      +            "transactionId": {
      +              "description": "Run inside an existing Data API transaction.",
      +              "type": "string"
      +            },
      +            "write": {
      +              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      +              "type": "boolean"
      +            }
      +          },
      +          "required": [
      +            "db",
      +            "sql"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "aws_sweep"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "tool_name"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "endpoint_id"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "endpoint_id": {
      +              "description": "A catalog endpoint id, used instead of tool_name.",
      +              "type": "string"
      +            },
      +            "includeEnv": {
      +              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      +              "type": "boolean"
      +            },
      +            "instances": {
      +              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": [
      +                "array",
      +                "string"
      +              ]
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied to each instance's result.",
      +              "type": "string"
      +            },
      +            "paginateAll": {
      +              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      +              "type": "boolean"
      +            },
      +            "params": {
      +              "description": "The swept op's OWN params, passed through to each per-instance call.",
      +              "type": "object"
      +            },
      +            "tool_name": {
      +              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query return op_not_sweepable instead of running (rds_query pins its own instance; sweeping a sweep recurses).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "probe"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "targets"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "url"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "bodyContains": {
      +              "description": "Single-target shorthand: substring the body must contain.",
      +              "type": "string"
      +            },
      +            "expectStatus": {
      +              "description": "Single-target shorthand: the exact status to expect.",
      +              "type": "integer"
      +            },
      +            "headers": {
      +              "description": "Single-target shorthand: request headers.",
      +              "type": "object"
      +            },
      +            "method": {
      +              "description": "Single-target shorthand: HTTP method. Default GET.",
      +              "type": "string"
      +            },
      +            "targets": {
      +              "description": "Up to 10 targets per call.",
      +              "items": {
      +                "properties": {
      +                  "bodyContains": {
      +                    "description": "Substring the response body must contain to pass.",
      +                    "type": "string"
      +                  },
      +                  "expectStatus": {
      +                    "description": "Pass only on this exact status; default any 2xx.",
      +                    "type": "integer"
      +                  },
      +                  "headers": {
      +                    "description": "Request headers. Sent, never echoed back in the reply.",
      +                    "type": "object"
      +                  },
      +                  "method": {
      +                    "description": "HTTP method, uppercased by the handler. Default GET.",
      +                    "type": "string"
      +                  },
      +                  "url": {
      +                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "url"
      +                ],
      +                "type": "object"
      +              },
      +              "maxItems": 10,
      +              "type": "array"
      +            },
      +            "url": {
      +              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "logs_tail"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "functionName"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "fn"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "logGroup"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "filter": {
      +              "description": "CloudWatch filter pattern.",
      +              "type": "string"
      +            },
      +            "filterPattern": {
      +              "description": "Alias of filter.",
      +              "type": "string"
      +            },
      +            "fn": {
      +              "description": "Alias of functionName.",
      +              "type": "string"
      +            },
      +            "functionName": {
      +              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      +              "type": "string"
      +            },
      +            "limit": {
      +              "description": "Max events. Default 100, clamped to 1-1000.",
      +              "type": "integer"
      +            },
      +            "logGroup": {
      +              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      +              "type": "string"
      +            },
      +            "minutes": {
      +              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      +              "type": "integer"
      +            },
      +            "region": {
      +              "description": "Region of the log group. Default us-east-1.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  }
      +]
  25. Changed1 schema field changed
    • addedInput schema / allOf
      Added value: +[
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "rds_query"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "properties": {
      +            "continueAfterTimeout": {
      +              "description": "Data API flag, forwarded verbatim.",
      +              "type": "boolean"
      +            },
      +            "db": {
      +              "description": "The plane database to query, by NAME (never an ARN) - lowercase. The last twelve are aliases of an earlier name (connections→main, accounts/identity→aegis, payments/plutus→pay, argus→analytics, intelligence/heimdall→intel, hephaestus→studio, brand-deals→deals, hermes→chat, locker→storage).",
      +              "enum": [
      +                "main",
      +                "aegis",
      +                "analytics",
      +                "pay",
      +                "companies",
      +                "events",
      +                "dating",
      +                "intel",
      +                "studio",
      +                "ledger",
      +                "deals",
      +                "ads",
      +                "chat",
      +                "market",
      +                "referrals",
      +                "notes",
      +                "learn",
      +                "storage",
      +                "give",
      +                "launch",
      +                "communities",
      +                "schedule",
      +                "gift",
      +                "seats",
      +                "connections",
      +                "identity",
      +                "accounts",
      +                "argus",
      +                "plutus",
      +                "payments",
      +                "intelligence",
      +                "heimdall",
      +                "hephaestus",
      +                "brand-deals",
      +                "hermes",
      +                "locker"
      +              ],
      +              "type": "string"
      +            },
      +            "formatRecordsAs": {
      +              "description": "RDS Data API records format; defaults to JSON.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Override the AWS vault instance the Data API call is signed with; defaults to the target's own host.",
      +              "type": "string"
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied server-side before the rows are returned.",
      +              "type": "string"
      +            },
      +            "parameters": {
      +              "description": "RDS Data API typed parameters ([{name, value:{stringValue|longValue|…}}]) for a parameterised sql.",
      +              "type": "array"
      +            },
      +            "resultSetOptions": {
      +              "description": "Data API resultSetOptions, forwarded verbatim.",
      +              "type": "object"
      +            },
      +            "schema": {
      +              "description": "Data API schema qualifier, forwarded verbatim.",
      +              "type": "string"
      +            },
      +            "sql": {
      +              "description": "The statement to run. One statement per call.",
      +              "type": "string"
      +            },
      +            "transactionId": {
      +              "description": "Run inside an existing Data API transaction.",
      +              "type": "string"
      +            },
      +            "write": {
      +              "description": "Default false (read-only). true permits a write, and the statement is recorded in the write audit.",
      +              "type": "boolean"
      +            }
      +          },
      +          "required": [
      +            "db",
      +            "sql"
      +          ],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "aws_sweep"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "tool_name"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "endpoint_id"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "endpoint_id": {
      +              "description": "A catalog endpoint id, used instead of tool_name.",
      +              "type": "string"
      +            },
      +            "includeEnv": {
      +              "description": "Include a Lambda's non-sensitive environment values in the reply.",
      +              "type": "boolean"
      +            },
      +            "instances": {
      +              "description": "Connected AWS instance names to sweep. Omit, or pass the string 'all-aws', for every connected account.",
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": [
      +                "array",
      +                "string"
      +              ]
      +            },
      +            "outputFilter": {
      +              "description": "JMESPath subset applied to each instance's result.",
      +              "type": "string"
      +            },
      +            "paginateAll": {
      +              "description": "Follow NextToken/Marker server-side (cap 20 pages / 5MB).",
      +              "type": "boolean"
      +            },
      +            "params": {
      +              "description": "The swept op's OWN params, passed through to each per-instance call.",
      +              "type": "object"
      +            },
      +            "tool_name": {
      +              "description": "The aws catalog op to run on every account (e.g. sts_get_caller_identity). aws_sweep, probe and rds_query are refused as not sweepable.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "probe"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "targets"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "url"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "bodyContains": {
      +              "description": "Single-target shorthand: substring the body must contain.",
      +              "type": "string"
      +            },
      +            "expectStatus": {
      +              "description": "Single-target shorthand: the exact status to expect.",
      +              "type": "integer"
      +            },
      +            "headers": {
      +              "description": "Single-target shorthand: request headers.",
      +              "type": "object"
      +            },
      +            "method": {
      +              "description": "Single-target shorthand: HTTP method. Default GET.",
      +              "type": "string"
      +            },
      +            "targets": {
      +              "description": "Up to 10 targets per call.",
      +              "items": {
      +                "properties": {
      +                  "bodyContains": {
      +                    "description": "Substring the response body must contain to pass.",
      +                    "type": "string"
      +                  },
      +                  "expectStatus": {
      +                    "description": "Pass only on this exact status; default any 2xx.",
      +                    "type": "integer"
      +                  },
      +                  "headers": {
      +                    "description": "Request headers. Sent, never echoed back in the reply.",
      +                    "type": "object"
      +                  },
      +                  "method": {
      +                    "description": "HTTP method, uppercased by the handler. Default GET.",
      +                    "type": "string"
      +                  },
      +                  "url": {
      +                    "description": "https/http URL to request. Private/loopback/link-local hosts refuse.",
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "url"
      +                ],
      +                "type": "object"
      +              },
      +              "maxItems": 10,
      +              "type": "array"
      +            },
      +            "url": {
      +              "description": "Single-target shorthand: this object IS the target (with method/expectStatus/…).",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  },
      +  {
      +    "if": {
      +      "properties": {
      +        "tool_name": {
      +          "const": "logs_tail"
      +        }
      +      },
      +      "required": [
      +        "tool_name"
      +      ]
      +    },
      +    "then": {
      +      "properties": {
      +        "params": {
      +          "anyOf": [
      +            {
      +              "required": [
      +                "functionName"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "fn"
      +              ]
      +            },
      +            {
      +              "required": [
      +                "logGroup"
      +              ]
      +            }
      +          ],
      +          "properties": {
      +            "filter": {
      +              "description": "CloudWatch filter pattern.",
      +              "type": "string"
      +            },
      +            "filterPattern": {
      +              "description": "Alias of filter.",
      +              "type": "string"
      +            },
      +            "fn": {
      +              "description": "Alias of functionName.",
      +              "type": "string"
      +            },
      +            "functionName": {
      +              "description": "Lambda function name; its log group is /aws/lambda/<name> unless configured.",
      +              "type": "string"
      +            },
      +            "instance": {
      +              "description": "Connected AWS instance to read from. Default 'Main.Connections'.",
      +              "type": "string"
      +            },
      +            "limit": {
      +              "description": "Max events. Default 100, clamped to 1-1000.",
      +              "type": "integer"
      +            },
      +            "logGroup": {
      +              "description": "Explicit CloudWatch log group, instead of deriving one from functionName.",
      +              "type": "string"
      +            },
      +            "minutes": {
      +              "description": "How far back to read. Default 15, clamped to 1-129600 (90 days).",
      +              "type": "integer"
      +            },
      +            "region": {
      +              "description": "Region of the log group. Default us-east-1.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [],
      +          "type": "object"
      +        }
      +      }
      +    }
      +  }
      +]
  26. Changed3 schema fields changed
    • addedInput schema / properties / service / description
      Added value: +"With `tool_name`, the first-party plane or connected service to run against (e.g. \"aws\", \"studio\", \"notes\", \"pay\"). Use this pair when you know the op by name; use `endpoint_id` when you have one from connections_search_catalog."
    • addedInput schema / properties / tool_name / description
      Added value: +"With `service`, the op to run (e.g. \"rds_query\"). On its OWN - no endpoint_id and no service - it reaches a tool on this server directly, which is how a client whose tool list is out of date still calls a new tool."
    • addedInput schema / required
      Added value: +[]
  27. Changed1 schema field changed
    • changedInput schema / properties / project / description
      Previous value: -"Which COMPANY/workspace a Studio console call acts on (Studio's ?project=) - a company id, project id or ref; omit for your default. Accepted here or inside `params`. A ref this credential cannot reach is REFUSED (404 project_not_found) and nothing is created - it is never quietly relocated to your default project."New value: +"Which COMPANY/workspace a Studio console call acts on (Studio's ?project=) - a company id, project id or ref; omit for your default. Accepted here or inside `params`. A ref this account cannot reach returns 404 project_not_found and nothing is created."
  28. First observed

TDQS

Score is being calculated.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources