# MCP: client-config

Source: <https://telegafirst.com/docs/mcp-client-config>
Locale: ru
releaseGitSha: c9a428d902de0b479a981e43774f38b9ec077ed7
sourceContentDigest: b5ed6be67fd7ce58e9834200d4f6c7b7ad021b5c61b62f124fa6e6df98af04f0
Version: 1

# MCP: client-config

Это определения инструментов из текущего ToolRegistry, включая полные inputSchema/outputSchema, scope, required\_scopes (ALL), risk и версию платформы. Наличие определения не означает, что инструмент уже установлен вашим хостом или разрешён вашим credential. Обновляйте tools/list после изменения бизнеса, readiness и прав. Progressive disclosure через load\_domain/describe\_tool и существующий meta-dispatch описаны в [MCP-руководстве](https://telegafirst.com/docs/mcp-guide). [Scopes и права](https://telegafirst.com/docs/scopes-and-permissions) применяются при вызове; risk не заменяет согласие и отдельные требования денежной операции. JSON ниже — схема, а не успешный результат вызова.

## connect\_channel

Connect an additional customer channel using its credentials. Never echo credentials in results.

```json
{
  "description": "Connect an additional customer channel using its credentials. Never echo credentials in results.",
  "domain": "client-config",
  "inputSchema": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "oneOf": [
      {
        "additionalProperties": false,
        "description": "Value for input option.",
        "properties": {
          "bot_token": {
            "description": "Value for bot token.",
            "maxLength": 1024,
            "minLength": 1,
            "type": "string"
          },
          "channel": {
            "const": "max",
            "description": "Value for channel.",
            "type": "string"
          },
          "idempotency_key": {
            "description": "Value for idempotency key.",
            "maxLength": 128,
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "channel",
          "bot_token",
          "idempotency_key"
        ],
        "type": "object"
      },
      {
        "additionalProperties": false,
        "description": "Value for input option.",
        "properties": {
          "access_token": {
            "description": "Value for access token.",
            "maxLength": 1024,
            "minLength": 1,
            "type": "string"
          },
          "channel": {
            "const": "vk",
            "description": "Value for channel.",
            "type": "string"
          },
          "group_id": {
            "description": "Value for group id.",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991,
            "type": "integer"
          },
          "idempotency_key": {
            "description": "Value for idempotency key.",
            "maxLength": 128,
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "channel",
          "access_token",
          "group_id",
          "idempotency_key"
        ],
        "type": "object"
      }
    ]
  },
  "name": "connect_channel",
  "outputSchema": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "additionalProperties": false,
    "properties": {
      "active_slug": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ]
      },
      "billing": {
        "additionalProperties": false,
        "properties": {
          "auto_renew": {
            "type": "boolean"
          },
          "grace_until": {
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
            "type": "string"
          },
          "next_charge_at": {
            "anyOf": [
              {
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "period_end": {
            "anyOf": [
              {
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "plan": {
            "type": "string"
          },
          "status": {
            "enum": [
              "free",
              "trial",
              "active",
              "grace",
              "expired",
              "cancelled"
            ],
            "type": "string"
          },
          "trial_ends_at": {
            "anyOf": [
              {
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "trial_started_at": {
            "anyOf": [
              {
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "plan",
          "period_end",
          "auto_renew",
          "next_charge_at"
        ],
        "type": "object"
      },
      "body": {
        "additionalProperties": false,
        "properties": {
          "channel": {
            "enum": [
              "max",
              "vk"
            ],
            "type": "string"
          },
          "operation_key": {
            "maxLength": 128,
            "minLength": 1,
            "type": "string"
          },
          "reason": {
            "enum": [
              "credentials_invalid",
              "registration_failed",
              "reconciliation_required"
            ],
            "type": "string"
          },
          "retry_after_seconds": {
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991,
            "type": "integer"
          },
          "status": {
            "enum": [
              "pending",
              "ready",
              "failed"
            ],
            "type": "string"
          }
        },
        "required": [
          "channel",
          "status",
          "operation_key"
        ],
        "type": "object"
      },
      "journey": {
        "additionalProperties": false,
        "properties": {
          "ai_preferences": {
            "anyOf": [
              {
                "additionalProperties": false,
                "properties": {
                  "app": {
                    "enum": [
                      "claude",
                      "chatgpt",
                      "codex",
                      "claude-code",
                      "other"
                    ],
                    "type": "string"
                  },
                  "confirmed_at": {
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                    "type": "string"
                  },
                  "device": {
                    "enum": [
                      "desktop",
                      "web",
                      "phone"
                    ],
                    "type": "string"
                  },
                  "other_app": {
                    "maxLength": 80,
                    "minLength": 1,
                    "type": "string"
                  },
                  "questions_revision": {
                    "const": 1,
                    "type": "number"
                  },
                  "subscription": {
                    "enum": [
                      "paid",
                      "free"
                    ],
                    "type": "string"
                  }
                },
                "required": [
                  "device",
                  "app",
                  "subscription",
                  "questions_revision",
                  "confirmed_at"
                ],
                "type": "object"
              },
              {
                "type": "null"
              }
            ]
          },
          "bonus_state": {
            "enum": [
              "not_eligible",
              "pending",
              "settled"
            ],
            "type": "string"
          },
          "completed": {
            "type": "boolean"
          },
          "completed_at": {
            "anyOf": [
              {
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "decisions": {
            "additionalProperties": false,
            "properties": {
              "first_payment_deferred_at": {
                "anyOf": [
                  {
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                    "type": "string"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "tariff_deferred_at": {
                "anyOf": [
                  {
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                    "type": "string"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "first_payment_deferred_at",
              "tariff_deferred_at"
            ],
            "type": "object"
          },
          "first_payment": {
            "anyOf": [
              {
                "additionalProperties": false,
                "properties": {
                  "amount": {
                    "maxLength": 32,
                    "pattern": "^\\d+(?:\\.\\d{1,8})?$",
                    "type": "string"
                  },
                  "currency": {
                    "maxLength": 16,
                    "minLength": 1,
                    "type": "string"
                  },
                  "is_active": {
                    "const": true,
                    "type": "boolean"
                  },
                  "payload_hash": {
                    "pattern": "^[a-f0-9]{64}$",
                    "type": "string"
                  },
                  "phase": {
                    "enum": [
                      "accepted",
                      "price_committed",
                      "card_pending",
                      "sent"
                    ],
                    "type": "string"
                  },
                  "preparation_id": {
                    "maxLength": 128,
                    "minLength": 1,
                    "type": "string"
                  },
                  "product_seq_num": {
                    "exclusiveMinimum": 0,
                    "maximum": 9007199254740991,
                    "type": "integer"
                  },
                  "provider": {
                    "enum": [
                      "robokassa",
                      "yookassa",
                      "stars",
                      "cryptobot",
                      "stripe",
                      "paypal",
                      "paddle",
                      "tinkoff",
                      "prodamus"
                    ],
                    "type": "string"
                  },
                  "purchase_zone": {
                    "enum": [
                      "ru",
                      "com"
                    ],
                    "type": "string"
                  },
                  "title": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "required": [
                  "phase",
                  "product_seq_num",
                  "title",
                  "provider",
                  "amount",
                  "currency",
                  "purchase_zone",
                  "is_active",
                  "preparation_id",
                  "payload_hash"
                ],
                "type": "object"
              },
              {
                "type": "null"
              }
            ]
          },
          "infrastructure_ready": {
            "type": "boolean"
          },
          "provider_readiness": {
            "anyOf": [
              {
                "additionalProperties": false,
                "properties": {
                  "authentication": {
                    "enum": [
                      "verified",
                      "failed",
                      "unknown"
                    ],
                    "type": "string"
                  },
                  "checked_at": {
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                    "type": "string"
                  },
                  "checkout_creation": {
                    "enum": [
                      "verified",
                      "failed",
                      "unknown"
                    ],
                    "type": "string"
                  },
                  "configuration_confirmation_token": {
                    "anyOf": [
                      {
                        "pattern": "^[a-f0-9]{64}$",
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "configuration_fingerprint": {
                    "pattern": "^[a-f0-9]{64}$",
                    "type": "string"
                  },
                  "limitations": {
                    "items": {
                      "type": "string"
                    },
                    "type": "array"
                  },
                  "live_payment": {
                    "enum": [
                      "verified",
                      "failed",
                      "unknown"
                    ],
                    "type": "string"
                  },
                  "next_action": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "production_environment": {
                    "enum": [
                      "verified",
                      "failed",
                      "unknown"
                    ],
                    "type": "string"
                  },
                  "provider": {
                    "enum": [
                      "robokassa",
                      "yookassa",
                      "stars",
                      "cryptobot",
                      "stripe",
                      "paypal",
                      "paddle",
                      "tinkoff",
                      "prodamus"
                    ],
                    "type": "string"
                  },
                  "ready": {
                    "type": "boolean"
                  },
                  "webhook_configuration": {
                    "enum": [
                      "verified",
                      "failed",
                      "unknown"
                    ],
                    "type": "string"
                  },
                  "webhook_configuration_assurance": {
                    "anyOf": [
                      {
                        "enum": [
                          "provider_api",
                          "signed_delivery",
                          "owner_attested"
                        ],
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "webhook_delivery": {
                    "enum": [
                      "verified",
                      "failed",
                      "unknown"
                    ],
                    "type": "string"
                  }
                },
                "required": [
                  "provider",
                  "configuration_fingerprint",
                  "checked_at",
                  "ready",
                  "authentication",
                  "production_environment",
                  "checkout_creation",
                  "webhook_configuration",
                  "webhook_delivery",
                  "live_payment",
                  "limitations",
                  "next_action"
                ],
                "type": "object"
              },
              {
                "type": "null"
              }
            ]
          },
          "revision": {
            "const": 1,
            "type": "number"
          },
          "rewards": {
            "additionalProperties": false,
            "properties": {
              "tokens_granted": {
                "maximum": 9007199254740991,
                "minimum": 0,
                "type": "integer"
              },
              "tokens_remaining": {
                "maximum": 9007199254740991,
                "minimum": 0,
                "type": "integer"
              },
              "trial_days": {
                "minimum": 0,
                "type": "number"
              }
            },
            "required": [
              "tokens_granted",
              "tokens_remaining",
              "trial_days"
            ],
            "type": "object"
          },
          "test_completed": {
            "type": "boolean"
          },
          "test_required": {
            "type": "boolean"
          }
        },
        "required": [
          "revision",
          "completed",
          "completed_at",
          "infrastructure_ready",
          "test_required",
          "test_completed",
          "bonus_state",
          "ai_preferences",
          "decisions",
          "provider_readiness"
        ],
        "type": "object"
      },
      "next_action": {
        "additionalProperties": false,
        "properties": {
          "collect": {
            "items": {
              "additionalProperties": false,
              "properties": {
                "field": {
                  "type": "string"
                },
                "hint": {
                  "type": "string"
                }
              },
              "required": [
                "field",
                "hint"
              ],
              "type": "object"
            },
            "type": "array"
          },
          "execution": {
            "additionalProperties": false,
            "properties": {
              "arguments": {
                "additionalProperties": {},
                "propertyNames": {
                  "type": "string"
                },
                "type": "object"
              },
              "business_slug": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "continue_with": {
                "additionalProperties": false,
                "properties": {
                  "arguments": {
                    "additionalProperties": {},
                    "propertyNames": {
                      "type": "string"
                    },
                    "type": "object"
                  },
                  "say_to_user": {
                    "minLength": 1,
                    "type": "string"
                  },
                  "tool": {
                    "anyOf": [
                      {
                        "const": "get_onboarding_state",
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "required": [
                  "tool",
                  "arguments"
                ],
                "type": "object"
              },
              "executor": {
                "enum": [
                  "agent",
                  "owner",
                  "server"
                ],
                "type": "string"
              },
              "prepared_execute": {
                "additionalProperties": false,
                "properties": {
                  "arguments_fields": {
                    "prefixItems": [
                      {
                        "const": "preparation_id",
                        "type": "string"
                      },
                      {
                        "const": "payload_hash",
                        "type": "string"
                      }
                    ],
                    "type": "array"
                  },
                  "requires_human_review": {
                    "const": true,
                    "type": "boolean"
                  },
                  "tool": {
                    "const": "onboarding_execute_first_payment",
                    "type": "string"
                  }
                },
                "required": [
                  "tool",
                  "requires_human_review",
                  "arguments_fields"
                ],
                "type": "object"
              },
              "recovery": {
                "anyOf": [
                  {
                    "additionalProperties": false,
                    "properties": {
                      "arguments": {
                        "additionalProperties": {},
                        "propertyNames": {
                          "type": "string"
                        },
                        "type": "object"
                      },
                      "say_to_user": {
                        "type": "string"
                      },
                      "tool": {
                        "anyOf": [
                          {
                            "minLength": 1,
                            "type": "string"
                          },
                          {
                            "type": "null"
                          }
                        ]
                      }
                    },
                    "required": [
                      "tool",
                      "arguments",
                      "say_to_user"
                    ],
                    "type": "object"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "requires": {
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              "step": {
                "minLength": 1,
                "type": "string"
              },
              "success": {
                "additionalProperties": false,
                "properties": {
                  "fact": {
                    "minLength": 1,
                    "type": "string"
                  }
                },
                "required": [
                  "fact"
                ],
                "type": "object"
              },
              "tool": {
                "anyOf": [
                  {
                    "minLength": 1,
                    "type": "string"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "wait": {
                "anyOf": [
                  {
                    "additionalProperties": false,
                    "properties": {
                      "retry_after_seconds": {
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991,
                        "type": "integer"
                      },
                      "stop_when": {
                        "minLength": 1,
                        "type": "string"
                      }
                    },
                    "required": [
                      "retry_after_seconds",
                      "stop_when"
                    ],
                    "type": "object"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "business_slug",
              "step",
              "executor",
              "tool",
              "arguments",
              "requires",
              "success",
              "wait",
              "recovery",
              "continue_with"
            ],
            "type": "object"
          },
          "goal": {
            "enum": [
              "address",
              "site",
              "bot",
              "supergroups_create",
              "supergroups_admin",
              "supergroups_confirm",
              "infrastructure",
              "infrastructure_blocked",
              "infrastructure_ready",
              "quest_product_pending",
              "quest_product_ready",
              "quest_product_failed",
              "payment_provider_alive",
              "payment_provider_failed",
              "quest_product",
              "quest_purchase",
              "payments",
              "first_payment",
              "ai_preferences",
              "finish",
              "completed",
              "tariff",
              "paid",
              "free",
              "address_new_business",
              "entry_choose_business",
              "entry_work_or_create",
              "infrastructure_ready_nth_bot"
            ],
            "type": "string"
          },
          "media": {
            "additionalProperties": false,
            "properties": {
              "kind": {
                "enum": [
                  "video",
                  "image_steps"
                ],
                "type": "string"
              },
              "url": {
                "type": "string"
              }
            },
            "required": [
              "kind",
              "url"
            ],
            "type": "object"
          },
          "say_to_user": {
            "type": "string"
          },
          "switch_to": {
            "type": "string"
          },
          "wait_for": {
            "additionalProperties": false,
            "properties": {
              "event": {
                "type": "string"
              },
              "retry_after_seconds": {
                "minimum": 0,
                "type": "number"
              }
            },
            "required": [
              "event"
            ],
            "type": "object"
          }
        },
        "required": [
          "goal",
          "say_to_user",
          "collect"
        ],
        "type": "object"
      },
      "owner_onboardings": {
        "items": {
          "additionalProperties": false,
          "properties": {
            "slug": {
              "type": "string"
            },
            "stage": {
              "enum": [
                "address",
                "site",
                "bot",
                "supergroups_create",
                "supergroups_admin",
                "supergroups_confirm",
                "infrastructure",
                "infrastructure_ready",
                "quest_1",
                "quest_2",
                "warmup",
                "quest_product",
                "quest_purchase",
                "payments",
                "first_payment",
                "ai_preferences",
                "finish",
                "completed",
                "tariff",
                "paid",
                "free"
              ],
              "type": "string"
            }
          },
          "required": [
            "slug",
            "stage"
          ],
          "type": "object"
        },
        "type": "array"
      },
      "stage": {
        "enum": [
          "address",
          "site",
          "bot",
          "supergroups_create",
          "supergroups_admin",
          "supergroups_confirm",
          "infrastructure",
          "infrastructure_ready",
          "quest_1",
          "quest_2",
          "warmup",
          "quest_product",
          "quest_purchase",
          "payments",
          "first_payment",
          "ai_preferences",
          "finish",
          "completed",
          "tariff",
          "paid",
          "free"
        ],
        "type": "string"
      },
      "status": {
        "enum": [
          "todo",
          "in_progress",
          "waiting_owner",
          "blocked",
          "done"
        ],
        "type": "string"
      },
      "tenant": {
        "additionalProperties": false,
        "properties": {
          "bot_username": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "slug": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "slug",
          "bot_username"
        ],
        "type": "object"
      }
    },
    "required": [
      "active_slug",
      "tenant",
      "owner_onboardings",
      "stage",
      "status",
      "next_action",
      "body"
    ],
    "type": "object"
  },
  "platform_version": "1.0.19",
  "required_scopes": [
    "client-config:write"
  ],
  "risk": "write",
  "scope": "client-config:write",
  "title": "Connect Channel"
}
```

## create\_menu\_button

Create menu button with exactly one URL, Mini App URL or callback action; returns tenant seq\_num.

```json
{
  "description": "Create menu button with exactly one URL, Mini App URL or callback action; returns tenant seq_num.",
  "domain": "client-config",
  "inputSchema": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "additionalProperties": false,
    "properties": {
      "bot": {
        "description": "Optional slug of the bot you expect to act on (get_active_bot). If the active bot differs, the call is refused with ACTIVE_BOT_CHANGED and nothing runs.",
        "maxLength": 128,
        "minLength": 1,
        "type": "string"
      },
      "callback_data": {
        "description": "Value for callback data.",
        "maxLength": 64,
        "minLength": 1,
        "type": "string"
      },
      "icon_custom_emoji_id": {
        "description": "Value for icon custom emoji id.",
        "maxLength": 32,
        "minLength": 1,
        "type": "string"
      },
      "is_active": {
        "default": true,
        "description": "Value for is active.",
        "type": "boolean"
      },
      "sort": {
        "default": 0,
        "description": "Value for sort.",
        "maximum": 9007199254740991,
        "minimum": 0,
        "type": "integer"
      },
      "style": {
        "description": "Value for style.",
        "enum": [
          "primary",
          "success",
          "danger"
        ],
        "type": "string"
      },
      "title": {
        "description": "Value for title.",
        "maxLength": 64,
        "minLength": 1,
        "type": "string"
      },
      "url": {
        "description": "Value for url.",
        "format": "uri",
        "type": "string"
      },
      "web_app_url": {
        "description": "Value for web app url.",
        "format": "uri",
        "type": "string"
      }
    },
    "required": [
      "title",
      "sort",
      "is_active"
    ],
    "type": "object"
  },
  "name": "create_menu_button",
  "outputSchema": null,
  "platform_version": "1.0.19",
  "required_scopes": [
    "client-config:write"
  ],
  "risk": "write",
  "scope": "client-config:write",
  "title": "Create Menu Button"
}
```

## create\_menu\_group

Create menu group; returns tenant seq\_num.

```json
{
  "description": "Create menu group; returns tenant seq_num.",
  "domain": "client-config",
  "inputSchema": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "additionalProperties": false,
    "properties": {
      "bot": {
        "description": "Optional slug of the bot you expect to act on (get_active_bot). If the active bot differs, the call is refused with ACTIVE_BOT_CHANGED and nothing runs.",
        "maxLength": 128,
        "minLength": 1,
        "type": "string"
      },
      "icon_custom_emoji_id": {
        "description": "Value for icon custom emoji id.",
        "maxLength": 32,
        "minLength": 1,
        "type": "string"
      },
      "is_active": {
        "default": true,
        "description": "Value for is active.",
        "type": "boolean"
      },
      "sort": {
        "default": 0,
        "description": "Value for sort.",
        "maximum": 9007199254740991,
        "minimum": 0,
        "type": "integer"
      },
      "style": {
        "description": "Value for style.",
        "enum": [
          "primary",
          "success",
          "danger"
        ],
        "type": "string"
      },
      "title": {
        "description": "Value for title.",
        "maxLength": 64,
        "minLength": 1,
        "type": "string"
      }
    },
    "required": [
      "title",
      "sort",
      "is_active"
    ],
    "type": "object"
  },
  "name": "create_menu_group",
  "outputSchema": null,
  "platform_version": "1.0.19",
  "required_scopes": [
    "client-config:write"
  ],
  "risk": "write",
  "scope": "client-config:write",
  "title": "Create Menu Group"
}
```

## delete\_menu\_button

Delete menu button by tenant seq\_num.

```json
{
  "description": "Delete menu button by tenant seq_num.",
  "domain": "client-config",
  "inputSchema": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "additionalProperties": false,
    "properties": {
      "bot": {
        "description": "Optional slug of the bot you expect to act on (get_active_bot). If the active bot differs, the call is refused with ACTIVE_BOT_CHANGED and nothing runs.",
        "maxLength": 128,
        "minLength": 1,
        "type": "string"
      },
      "seq_num": {
        "description": "Value for seq num.",
        "exclusiveMinimum": 0,
        "maximum": 2147483647,
        "type": "integer"
      }
    },
    "required": [
      "seq_num"
    ],
    "type": "object"
  },
  "name": "delete_menu_button",
  "outputSchema": null,
  "platform_version": "1.0.19",
  "required_scopes": [
    "client-config:write"
  ],
  "risk": "destructive",
  "scope": "client-config:write",
  "title": "Delete Menu Button"
}
```

## delete\_menu\_group

Delete menu group by tenant seq\_num.

```json
{
  "description": "Delete menu group by tenant seq_num.",
  "domain": "client-config",
  "inputSchema": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "additionalProperties": false,
    "properties": {
      "bot": {
        "description": "Optional slug of the bot you expect to act on (get_active_bot). If the active bot differs, the call is refused with ACTIVE_BOT_CHANGED and nothing runs.",
        "maxLength": 128,
        "minLength": 1,
        "type": "string"
      },
      "seq_num": {
        "description": "Value for seq num.",
        "exclusiveMinimum": 0,
        "maximum": 2147483647,
        "type": "integer"
      }
    },
    "required": [
      "seq_num"
    ],
    "type": "object"
  },
  "name": "delete_menu_group",
  "outputSchema": null,
  "platform_version": "1.0.19",
  "required_scopes": [
    "client-config:write"
  ],
  "risk": "destructive",
  "scope": "client-config:write",
  "title": "Delete Menu Group"
}
```

## get\_client\_config

Read the tenant client-level settings: default operator language (ru/en), timezone, reporting currency, revenue-attribution window + dialog auto-close days, LLM-arbiter toggle, operator price-override flag, per-user AI-token spend caps, plus read-only token balances (monthly + package). OWNER-ONLY. 0-cost read.

```json
{
  "description": "Read the tenant client-level settings: default operator language (ru/en), timezone, reporting currency, revenue-attribution window + dialog auto-close days, LLM-arbiter toggle, operator price-override flag, per-user AI-token spend caps, plus read-only token balances (monthly + package). OWNER-ONLY. 0-cost read.",
  "domain": "client-config",
  "inputSchema": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "additionalProperties": false,
    "properties": {},
    "type": "object"
  },
  "name": "get_client_config",
  "outputSchema": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "additionalProperties": false,
    "properties": {
      "allowOperatorPriceOverride": {
        "type": "boolean"
      },
      "attributionLlmEnabled": {
        "type": "boolean"
      },
      "defaultLanguage": {
        "enum": [
          "ru",
          "en"
        ],
        "type": "string"
      },
      "dialogAutoCloseDays": {
        "type": "number"
      },
      "operatorAttributionWindowHours": {
        "type": "number"
      },
      "reportingCurrency": {
        "type": "string"
      },
      "timezone": {
        "type": "string"
      },
      "tokens5hLimitPerUser": {
        "anyOf": [
          {
            "type": "number"
          },
          {
            "type": "null"
          }
        ]
      },
      "tokensAvailableBonus": {
        "type": "number"
      },
      "tokensAvailablePackage": {
        "type": "number"
      },
      "tokensAvailableSubscription": {
        "type": "number"
      },
      "tokensWeeklyLimitPerUser": {
        "anyOf": [
          {
            "type": "number"
          },
          {
            "type": "null"
          }
        ]
      },
      "updated_at": {
        "type": "string"
      }
    },
    "required": [
      "updated_at",
      "defaultLanguage",
      "timezone",
      "reportingCurrency",
      "operatorAttributionWindowHours",
      "dialogAutoCloseDays",
      "attributionLlmEnabled",
      "allowOperatorPriceOverride",
      "tokensWeeklyLimitPerUser",
      "tokens5hLimitPerUser",
      "tokensAvailableSubscription",
      "tokensAvailablePackage",
      "tokensAvailableBonus"
    ],
    "type": "object"
  },
  "platform_version": "1.0.19",
  "required_scopes": [
    "client-config:read"
  ],
  "risk": "read",
  "scope": "client-config:read",
  "title": "Get Client Config"
}
```

## get\_data\_dictionary

Describe the available logical CRM tables, their tenant-scoped record handles, and their relationships. Behavioural history is available only through the analytics agent.

```json
{
  "description": "Describe the available logical CRM tables, their tenant-scoped record handles, and their relationships. Behavioural history is available only through the analytics agent.",
  "domain": "client-config",
  "inputSchema": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "additionalProperties": false,
    "properties": {},
    "type": "object"
  },
  "name": "get_data_dictionary",
  "outputSchema": null,
  "platform_version": "1.0.19",
  "required_scopes": [
    "client-config:read"
  ],
  "risk": "read",
  "scope": "client-config:read",
  "title": "Get Data Dictionary"
}
```

## get\_menu\_button

Read menu button by tenant seq\_num.

```json
{
  "description": "Read menu button by tenant seq_num.",
  "domain": "client-config",
  "inputSchema": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "additionalProperties": false,
    "properties": {
      "seq_num": {
        "description": "Value for seq num.",
        "exclusiveMinimum": 0,
        "maximum": 2147483647,
        "type": "integer"
      }
    },
    "required": [
      "seq_num"
    ],
    "type": "object"
  },
  "name": "get_menu_button",
  "outputSchema": null,
  "platform_version": "1.0.19",
  "required_scopes": [
    "client-config:read"
  ],
  "risk": "read",
  "scope": "client-config:read",
  "title": "Get Menu Button"
}
```

## get\_menu\_group

Read menu group by tenant seq\_num.

```json
{
  "description": "Read menu group by tenant seq_num.",
  "domain": "client-config",
  "inputSchema": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "additionalProperties": false,
    "properties": {
      "seq_num": {
        "description": "Value for seq num.",
        "exclusiveMinimum": 0,
        "maximum": 2147483647,
        "type": "integer"
      }
    },
    "required": [
      "seq_num"
    ],
    "type": "object"
  },
  "name": "get_menu_group",
  "outputSchema": null,
  "platform_version": "1.0.19",
  "required_scopes": [
    "client-config:read"
  ],
  "risk": "read",
  "scope": "client-config:read",
  "title": "Get Menu Group"
}
```

## get\_plan\_checkout\_link

Get the checkout link for the canonical Starter platform tariff. This only returns a link; it never purchases, charges, or changes the plan.

```json
{
  "description": "Get the checkout link for the canonical Starter platform tariff. This only returns a link; it never purchases, charges, or changes the plan.",
  "domain": "client-config",
  "inputSchema": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "additionalProperties": false,
    "properties": {},
    "type": "object"
  },
  "name": "get_plan_checkout_link",
  "outputSchema": null,
  "platform_version": "1.0.19",
  "required_scopes": [
    "client-config:read"
  ],
  "risk": "read",
  "scope": "client-config:read",
  "title": "Get Plan Checkout Link"
}
```

## get\_token\_billing

Read this business’s AI token billing: current-period limit and remaining tokens, plus every purchased token package with its remaining balance and expiry. Read-only.

```json
{
  "description": "Read this business’s AI token billing: current-period limit and remaining tokens, plus every purchased token package with its remaining balance and expiry. Read-only.",
  "domain": "client-config",
  "inputSchema": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "additionalProperties": false,
    "properties": {},
    "type": "object"
  },
  "name": "get_token_billing",
  "outputSchema": null,
  "platform_version": "1.0.19",
  "required_scopes": [
    "client-config:read"
  ],
  "risk": "read",
  "scope": "client-config:read",
  "title": "Get Token Billing"
}
```

## get\_token\_topup\_link

Get the checkout link for an additional AI token package. This only returns a link; it never purchases, charges, or grants tokens.

```json
{
  "description": "Get the checkout link for an additional AI token package. This only returns a link; it never purchases, charges, or grants tokens.",
  "domain": "client-config",
  "inputSchema": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "additionalProperties": false,
    "properties": {},
    "type": "object"
  },
  "name": "get_token_topup_link",
  "outputSchema": null,
  "platform_version": "1.0.19",
  "required_scopes": [
    "client-config:read"
  ],
  "risk": "read",
  "scope": "client-config:read",
  "title": "Get Token Topup Link"
}
```

## list\_menu\_buttons

List menu buttons for the active business with tenant seq\_num.

```json
{
  "description": "List menu buttons for the active business with tenant seq_num.",
  "domain": "client-config",
  "inputSchema": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "additionalProperties": false,
    "properties": {},
    "type": "object"
  },
  "name": "list_menu_buttons",
  "outputSchema": null,
  "platform_version": "1.0.19",
  "required_scopes": [
    "client-config:read"
  ],
  "risk": "read",
  "scope": "client-config:read",
  "title": "List Menu Buttons"
}
```

## list\_menu\_groups

List menu groups for the active business with tenant seq\_num.

```json
{
  "description": "List menu groups for the active business with tenant seq_num.",
  "domain": "client-config",
  "inputSchema": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "additionalProperties": false,
    "properties": {},
    "type": "object"
  },
  "name": "list_menu_groups",
  "outputSchema": null,
  "platform_version": "1.0.19",
  "required_scopes": [
    "client-config:read"
  ],
  "risk": "read",
  "scope": "client-config:read",
  "title": "List Menu Groups"
}
```

## onboarding\_connect\_channel

Connect an additional customer channel using its credentials. Never echo credentials in results.

```json
{
  "description": "Connect an additional customer channel using its credentials. Never echo credentials in results.",
  "domain": "client-config",
  "inputSchema": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "oneOf": [
      {
        "additionalProperties": false,
        "description": "Value for input option.",
        "properties": {
          "bot_token": {
            "description": "Value for bot token.",
            "maxLength": 1024,
            "minLength": 1,
            "type": "string"
          },
          "channel": {
            "const": "max",
            "description": "Value for channel.",
            "type": "string"
          },
          "idempotency_key": {
            "description": "Value for idempotency key.",
            "maxLength": 128,
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "channel",
          "bot_token",
          "idempotency_key"
        ],
        "type": "object"
      },
      {
        "additionalProperties": false,
        "description": "Value for input option.",
        "properties": {
          "access_token": {
            "description": "Value for access token.",
            "maxLength": 1024,
            "minLength": 1,
            "type": "string"
          },
          "channel": {
            "const": "vk",
            "description": "Value for channel.",
            "type": "string"
          },
          "group_id": {
            "description": "Value for group id.",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991,
            "type": "integer"
          },
          "idempotency_key": {
            "description": "Value for idempotency key.",
            "maxLength": 128,
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "channel",
          "access_token",
          "group_id",
          "idempotency_key"
        ],
        "type": "object"
      }
    ]
  },
  "name": "onboarding_connect_channel",
  "outputSchema": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "additionalProperties": false,
    "properties": {
      "active_slug": {
        "anyOf": [
          {
            "type": "string"
          },
          {
            "type": "null"
          }
        ]
      },
      "billing": {
        "additionalProperties": false,
        "properties": {
          "auto_renew": {
            "type": "boolean"
          },
          "grace_until": {
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
            "type": "string"
          },
          "next_charge_at": {
            "anyOf": [
              {
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "period_end": {
            "anyOf": [
              {
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "plan": {
            "type": "string"
          },
          "status": {
            "enum": [
              "free",
              "trial",
              "active",
              "grace",
              "expired",
              "cancelled"
            ],
            "type": "string"
          },
          "trial_ends_at": {
            "anyOf": [
              {
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "trial_started_at": {
            "anyOf": [
              {
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "plan",
          "period_end",
          "auto_renew",
          "next_charge_at"
        ],
        "type": "object"
      },
      "body": {
        "additionalProperties": false,
        "properties": {
          "channel": {
            "enum": [
              "max",
              "vk"
            ],
            "type": "string"
          },
          "operation_key": {
            "maxLength": 128,
            "minLength": 1,
            "type": "string"
          },
          "reason": {
            "enum": [
              "credentials_invalid",
              "registration_failed",
              "reconciliation_required"
            ],
            "type": "string"
          },
          "retry_after_seconds": {
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991,
            "type": "integer"
          },
          "status": {
            "enum": [
              "pending",
              "ready",
              "failed"
            ],
            "type": "string"
          }
        },
        "required": [
          "channel",
          "status",
          "operation_key"
        ],
        "type": "object"
      },
      "journey": {
        "additionalProperties": false,
        "properties": {
          "ai_preferences": {
            "anyOf": [
              {
                "additionalProperties": false,
                "properties": {
                  "app": {
                    "enum": [
                      "claude",
                      "chatgpt",
                      "codex",
                      "claude-code",
                      "other"
                    ],
                    "type": "string"
                  },
                  "confirmed_at": {
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                    "type": "string"
                  },
                  "device": {
                    "enum": [
                      "desktop",
                      "web",
                      "phone"
                    ],
                    "type": "string"
                  },
                  "other_app": {
                    "maxLength": 80,
                    "minLength": 1,
                    "type": "string"
                  },
                  "questions_revision": {
                    "const": 1,
                    "type": "number"
                  },
                  "subscription": {
                    "enum": [
                      "paid",
                      "free"
                    ],
                    "type": "string"
                  }
                },
                "required": [
                  "device",
                  "app",
                  "subscription",
                  "questions_revision",
                  "confirmed_at"
                ],
                "type": "object"
              },
              {
                "type": "null"
              }
            ]
          },
          "bonus_state": {
            "enum": [
              "not_eligible",
              "pending",
              "settled"
            ],
            "type": "string"
          },
          "completed": {
            "type": "boolean"
          },
          "completed_at": {
            "anyOf": [
              {
                "format": "date-time",
                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "decisions": {
            "additionalProperties": false,
            "properties": {
              "first_payment_deferred_at": {
                "anyOf": [
                  {
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                    "type": "string"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "tariff_deferred_at": {
                "anyOf": [
                  {
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                    "type": "string"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "first_payment_deferred_at",
              "tariff_deferred_at"
            ],
            "type": "object"
          },
          "first_payment": {
            "anyOf": [
              {
                "additionalProperties": false,
                "properties": {
                  "amount": {
                    "maxLength": 32,
                    "pattern": "^\\d+(?:\\.\\d{1,8})?$",
                    "type": "string"
                  },
                  "currency": {
                    "maxLength": 16,
                    "minLength": 1,
                    "type": "string"
                  },
                  "is_active": {
                    "const": true,
                    "type": "boolean"
                  },
                  "payload_hash": {
                    "pattern": "^[a-f0-9]{64}$",
                    "type": "string"
                  },
                  "phase": {
                    "enum": [
                      "accepted",
                      "price_committed",
                      "card_pending",
                      "sent"
                    ],
                    "type": "string"
                  },
                  "preparation_id": {
                    "maxLength": 128,
                    "minLength": 1,
                    "type": "string"
                  },
                  "product_seq_num": {
                    "exclusiveMinimum": 0,
                    "maximum": 9007199254740991,
                    "type": "integer"
                  },
                  "provider": {
                    "enum": [
                      "robokassa",
                      "yookassa",
                      "stars",
                      "cryptobot",
                      "stripe",
                      "paypal",
                      "paddle",
                      "tinkoff",
                      "prodamus"
                    ],
                    "type": "string"
                  },
                  "purchase_zone": {
                    "enum": [
                      "ru",
                      "com"
                    ],
                    "type": "string"
                  },
                  "title": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "required": [
                  "phase",
                  "product_seq_num",
                  "title",
                  "provider",
                  "amount",
                  "currency",
                  "purchase_zone",
                  "is_active",
                  "preparation_id",
                  "payload_hash"
                ],
                "type": "object"
              },
              {
                "type": "null"
              }
            ]
          },
          "infrastructure_ready": {
            "type": "boolean"
          },
          "provider_readiness": {
            "anyOf": [
              {
                "additionalProperties": false,
                "properties": {
                  "authentication": {
                    "enum": [
                      "verified",
                      "failed",
                      "unknown"
                    ],
                    "type": "string"
                  },
                  "checked_at": {
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
                    "type": "string"
                  },
                  "checkout_creation": {
                    "enum": [
                      "verified",
                      "failed",
                      "unknown"
                    ],
                    "type": "string"
                  },
                  "configuration_confirmation_token": {
                    "anyOf": [
                      {
                        "pattern": "^[a-f0-9]{64}$",
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "configuration_fingerprint": {
                    "pattern": "^[a-f0-9]{64}$",
                    "type": "string"
                  },
                  "limitations": {
                    "items": {
                      "type": "string"
                    },
                    "type": "array"
                  },
                  "live_payment": {
                    "enum": [
                      "verified",
                      "failed",
                      "unknown"
                    ],
                    "type": "string"
                  },
                  "next_action": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "production_environment": {
                    "enum": [
                      "verified",
                      "failed",
                      "unknown"
                    ],
                    "type": "string"
                  },
                  "provider": {
                    "enum": [
                      "robokassa",
                      "yookassa",
                      "stars",
                      "cryptobot",
                      "stripe",
                      "paypal",
                      "paddle",
                      "tinkoff",
                      "prodamus"
                    ],
                    "type": "string"
                  },
                  "ready": {
                    "type": "boolean"
                  },
                  "webhook_configuration": {
                    "enum": [
                      "verified",
                      "failed",
                      "unknown"
                    ],
                    "type": "string"
                  },
                  "webhook_configuration_assurance": {
                    "anyOf": [
                      {
                        "enum": [
                          "provider_api",
                          "signed_delivery",
                          "owner_attested"
                        ],
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "webhook_delivery": {
                    "enum": [
                      "verified",
                      "failed",
                      "unknown"
                    ],
                    "type": "string"
                  }
                },
                "required": [
                  "provider",
                  "configuration_fingerprint",
                  "checked_at",
                  "ready",
                  "authentication",
                  "production_environment",
                  "checkout_creation",
                  "webhook_configuration",
                  "webhook_delivery",
                  "live_payment",
                  "limitations",
                  "next_action"
                ],
                "type": "object"
              },
              {
                "type": "null"
              }
            ]
          },
          "revision": {
            "const": 1,
            "type": "number"
          },
          "rewards": {
            "additionalProperties": false,
            "properties": {
              "tokens_granted": {
                "maximum": 9007199254740991,
                "minimum": 0,
                "type": "integer"
              },
              "tokens_remaining": {
                "maximum": 9007199254740991,
                "minimum": 0,
                "type": "integer"
              },
              "trial_days": {
                "minimum": 0,
                "type": "number"
              }
            },
            "required": [
              "tokens_granted",
              "tokens_remaining",
              "trial_days"
            ],
            "type": "object"
          },
          "test_completed": {
            "type": "boolean"
          },
          "test_required": {
            "type": "boolean"
          }
        },
        "required": [
          "revision",
          "completed",
          "completed_at",
          "infrastructure_ready",
          "test_required",
          "test_completed",
          "bonus_state",
          "ai_preferences",
          "decisions",
          "provider_readiness"
        ],
        "type": "object"
      },
      "next_action": {
        "additionalProperties": false,
        "properties": {
          "collect": {
            "items": {
              "additionalProperties": false,
              "properties": {
                "field": {
                  "type": "string"
                },
                "hint": {
                  "type": "string"
                }
              },
              "required": [
                "field",
                "hint"
              ],
              "type": "object"
            },
            "type": "array"
          },
          "execution": {
            "additionalProperties": false,
            "properties": {
              "arguments": {
                "additionalProperties": {},
                "propertyNames": {
                  "type": "string"
                },
                "type": "object"
              },
              "business_slug": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "continue_with": {
                "additionalProperties": false,
                "properties": {
                  "arguments": {
                    "additionalProperties": {},
                    "propertyNames": {
                      "type": "string"
                    },
                    "type": "object"
                  },
                  "say_to_user": {
                    "minLength": 1,
                    "type": "string"
                  },
                  "tool": {
                    "anyOf": [
                      {
                        "const": "get_onboarding_state",
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "required": [
                  "tool",
                  "arguments"
                ],
                "type": "object"
              },
              "executor": {
                "enum": [
                  "agent",
                  "owner",
                  "server"
                ],
                "type": "string"
              },
              "prepared_execute": {
                "additionalProperties": false,
                "properties": {
                  "arguments_fields": {
                    "prefixItems": [
                      {
                        "const": "preparation_id",
                        "type": "string"
                      },
                      {
                        "const": "payload_hash",
                        "type": "string"
                      }
                    ],
                    "type": "array"
                  },
                  "requires_human_review": {
                    "const": true,
                    "type": "boolean"
                  },
                  "tool": {
                    "const": "onboarding_execute_first_payment",
                    "type": "string"
                  }
                },
                "required": [
                  "tool",
                  "requires_human_review",
                  "arguments_fields"
                ],
                "type": "object"
              },
              "recovery": {
                "anyOf": [
                  {
                    "additionalProperties": false,
                    "properties": {
                      "arguments": {
                        "additionalProperties": {},
                        "propertyNames": {
                          "type": "string"
                        },
                        "type": "object"
                      },
                      "say_to_user": {
                        "type": "string"
                      },
                      "tool": {
                        "anyOf": [
                          {
                            "minLength": 1,
                            "type": "string"
                          },
                          {
                            "type": "null"
                          }
                        ]
                      }
                    },
                    "required": [
                      "tool",
                      "arguments",
                      "say_to_user"
                    ],
                    "type": "object"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "requires": {
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              "step": {
                "minLength": 1,
                "type": "string"
              },
              "success": {
                "additionalProperties": false,
                "properties": {
                  "fact": {
                    "minLength": 1,
                    "type": "string"
                  }
                },
                "required": [
                  "fact"
                ],
                "type": "object"
              },
              "tool": {
                "anyOf": [
                  {
                    "minLength": 1,
                    "type": "string"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "wait": {
                "anyOf": [
                  {
                    "additionalProperties": false,
                    "properties": {
                      "retry_after_seconds": {
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991,
                        "type": "integer"
                      },
                      "stop_when": {
                        "minLength": 1,
                        "type": "string"
                      }
                    },
                    "required": [
                      "retry_after_seconds",
                      "stop_when"
                    ],
                    "type": "object"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "business_slug",
              "step",
              "executor",
              "tool",
              "arguments",
              "requires",
              "success",
              "wait",
              "recovery",
              "continue_with"
            ],
            "type": "object"
          },
          "goal": {
            "enum": [
              "address",
              "site",
              "bot",
              "supergroups_create",
              "supergroups_admin",
              "supergroups_confirm",
              "infrastructure",
              "infrastructure_blocked",
              "infrastructure_ready",
              "quest_product_pending",
              "quest_product_ready",
              "quest_product_failed",
              "payment_provider_alive",
              "payment_provider_failed",
              "quest_product",
              "quest_purchase",
              "payments",
              "first_payment",
              "ai_preferences",
              "finish",
              "completed",
              "tariff",
              "paid",
              "free",
              "address_new_business",
              "entry_choose_business",
              "entry_work_or_create",
              "infrastructure_ready_nth_bot"
            ],
            "type": "string"
          },
          "media": {
            "additionalProperties": false,
            "properties": {
              "kind": {
                "enum": [
                  "video",
                  "image_steps"
                ],
                "type": "string"
              },
              "url": {
                "type": "string"
              }
            },
            "required": [
              "kind",
              "url"
            ],
            "type": "object"
          },
          "say_to_user": {
            "type": "string"
          },
          "switch_to": {
            "type": "string"
          },
          "wait_for": {
            "additionalProperties": false,
            "properties": {
              "event": {
                "type": "string"
              },
              "retry_after_seconds": {
                "minimum": 0,
                "type": "number"
              }
            },
            "required": [
              "event"
            ],
            "type": "object"
          }
        },
        "required": [
          "goal",
          "say_to_user",
          "collect"
        ],
        "type": "object"
      },
      "owner_onboardings": {
        "items": {
          "additionalProperties": false,
          "properties": {
            "slug": {
              "type": "string"
            },
            "stage": {
              "enum": [
                "address",
                "site",
                "bot",
                "supergroups_create",
                "supergroups_admin",
                "supergroups_confirm",
                "infrastructure",
                "infrastructure_ready",
                "quest_1",
                "quest_2",
                "warmup",
                "quest_product",
                "quest_purchase",
                "payments",
                "first_payment",
                "ai_preferences",
                "finish",
                "completed",
                "tariff",
                "paid",
                "free"
              ],
              "type": "string"
            }
          },
          "required": [
            "slug",
            "stage"
          ],
          "type": "object"
        },
        "type": "array"
      },
      "stage": {
        "enum": [
          "address",
          "site",
          "bot",
          "supergroups_create",
          "supergroups_admin",
          "supergroups_confirm",
          "infrastructure",
          "infrastructure_ready",
          "quest_1",
          "quest_2",
          "warmup",
          "quest_product",
          "quest_purchase",
          "payments",
          "first_payment",
          "ai_preferences",
          "finish",
          "completed",
          "tariff",
          "paid",
          "free"
        ],
        "type": "string"
      },
      "status": {
        "enum": [
          "todo",
          "in_progress",
          "waiting_owner",
          "blocked",
          "done"
        ],
        "type": "string"
      },
      "tenant": {
        "additionalProperties": false,
        "properties": {
          "bot_username": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "slug": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "slug",
          "bot_username"
        ],
        "type": "object"
      }
    },
    "required": [
      "active_slug",
      "tenant",
      "owner_onboardings",
      "stage",
      "status",
      "next_action",
      "body"
    ],
    "type": "object"
  },
  "platform_version": "1.0.19",
  "required_scopes": [
    "client-config:write"
  ],
  "risk": "write",
  "scope": "client-config:write",
  "title": "Onboarding Connect Channel"
}
```

## update\_client\_config

Update the tenant client-level settings (partial patch — send only the fields you change; pass null to clear a token cap). Idempotent. OWNER-ONLY. Token BALANCES are read-only and cannot be set here. Returns the full updated config.

```json
{
  "description": "Update the tenant client-level settings (partial patch — send only the fields you change; pass null to clear a token cap). Idempotent. OWNER-ONLY. Token BALANCES are read-only and cannot be set here. Returns the full updated config.",
  "domain": "client-config",
  "inputSchema": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "additionalProperties": false,
    "properties": {
      "allow_operator_price_override": {
        "description": "Value for allow operator price override.",
        "type": "boolean"
      },
      "attribution_llm_enabled": {
        "description": "Value for attribution llm enabled.",
        "type": "boolean"
      },
      "bot": {
        "description": "Optional slug of the bot you expect to act on (get_active_bot). If the active bot differs, the call is refused with ACTIVE_BOT_CHANGED and nothing runs.",
        "maxLength": 128,
        "minLength": 1,
        "type": "string"
      },
      "default_language": {
        "description": "Value for default language.",
        "enum": [
          "ru",
          "en"
        ],
        "type": "string"
      },
      "dialog_auto_close_days": {
        "description": "Value for dialog auto close days.",
        "maximum": 365,
        "minimum": 0,
        "type": "integer"
      },
      "operator_attribution_window_hours": {
        "description": "Value for operator attribution window hours.",
        "maximum": 8760,
        "minimum": 0,
        "type": "integer"
      },
      "reporting_currency": {
        "description": "Value for reporting currency.",
        "maxLength": 3,
        "minLength": 3,
        "type": "string"
      },
      "timezone": {
        "description": "Value for timezone.",
        "maxLength": 64,
        "minLength": 1,
        "type": "string"
      },
      "tokens_5h_limit_per_user": {
        "anyOf": [
          {
            "description": "Value for tokens 5h limit per user option.",
            "maximum": 9007199254740991,
            "minimum": 0,
            "type": "integer"
          },
          {
            "description": "Value for tokens 5h limit per user option.",
            "type": "null"
          }
        ],
        "description": "Value for tokens 5h limit per user."
      },
      "tokens_weekly_limit_per_user": {
        "anyOf": [
          {
            "description": "Value for tokens weekly limit per user option.",
            "maximum": 9007199254740991,
            "minimum": 0,
            "type": "integer"
          },
          {
            "description": "Value for tokens weekly limit per user option.",
            "type": "null"
          }
        ],
        "description": "Value for tokens weekly limit per user."
      }
    },
    "type": "object"
  },
  "name": "update_client_config",
  "outputSchema": null,
  "platform_version": "1.0.19",
  "required_scopes": [
    "client-config:write"
  ],
  "risk": "write",
  "scope": "client-config:write",
  "title": "Update Client Config"
}
```

## update\_menu\_button

Update menu button with its updated\_at version as if\_match.

```json
{
  "description": "Update menu button with its updated_at version as if_match.",
  "domain": "client-config",
  "inputSchema": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "additionalProperties": false,
    "properties": {
      "bot": {
        "description": "Optional slug of the bot you expect to act on (get_active_bot). If the active bot differs, the call is refused with ACTIVE_BOT_CHANGED and nothing runs.",
        "maxLength": 128,
        "minLength": 1,
        "type": "string"
      },
      "callback_data": {
        "anyOf": [
          {
            "description": "Value for callback data option.",
            "maxLength": 64,
            "minLength": 1,
            "type": "string"
          },
          {
            "description": "Value for callback data option.",
            "type": "null"
          }
        ],
        "description": "Value for callback data."
      },
      "icon_custom_emoji_id": {
        "anyOf": [
          {
            "description": "Value for icon custom emoji id option.",
            "maxLength": 32,
            "minLength": 1,
            "type": "string"
          },
          {
            "description": "Value for icon custom emoji id option.",
            "type": "null"
          }
        ],
        "description": "Value for icon custom emoji id."
      },
      "if_match": {
        "description": "Value for if match.",
        "format": "date-time",
        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
        "type": "string"
      },
      "is_active": {
        "description": "Value for is active.",
        "type": "boolean"
      },
      "seq_num": {
        "description": "Value for seq num.",
        "exclusiveMinimum": 0,
        "maximum": 2147483647,
        "type": "integer"
      },
      "sort": {
        "description": "Value for sort.",
        "maximum": 9007199254740991,
        "minimum": 0,
        "type": "integer"
      },
      "style": {
        "anyOf": [
          {
            "description": "Value for style option.",
            "enum": [
              "primary",
              "success",
              "danger"
            ],
            "type": "string"
          },
          {
            "description": "Value for style option.",
            "type": "null"
          }
        ],
        "description": "Value for style."
      },
      "title": {
        "description": "Value for title.",
        "maxLength": 64,
        "minLength": 1,
        "type": "string"
      },
      "url": {
        "anyOf": [
          {
            "description": "Value for url option.",
            "format": "uri",
            "type": "string"
          },
          {
            "description": "Value for url option.",
            "type": "null"
          }
        ],
        "description": "Value for url."
      },
      "web_app_url": {
        "anyOf": [
          {
            "description": "Value for web app url option.",
            "format": "uri",
            "type": "string"
          },
          {
            "description": "Value for web app url option.",
            "type": "null"
          }
        ],
        "description": "Value for web app url."
      }
    },
    "required": [
      "seq_num",
      "if_match"
    ],
    "type": "object"
  },
  "name": "update_menu_button",
  "outputSchema": null,
  "platform_version": "1.0.19",
  "required_scopes": [
    "client-config:write"
  ],
  "risk": "write",
  "scope": "client-config:write",
  "title": "Update Menu Button"
}
```

## update\_menu\_group

Update menu group with its updated\_at version as if\_match.

```json
{
  "description": "Update menu group with its updated_at version as if_match.",
  "domain": "client-config",
  "inputSchema": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "additionalProperties": false,
    "properties": {
      "bot": {
        "description": "Optional slug of the bot you expect to act on (get_active_bot). If the active bot differs, the call is refused with ACTIVE_BOT_CHANGED and nothing runs.",
        "maxLength": 128,
        "minLength": 1,
        "type": "string"
      },
      "icon_custom_emoji_id": {
        "anyOf": [
          {
            "description": "Value for icon custom emoji id option.",
            "maxLength": 32,
            "minLength": 1,
            "type": "string"
          },
          {
            "description": "Value for icon custom emoji id option.",
            "type": "null"
          }
        ],
        "description": "Value for icon custom emoji id."
      },
      "if_match": {
        "description": "Value for if match.",
        "format": "date-time",
        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
        "type": "string"
      },
      "is_active": {
        "description": "Value for is active.",
        "type": "boolean"
      },
      "seq_num": {
        "description": "Value for seq num.",
        "exclusiveMinimum": 0,
        "maximum": 2147483647,
        "type": "integer"
      },
      "sort": {
        "description": "Value for sort.",
        "maximum": 9007199254740991,
        "minimum": 0,
        "type": "integer"
      },
      "style": {
        "anyOf": [
          {
            "description": "Value for style option.",
            "enum": [
              "primary",
              "success",
              "danger"
            ],
            "type": "string"
          },
          {
            "description": "Value for style option.",
            "type": "null"
          }
        ],
        "description": "Value for style."
      },
      "title": {
        "description": "Value for title.",
        "maxLength": 64,
        "minLength": 1,
        "type": "string"
      }
    },
    "required": [
      "seq_num",
      "if_match"
    ],
    "type": "object"
  },
  "name": "update_menu_group",
  "outputSchema": null,
  "platform_version": "1.0.19",
  "required_scopes": [
    "client-config:write"
  ],
  "risk": "write",
  "scope": "client-config:write",
  "title": "Update Menu Group"
}
```
