このMCPでできること
Provides AI phone reception, outbound calling campaigns, call transcripts and recordings, lead management, routing, staff alerts, and business phone configuration.
ツール
入力スキーマ
{'type': 'object', 'required': ['phone_number'], 'properties': {'name': {'type': 'string', 'description': 'Display name for this teammate (optional).'}, 'role': {'enum': ['owner', 'admin', 'member'], 'type': 'string', 'description': 'member only rings; owner and admin also get admin-secretary access from this cell. Defaults to admin.'}, 'business_id': {'type': 'string', 'description': 'Business ID (required when the token can access multiple businesses).'}, 'phone_number': {'type': 'string', 'description': 'The cell to add, US format (e.g. (908) 555-1234 or +19085551234).'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'code': {'type': 'string', 'description': 'Present when success is false.'}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'member': {'type': 'object', 'properties': {'name': {'type': ['string', 'null']}, 'role': {'type': 'string'}, 'ring_group': {'enum': ['added', 'already_member'], 'type': 'string'}, 'admin_roster': {'enum': ['registered', 'skipped_member_role', 'failed'], 'type': 'string'}, 'phone_number': {'type': 'string'}}}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'business_id': {'type': 'string'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['phone_number'], 'properties': {'agent_id': {'type': 'string', 'description': 'Agent ID to route this number to directly (optional).'}, 'business_id': {'type': 'string', 'description': 'Business ID (optional only when the token can access exactly one business).'}, 'phone_number': {'type': 'string', 'description': 'E.164 phone number already in the registry.'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'number': {'type': 'object'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'business_id': {'type': 'string'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['phone_number'], 'properties': {'actor': {'type': 'object', 'description': 'Who is asking: { type: agent|human|system|integration, id, display_name }.'}, 'reason': {'type': 'string', 'description': 'Optional reason recorded in the durable audit.'}, 'dry_run': {'type': 'boolean', 'description': 'Validate tenant, scope, and policy without buying anything.'}, 'agent_id': {'type': 'string', 'description': 'Agent ID to route this number to directly once purchased (optional; requires the number to also be voice-runtime-imported, which is not guaranteed at purchase time — prefer a follow-up attach_number call).'}, 'authority': {'type': 'object', 'description': 'Attribution only. human_confirmed and other caller-supplied modes cannot authorize a purchase. Authenticated owner review of the exact stored request is required.'}, 'source_ref': {'type': 'string', 'description': 'External source reference, such as a ticket or automation run ID.'}, 'business_id': {'type': 'string', 'description': 'Business ID (optional only when the token can access exactly one business).'}, 'phone_number': {'type': 'string', 'description': 'The exact E.164 phone number to purchase, as returned by search_available_numbers.'}, 'idempotency_key': {'type': 'string', 'description': 'Stable key for the purchase request; repeating it returns the original outcome. Defaults to a key derived from the phone number — pass your own to retry a previously failed purchase.'}, 'queue_for_approval': {'type': 'boolean', 'description': 'Create a durable owner-review request (default true). Setting false returns needs_approval, but an authority-envelope retry still cannot execute.'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'code': {'type': ['string', 'null']}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'result': {'type': ['object', 'null'], 'description': 'On executed: { number, vapi_registered, agent_attached, compliance: { high_risk_category, disclosure_note } }.'}, 'status': {'type': 'string'}, 'message': {'type': ['string', 'null']}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'summary': {'type': ['object', 'null']}, 'approval': {'type': ['object', 'null']}, 'request_id': {'type': ['string', 'null']}, 'risk_level': {'type': ['string', 'null']}, 'business_id': {'type': ['string', 'null']}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['call_id'], 'properties': {'call_id': {'type': 'string', 'description': 'The call ID to check'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'call': {'type': 'object', 'properties': {'id': {'type': 'string'}, 'status': {'type': 'string'}, 'lead_id': {'type': ['string', 'null']}, 'summary': {'type': ['string', 'null']}, 'agent_id': {'type': ['string', 'null']}, 'agent_name': {'type': ['string', 'null']}, 'created_at': {'type': 'string'}, 'business_id': {'type': 'string'}, 'recording_url': {'type': ['string', 'null']}, 'conversation_id': {'type': ['string', 'null']}, 'duration_seconds': {'type': ['number', 'null']}, 'quality_dimensions': {'type': ['object', 'array', 'null']}}}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['business_id', 'activation_session_id', 'choice', 'idempotency_key'], 'properties': {'choice': {'enum': ['forwarding', 'published_number', 'both', 'testing'], 'type': 'string'}, 'authority': {'type': 'object'}, 'business_id': {'type': 'string'}, 'source_phone': {'type': 'string', 'description': 'Existing business number, required for forwarding or both.'}, 'idempotency_key': {'type': 'string'}, 'activation_session_id': {'type': 'string'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'routes': {'type': 'array', 'items': {'type': 'object'}}, 'status': {'type': 'string'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'business_id': {'type': 'string'}, 'instructions': {'type': 'array', 'items': {'type': 'string'}}, 'deployment_choice': {'type': 'string'}, 'activation_session_id': {'type': 'string'}, 'command_center_unlocked': {'type': 'boolean'}, 'customer_coverage_active': {'type': 'boolean'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['agent_id', 'rules'], 'properties': {'mode': {'type': 'string', 'description': 'replace (default) or append.'}, 'actor': {'type': 'object', 'description': 'Who is asking: { type: agent|human|system|integration, id, display_name }.'}, 'rules': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Plain-language operational rules to insert as bullets, e.g. callback capture, sister-location boundaries, urgent alert handling.'}, 'dry_run': {'type': 'boolean', 'description': 'Validate and show the prompt patch metadata without writing.'}, 'agent_id': {'type': 'string', 'description': 'KaiCalls agent ID to update'}, 'authority': {'type': 'object', 'description': 'Attribution only. Caller-supplied authority cannot authorize live changes; authenticated owner review of the stored request is required.'}, 'source_ref': {'type': 'string', 'description': 'External source reference, such as a support ticket or assistant conversation ID.'}, 'business_id': {'type': 'string', 'description': 'Business ID. Required when the agent has multiple accessible assignments.'}, 'section_title': {'type': 'string', 'description': 'Prompt section heading to replace/append. Default: Operational handoff rules.'}, 'idempotency_key': {'type': 'string', 'description': 'Required for writes. Reuse the same key when retrying the same proposed prompt change.'}, 'queue_for_approval': {'type': 'boolean', 'description': 'When authority is missing, create a pending dashboard approval instead of returning needs_approval.'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'code': {'type': ['string', 'null']}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'result': {'type': ['object', 'null']}, 'status': {'type': 'string'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'summary': {'type': ['object', 'null']}, 'agent_id': {'type': ['string', 'null']}, 'approval': {'type': ['object', 'null']}, 'request_id': {'type': ['string', 'null']}, 'business_id': {'type': ['string', 'null']}, 'rules_count': {'type': ['integer', 'null']}, 'section_title': {'type': ['string', 'null']}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'dry_run': {'type': 'boolean', 'description': 'Validate and show the proposed settings without writing.'}, 'business_id': {'type': 'string', 'description': 'Business ID (optional only when the token has exactly one accessible business)'}, 'escalation_rules': {'type': 'array', 'items': {'type': 'object', 'required': ['when'], 'properties': {'id': {'type': 'string'}, 'then': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Action keys. v1 supports text_owner.'}, 'when': {'type': 'string', 'description': 'Natural-language trigger, e.g. "Caller needs a same-day callback from the recovery room".'}, 'enabled': {'type': 'boolean'}}}, 'description': 'Post-call escalation rules evaluated against completed transcripts. Each rule is { id?, when, then, enabled? }. v1 action then includes text_owner.'}, 'sms_notifications': {'type': 'boolean', 'description': 'Enable or disable SMS staff alerts for this business.'}, 'notification_email': {'type': ['string', 'array'], 'items': {'type': 'string'}, 'description': 'Comma-separated string or array of staff email addresses that receive escalation emails.'}, 'notification_phone': {'type': ['string', 'array'], 'items': {'type': 'string'}, 'description': 'Comma-separated string or array of staff phone numbers that receive SMS escalation alerts.'}, 'email_notifications': {'type': 'boolean', 'description': 'Enable or disable email staff alerts for this business.'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'dry_run': {'type': 'boolean'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'settings': {'type': 'object'}, 'business_id': {'type': 'string'}, 'current_settings': {'type': ['object', 'null']}, 'proposed_settings': {'type': 'object'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['links'], 'properties': {'links': {'type': 'array', 'items': {'type': 'object', 'properties': {'label': {'type': 'string', 'description': 'Human label for the link.'}, 'link_key': {'type': 'string', 'description': 'Snake_case key the agent/tool uses, e.g. recovery_directions.'}, 'is_active': {'type': 'boolean', 'description': 'Whether this link can be sent.'}, 'destination_url': {'type': 'string', 'description': 'HTTPS destination URL. kaicalls.com destinations are rejected.'}}}, 'description': 'Links to create/update by link_key. New links require label and destination_url. Existing links can be deactivated with is_active=false.'}, 'dry_run': {'type': 'boolean', 'description': 'Validate and show create/update plan without writing.'}, 'business_id': {'type': 'string', 'description': 'Business ID (optional only when the token has exactly one accessible business)'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'plan': {'type': 'array', 'items': {'type': 'object'}}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'links': {'type': 'array', 'items': {'type': 'object'}}, 'dry_run': {'type': 'boolean'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'business_id': {'type': 'string'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['business_id', 'activation_session_id', 'channel', 'destination', 'idempotency_key'], 'properties': {'channel': {'enum': ['sms', 'email'], 'type': 'string'}, 'authority': {'type': 'object'}, 'business_id': {'type': 'string'}, 'destination': {'type': 'string'}, 'idempotency_key': {'type': 'string'}, 'activation_session_id': {'type': 'string'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'status': {'type': 'string'}, 'attempt': {'type': ['object', 'null']}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'business_id': {'type': 'string'}, 'delivery_started': {'type': 'boolean'}, 'destination_masked': {'type': ['string', 'null']}, 'activation_session_id': {'type': 'string'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['business_id', 'name', 'system_prompt'], 'properties': {'name': {'type': 'string', 'description': 'Agent display name.'}, 'model': {'type': 'object', 'description': 'Language model selection: { provider, model, temperature } (optional).'}, 'voice': {'type': 'object', 'description': 'Raw voice selection: { provider, voiceId } (optional).'}, 'metadata': {'type': 'object', 'description': 'Extra KaiCalls metadata to store (optional).'}, 'business_id': {'type': 'string', 'description': 'Business ID to create the agent under.'}, 'first_message': {'type': 'string', 'description': 'Spoken greeting (optional).'}, 'system_prompt': {'type': 'string', 'description': "The agent's inbound system prompt / instructions."}, 'voice_catalog_id': {'type': 'string', 'description': 'Preferred: a curated catalog id from list_voices (optional).'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'agent': {'type': 'object'}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'compliance': {'type': 'object', 'properties': {'disclosure_note': {'type': 'string'}, 'high_risk_category': {'type': 'boolean'}}}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['name', 'cadence_config'], 'properties': {'name': {'type': 'string', 'description': 'Campaign name.'}, 'launch': {'type': 'boolean', 'description': 'When true, launch the campaign immediately after creating it.'}, 'agent_id': {'type': 'string', 'description': 'Agent ID to place the calls. Required when launch is true.'}, 'lead_ids': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Lead IDs to enroll in the campaign (optional at create time).'}, 'business_id': {'type': 'string', 'description': 'Business ID (required only when the token can access multiple businesses).'}, 'description': {'type': 'string', 'description': 'Optional campaign description.'}, 'cadence_config': {'type': 'object', 'properties': {'attempts': {'type': 'integer', 'maximum': 10, 'minimum': 1}, 'template': {'type': 'string'}}, 'description': 'Cadence configuration. { template: standard|aggressive|nurture|custom, attempts: number }.'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'queued': {'type': ['integer', 'null']}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'campaign': {'type': 'object'}, 'launched': {'type': 'boolean'}, 'sequence_id': {'type': ['string', 'null']}, 'total_leads': {'type': ['integer', 'null']}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['business_id', 'plan_id', 'idempotency_key'], 'properties': {'plan_id': {'type': 'string'}, 'business_id': {'type': 'string'}, 'idempotency_key': {'type': 'string', 'maxLength': 128, 'minLength': 8}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Webhook ID to remove.'}, 'business_id': {'type': 'string', 'description': 'Business ID (optional only when the token can access exactly one business).'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'message': {'type': 'string'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'business_id': {'type': 'string'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['phone_number'], 'properties': {'business_id': {'type': 'string', 'description': 'Business ID (optional only when the token can access exactly one business).'}, 'phone_number': {'type': 'string', 'description': 'E.164 phone number to release.'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'success': {'type': 'boolean'}, 'business_id': {'type': 'string'}, 'released_phone_number': {'type': 'string'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'business_id': {'type': 'string', 'description': 'Business ID (optional only when the token reaches exactly one business).'}, 'oauth_transaction_id': {'type': 'string', 'description': 'Opaque OAuth transaction identifier used only to bind a completed receipt.'}, 'activation_session_id': {'type': 'string', 'description': 'Optional exact session ID. A superseded or foreign session is rejected.'}, 'origin_conversation_id': {'type': 'string', 'description': 'Opaque client conversation identifier used only to bind a completed receipt.'}, 'receipt_idempotency_key': {'type': 'string', 'description': 'Client key for replay-safe delivery of a completed activation receipt.'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'proof': {'type': 'object'}, 'state': {'type': ['string', 'null']}, 'routes': {'type': 'array', 'items': {'type': 'object'}}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'business_id': {'type': 'string'}, 'next_action': {'type': 'string'}, 'activation_receipt': {'type': ['object', 'null']}, 'owner_phone_on_file': {'type': 'boolean', 'description': "Whether the owner's own mobile number is on file. False means no SMS nudge, ring-first, or forwarding verification can reach a human — the line is not fully set up regardless of proof state."}, 'activation_session_id': {'type': ['string', 'null']}, 'notification_attempts': {'type': 'array', 'items': {'type': 'object'}}, 'command_center_unlocked': {'type': 'boolean'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'days': {'type': 'integer', 'maximum': 90, 'minimum': 1, 'description': 'Lookback window in days (default 30, max 90)'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'calls': {'type': 'object'}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'leads': {'type': 'object'}, 'agents': {'type': 'object'}, 'period': {'type': 'object'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'outcomes': {'type': 'object'}, 'outcomes_total': {'type': 'integer'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'businesses': {'type': 'array', 'items': {'type': 'object', 'required': ['business_id', 'plan_key', 'plan_name', 'price_monthly', 'allowance_model', 'minutes_used', 'minutes_allowance', 'answered_calls_used', 'answered_calls_raw', 'answered_calls_weighted', 'answered_calls_allowance', 'phone_numbers', 'phone_numbers_allowance', 'subscription_status', 'overage_allowed', 'period_start', 'period_end', 'period_kind'], 'properties': {'plan_key': {'type': 'string'}, 'plan_name': {'type': 'string'}, 'period_end': {'type': ['string', 'null'], 'description': 'Null for lifetime trial usage; does not imply the trial cannot expire.'}, 'business_id': {'type': 'string'}, 'period_kind': {'enum': ['lifetime_trial', 'billing_cycle'], 'type': 'string'}, 'minutes_used': {'type': 'number'}, 'period_start': {'type': 'string'}, 'phone_numbers': {'type': 'integer', 'description': 'Active registered numbers, including unassigned numbers.'}, 'price_monthly': {'type': 'number', 'description': 'Mapped subscription base price in USD; zero for no-card trial. Excludes add-ons and tax.'}, 'allowance_model': {'enum': ['minutes', 'answered_calls'], 'type': 'string'}, 'overage_allowed': {'type': 'boolean'}, 'minutes_allowance': {'type': 'number'}, 'answered_calls_raw': {'type': ['number', 'null'], 'description': 'Unweighted billable call count for reporting.'}, 'answered_calls_used': {'type': ['number', 'null'], 'description': 'Raw billable call count used for allowance reporting, matching dashboard and right-sizing; null for minute plans.'}, 'subscription_status': {'type': 'string'}, 'answered_calls_weighted': {'type': ['number', 'null'], 'description': 'Informational only, not allowance consumption or right-sizing: ordinary calls 1, human-answered silent-listen calls 0.5; null for minute plans.'}, 'phone_numbers_allowance': {'type': 'integer'}, 'answered_calls_allowance': {'type': ['number', 'null']}}}}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'business_id': {'type': 'string', 'description': 'Business ID (optional, defaults to first accessible business)'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'business': {'type': 'object'}, 'agent_count': {'type': 'integer'}, 'calls_last_30_days': {'type': 'integer'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['call_id'], 'properties': {'call_id': {'type': 'string', 'description': 'The KaiCalls call ID to get the recording for'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'call': {'type': 'object', 'properties': {'id': {'type': 'string'}, 'status': {'type': 'string'}, 'agent_id': {'type': ['string', 'null']}, 'agent_name': {'type': ['string', 'null']}, 'created_at': {'type': 'string'}, 'business_id': {'type': 'string'}, 'recording_url': {'type': ['string', 'null']}, 'conversation_id': {'type': ['string', 'null']}, 'duration_seconds': {'type': ['number', 'null']}}}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'recording_available': {'type': 'boolean'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['agent_id'], 'properties': {'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Max results to return (default 20, max 100).'}, 'agent_id': {'type': 'string', 'description': 'Agent ID to fetch change history for.'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'changes': {'type': 'array', 'items': {'type': 'object'}}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'agent_id': {'type': 'string'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['business_id', 'session_id'], 'properties': {'session_id': {'type': 'string'}, 'business_id': {'type': 'string'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'checkout': {'type': 'object'}, 'billing_only': {'type': 'boolean'}, 'activation_verified': {'type': 'boolean'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['conversation_id'], 'properties': {'conversation_id': {'type': 'string', 'description': 'The conversation ID to fetch.'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'conversation': {'type': 'object'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['business_id', 'request_id'], 'properties': {'request_id': {'type': 'string'}, 'business_id': {'type': 'string'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['lead_id'], 'properties': {'lead_id': {'type': 'string', 'description': 'The lead ID to fetch'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'lead': {'type': 'object'}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'business_id': {'type': 'string', 'description': 'Business ID (optional, defaults to first accessible business)'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'agents': {'type': 'array', 'items': {'type': 'object'}}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'business': {'type': 'object'}, 'business_links': {'type': 'array', 'items': {'type': 'object'}}, 'available_setup_tools': {'type': 'array', 'items': {'type': 'string'}}, 'notification_settings': {'type': ['object', 'null']}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'business_id': {'type': 'string', 'description': 'Business ID (required when the token can access multiple businesses).'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'flow': {'type': 'object'}, 'line': {'type': ['string', 'null']}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'readback': {'type': 'string', 'description': 'One-sentence plain-English description.'}, 'kai_extension': {'type': 'string'}, 'business_hours_available': {'type': 'boolean'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'business_id': {'type': 'string', 'description': 'Business ID (required when the token can access multiple businesses).'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'ids': {'type': 'object'}, 'line': {'type': ['string', 'null']}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'next_step': {'type': 'string'}, 'business_id': {'type': 'string'}, 'provisioned': {'type': 'boolean'}, 'kai_extension': {'type': ['string', 'null']}, 'provisioned_at': {'type': ['string', 'null']}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['business_id', 'idempotency_key'], 'properties': {'business_id': {'type': 'string'}, 'idempotency_key': {'type': 'string'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['business_id'], 'properties': {'business_id': {'type': 'string'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'addon': {'type': 'object'}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'known': {'type': 'object'}, 'chasers': {'type': 'object'}, 'missing': {'type': 'array', 'items': {'type': 'object'}}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'next_step': {'type': 'string'}, 'setup_url': {'type': 'string'}, 'ein_on_file': {'type': 'boolean'}, 'registration': {'type': ['object', 'null']}, 'next_question': {'type': ['object', 'null']}, 'next_step_text': {'type': 'string'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['call_id'], 'properties': {'call_id': {'type': 'string', 'description': 'The call ID to get the transcript for'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'call': {'type': 'object'}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'transcript': {'type': ['string', 'null']}, 'transcript_length': {'type': 'integer'}, 'transcript_available': {'type': 'boolean'}, 'transcript_truncated': {'type': 'boolean'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'end': {'type': 'string', 'description': 'ISO date/time upper bound (optional).'}, 'limit': {'type': 'integer', 'maximum': 500, 'minimum': 1, 'description': 'Max results to return (default 100, max 500).'}, 'start': {'type': 'string', 'description': 'ISO date/time lower bound (optional).'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'usage': {'type': 'array', 'items': {'type': 'object'}}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'has_more': {'type': 'boolean'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'business_id': {'type': 'string', 'description': 'Business ID (optional only when the token can access exactly one business).'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'events': {'type': 'array', 'items': {'type': 'string'}}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'webhooks': {'type': 'array', 'items': {'type': 'object'}}, 'business_id': {'type': 'string'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Max results to return (default 50, max 100)'}, 'offset': {'type': 'integer', 'minimum': 0, 'description': 'Zero-based pagination offset (default 0)'}, 'business_id': {'type': 'string', 'description': 'Business ID to filter by (optional, must be accessible)'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'count': {'type': 'integer'}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'limit': {'type': 'integer'}, 'agents': {'type': 'array', 'items': {'type': 'object'}}, 'offset': {'type': 'integer'}, 'filters': {'type': 'object'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'has_more': {'type': 'boolean'}, 'next_offset': {'type': ['integer', 'null']}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Max results to return (default 25, max 100)'}, 'offset': {'type': 'integer', 'minimum': 0, 'description': 'Zero-based pagination offset (default 0)'}, 'status': {'type': 'string', 'description': 'Filter by campaign status (optional)'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'count': {'type': 'integer'}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'limit': {'type': 'integer'}, 'offset': {'type': 'integer'}, 'filters': {'type': 'object'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'has_more': {'type': 'boolean'}, 'campaigns': {'type': 'array', 'items': {'type': 'object'}}, 'next_offset': {'type': ['integer', 'null']}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['agent_id'], 'properties': {'limit': {'type': 'integer', 'description': 'Max versions to return when listing (optional, default 50, max 100).'}, 'version': {'type': 'integer', 'description': 'Fetch a single version by its per-agent version_number, including its redacted config_snapshot (optional; omit to list).'}, 'agent_id': {'type': 'string', 'description': 'Agent ID (required).'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'version': {'type': ['object', 'null']}, 'agent_id': {'type': 'string'}, 'versions': {'type': 'array', 'items': {'type': 'object'}}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Max results to return (default 50, max 100).'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'has_more': {'type': 'boolean'}, 'conversations': {'type': 'array', 'items': {'type': 'object'}}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'agent_id': {'type': 'string', 'description': 'Filter by agent ID (optional).'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'evals': {'type': 'array', 'items': {'type': 'object'}}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'query': {'type': 'string', 'description': 'Free-text search over title/content (optional).'}, 'category': {'type': 'string', 'description': 'Filter by category (optional).'}, 'business_id': {'type': 'string', 'description': 'Business ID (optional only when the token can access exactly one business).'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'knowledge': {'type': 'array', 'items': {'type': 'object'}}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Max results to return (default 50, max 100)'}, 'offset': {'type': 'integer', 'minimum': 0, 'description': 'Zero-based pagination offset (default 0)'}, 'source': {'type': 'string', 'description': 'Filter by lead source (optional)'}, 'status': {'type': 'string', 'description': 'Filter by lead status (optional)'}, 'agent_id': {'type': 'string', 'description': 'Filter by agent ID (optional)'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'count': {'type': 'integer'}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'leads': {'type': 'array', 'items': {'type': 'object'}}, 'limit': {'type': 'integer'}, 'offset': {'type': 'integer'}, 'filters': {'type': 'object'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'has_more': {'type': 'boolean'}, 'next_offset': {'type': ['integer', 'null']}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'business_id': {'type': 'string', 'description': 'Business ID to filter by (optional).'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'numbers': {'type': 'array', 'items': {'type': 'object'}}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'to': {'type': 'string', 'format': 'date-time'}, 'from': {'type': 'string', 'format': 'date-time'}, 'limit': {'type': 'integer', 'default': 50, 'maximum': 100, 'minimum': 1}, 'cursor': {'type': 'string', 'description': 'Opaque next_cursor returned by the previous page.'}, 'source': {'enum': ['all', 'runtime', 'delivery'], 'type': 'string', 'description': 'Event stream to read (default: all).'}, 'call_id': {'type': 'string', 'description': 'Runtime-event call UUID filter.'}, 'outcome': {'enum': ['success', 'failure'], 'type': 'string', 'description': 'Integration-delivery filter.'}, 'provider': {'type': 'string', 'description': 'Integration-delivery filter.'}, 'severity': {'enum': ['info', 'warning', 'error'], 'type': 'string', 'description': 'Runtime-event filter.'}, 'object_id': {'type': 'string', 'description': 'Integration-delivery filter.'}, 'operation': {'type': 'string', 'description': 'Integration-delivery filter.'}, 'event_type': {'type': 'string', 'description': 'Runtime-event filter.'}, 'business_id': {'type': 'string', 'description': 'Business ID (optional only when the token can access exactly one business).'}, 'object_type': {'type': 'string', 'description': 'Integration-delivery filter.'}, 'connection_id': {'type': 'string', 'description': 'Integration connection UUID filter.'}, 'correlation_id': {'type': 'string', 'description': 'Runtime-event filter.'}, 'conversation_id': {'type': 'string', 'description': 'Runtime-event filter.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'events': {'type': 'array', 'items': {'type': 'object'}}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'pagination': {'type': 'object', 'properties': {'limit': {'type': 'integer'}, 'has_more': {'type': 'boolean'}, 'next_cursor': {'type': ['string', 'null']}}}, 'business_id': {'type': 'string'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'to': {'type': 'string', 'format': 'date-time'}, 'from': {'type': 'string', 'format': 'date-time'}, 'limit': {'type': 'integer', 'default': 50, 'maximum': 100, 'minimum': 1}, 'status': {'enum': ['pending', 'synced', 'skipped', 'error'], 'type': 'string'}, 'business_id': {'type': 'string', 'description': 'Business ID (optional only when the token can access exactly one business).'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'charges': {'type': 'array', 'items': {'type': 'object'}}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'business_id': {'type': 'string'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'plans': {'type': 'array', 'items': {'type': 'object'}}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'query': {'type': 'string', 'description': 'Free-text search over name/description (optional).'}, 'category': {'type': 'string', 'description': 'Filter by category (optional).'}, 'inventory': {'type': 'boolean', 'description': 'Include current inventory quantity per product (optional).'}, 'business_id': {'type': 'string', 'description': 'Business ID (optional only when the token can access exactly one business).'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'products': {'type': 'array', 'items': {'type': 'object'}}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Max results to return (default 20, max 100)'}, 'offset': {'type': 'integer', 'minimum': 0, 'description': 'Zero-based pagination offset (default 0)'}, 'status': {'type': 'string', 'description': 'Filter by status (optional)'}, 'agent_id': {'type': 'string', 'description': 'Filter by agent ID (optional)'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'calls': {'type': 'array', 'items': {'type': 'object'}}, 'count': {'type': 'integer'}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'limit': {'type': 'integer'}, 'offset': {'type': 'integer'}, 'filters': {'type': 'object'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'has_more': {'type': 'boolean'}, 'next_offset': {'type': ['integer', 'null']}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'to': {'type': 'string', 'format': 'date-time'}, 'from': {'type': 'string', 'format': 'date-time'}, 'limit': {'type': 'integer', 'default': 50, 'maximum': 100, 'minimum': 1}, 'action': {'enum': ['none', 'upgrade', 'downgrade', 'handoff_custom'], 'type': 'string'}, 'status': {'enum': ['dry_run', 'notified', 'kept', 'applied', 'superseded'], 'type': 'string'}, 'business_id': {'type': 'string', 'description': 'Business ID (optional only when the token can access exactly one business).'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'business_id': {'type': 'string'}, 'recommendations': {'type': 'array', 'items': {'type': 'object'}}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Max results to return (default 50, max 100)'}, 'offset': {'type': 'integer', 'minimum': 0, 'description': 'Zero-based pagination offset (default 0)'}, 'direction': {'type': 'string', 'description': 'Filter by direction: inbound or outbound (optional)'}, 'conversation_id': {'type': 'string', 'description': 'Filter by conversation ID (optional)'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'count': {'type': 'integer'}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'limit': {'type': 'integer'}, 'offset': {'type': 'integer'}, 'filters': {'type': 'object'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'has_more': {'type': 'boolean'}, 'messages': {'type': 'array', 'items': {'type': 'object'}}, 'next_offset': {'type': ['integer', 'null']}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'to': {'type': 'string', 'format': 'date-time'}, 'from': {'type': 'string', 'format': 'date-time'}, 'limit': {'type': 'integer', 'default': 50, 'maximum': 100, 'minimum': 1}, 'source': {'type': 'string', 'description': 'e.g. stripe_webhook, rightsize_apply_job.'}, 'business_id': {'type': 'string', 'description': 'Business ID (optional only when the token can access exactly one business).'}, 'change_type': {'enum': ['plan_change', 'created', 'canceled', 'reactivated', 'rightsize'], 'type': 'string'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'changes': {'type': 'array', 'items': {'type': 'object'}}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'business_id': {'type': 'string'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'to': {'type': 'string', 'format': 'date-time'}, 'from': {'type': 'string', 'format': 'date-time'}, 'limit': {'type': 'integer', 'default': 50, 'maximum': 100, 'minimum': 1}, 'call_id': {'type': 'string', 'description': 'Call/conversation id filter.'}, 'tool_name': {'type': 'string', 'description': 'Tool name filter (e.g. send_sms).'}, 'business_id': {'type': 'string', 'description': 'Business ID (optional only when the token can access exactly one business).'}, 'tool_call_id': {'type': 'string', 'description': 'Exact tool_call_id filter.'}, 'outcome_status': {'type': 'string', 'description': 'Outcome envelope status filter (e.g. success, needs_clarification, unavailable, queued, retryable_delay, hard_failure).'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'logs': {'type': 'array', 'items': {'type': 'object'}}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'business_id': {'type': 'string'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Max results to return (default 20, max 100)'}, 'offset': {'type': 'integer', 'minimum': 0, 'description': 'Zero-based pagination offset (default 0)'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'count': {'type': 'integer'}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'limit': {'type': 'integer'}, 'offset': {'type': 'integer'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'has_more': {'type': 'boolean'}, 'voicemails': {'type': 'array', 'items': {'type': 'object'}}, 'next_offset': {'type': ['integer', 'null']}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'gender': {'type': 'string', 'description': 'Filter by gender: male or female.'}, 'language': {'type': 'string', 'description': 'Filter by language label, e.g. English or Spanish.'}, 'provider': {'type': 'string', 'description': 'Filter by voice provider id, e.g. 11labs or azure.'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'voices': {'type': 'array', 'items': {'type': 'object'}}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'usage': {'type': 'string'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'defaults': {'type': 'object'}, 'templates': {'type': 'array', 'items': {'type': 'object'}}, 'cadence_config_fields': {'type': 'array', 'items': {'type': 'object'}}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['agent_id', 'to'], 'properties': {'to': {'type': 'string', 'description': 'Phone number to call (E.164 format, e.g. +19085551234)'}, 'name': {'type': 'string', 'description': 'Caller/lead name (optional)'}, 'context': {'type': 'string', 'description': 'Call context or reason (optional)'}, 'lead_id': {'type': 'string', 'description': 'Existing lead ID to associate (optional)'}, 'agent_id': {'type': 'string', 'description': 'KaiCalls agent ID to use for the call'}, 'call_language': {'enum': ['en', 'es'], 'type': 'string', 'description': 'Language Kai speaks on the call (optional, default en)'}, 'first_message': {'type': 'string', 'description': 'Override the agent greeting message (optional)'}, 'idempotency_key': {'type': 'string', 'description': 'Client-chosen key that makes this call exactly-once: retries with the same key never place a second call (optional but recommended)'}, 'report_language': {'type': 'string', 'description': 'Language the person asking reads, as a code or name (e.g. ar, ht, tr, bn, es, zh, vi). Kai confirms names, dates and numbers so the result can be relayed in this language (optional)'}, 'connector_activation_call': {'type': 'boolean', 'description': 'True only for the one-time connector activation call the recipient explicitly requested in this conversation. This is not permission for marketing, SMS, or future calls.'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'call': {'type': 'object', 'properties': {'id': {'type': ['string', 'null']}, 'to': {'type': 'string'}, 'status': {'type': 'string'}, 'lead_id': {'type': ['string', 'null']}, 'agent_id': {'type': 'string'}, 'business_id': {'type': 'string'}, 'conversation_id': {'type': ['string', 'null']}}}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'replayed': {'type': 'boolean'}, 'intent_id': {'type': 'string'}, 'preview_only': {'type': 'boolean'}, 'call_language': {'type': 'string'}, 'idempotency_key': {'type': 'string'}, 'report_language': {'type': 'string'}, 'counts_toward_activation': {'type': 'boolean'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['summary', 'description'], 'properties': {'summary': {'type': 'string', 'description': 'One-line summary of the problem (max 200 characters).'}, 'category': {'enum': ['agent_behavior', 'call_quality', 'billing', 'integration', 'phone_number', 'other'], 'type': 'string', 'default': 'other', 'description': 'What part of the product this issue relates to.'}, 'severity': {'enum': ['low', 'medium', 'high', 'urgent'], 'type': 'string', 'default': 'medium', 'description': 'How badly this is affecting the business.'}, 'business_id': {'type': 'string', 'description': 'Business ID (optional only when the token can access exactly one business).'}, 'description': {'type': 'string', 'description': 'Full details: what happened, what you expected, and any relevant call or time.'}, 'reporter_email': {'type': 'string', 'description': 'Email address support should reply to, if different from the account email.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'category': {'type': 'string'}, 'severity': {'type': 'string'}, 'report_id': {'type': 'string'}, 'business_id': {'type': 'string'}, 'support_notified': {'type': 'boolean'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['business_id', 'agent_id', 'phone_number', 'idempotency_key'], 'properties': {'agent_id': {'type': 'string'}, 'business_id': {'type': 'string'}, 'phone_number': {'type': 'string'}, 'idempotency_key': {'type': 'string'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['intent'], 'properties': {'actor': {'type': 'object', 'description': 'Who is asking: { type: agent|human|system|integration, id, display_name }.'}, 'intent': {'type': 'string', 'description': 'Update intent: phone.emergency_address.set, transcripts.sink.configure, agent.patch, numbers.purchase, or agent.config.rollback'}, 'reason': {'type': 'string', 'description': 'Required when changing the raw voice-agent configuration; recorded in the durable audit.'}, 'target': {'type': 'object', 'description': 'Target identifiers, e.g. { phone_number } for E911 or { agent_id } for agent.patch.'}, 'dry_run': {'type': 'boolean', 'description': 'Validate tenant, scope, schema, authority, and policy without executing.'}, 'payload': {'type': 'object', 'description': 'Intent payload. E911: address + disclosure_acknowledged=true. transcripts: webhook_url + events. agent.patch: name, inbound_prompt, outbound_prompt, sms_prompt, first_message, voice, model, max_duration, metadata, vapi_config, transfer_enabled, transfer_phone_number.'}, 'authority': {'type': 'object', 'description': 'How the change was authorized: { mode: none|agent_asserted|human_confirmed|dashboard_session|system_policy, confirmed_by, confirmed_at, confirmation_ref }. human_confirmed requires all three confirmation fields.'}, 'requester': {'type': 'object', 'description': 'Optional legacy requester metadata for audit trails (prefer actor).'}, 'source_ref': {'type': 'string', 'description': 'External source reference, such as a Discord message or automation run ID.'}, 'business_id': {'type': 'string', 'description': 'Business ID. Required when the API key can access multiple businesses.'}, 'idempotency_key': {'type': 'string', 'description': 'Required for any mutating request. Repeating a key returns the original outcome instead of re-running provider side effects.'}, 'queue_for_approval': {'type': 'boolean', 'description': 'When authority is missing, create a pending dashboard approval instead of returning needs_approval.'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'code': {'type': ['string', 'null']}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'intent': {'type': ['string', 'null']}, 'result': {'type': ['object', 'null']}, 'status': {'type': 'string'}, 'message': {'type': ['string', 'null']}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'summary': {'type': ['object', 'null']}, 'approval': {'type': ['object', 'null']}, 'request_id': {'type': ['string', 'null']}, 'risk_level': {'type': ['string', 'null']}, 'business_id': {'type': ['string', 'null']}, 'missing_fields': {'type': ['array', 'null'], 'items': {'type': 'string'}}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['business_id', 'activation_session_id', 'channel', 'idempotency_key'], 'properties': {'channel': {'enum': ['sms', 'email'], 'type': 'string'}, 'authority': {'type': 'object'}, 'business_id': {'type': 'string'}, 'idempotency_key': {'type': 'string'}, 'activation_session_id': {'type': 'string'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'status': {'type': 'string'}, 'attempt': {'type': ['object', 'null']}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'business_id': {'type': 'string'}, 'activation_session_id': {'type': 'string'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['business_id', 'agent_id', 'idempotency_key'], 'properties': {'agent_id': {'type': 'string'}, 'business_id': {'type': 'string'}, 'idempotency_key': {'type': 'string'}}, 'additionalProperties': False}
入力スキーマ
{'type': 'object', 'required': ['agent_id'], 'properties': {'actor': {'type': 'object', 'description': 'Who is asking: { type: agent|human|system|integration, id, display_name }.'}, 'reason': {'type': 'string', 'description': 'Optional human-readable reason recorded in the audit trail.'}, 'dry_run': {'type': 'boolean', 'description': 'Validate tenant, scope, and policy without touching the live config.'}, 'agent_id': {'type': 'string', 'description': 'Agent ID to roll back.'}, 'authority': {'type': 'object', 'description': 'Attribution only. Caller-supplied modes cannot authorize a rollback; authenticated owner review of the exact stored request is required.'}, 'source_ref': {'type': 'string', 'description': 'External source reference, such as a ticket or automation run ID.'}, 'version_id': {'type': 'string', 'description': 'Target assistant_config_versions row id to restore. One of version_number/version_id is required.'}, 'business_id': {'type': 'string', 'description': 'Business ID (optional only when the token can access exactly one business).'}, 'version_number': {'type': 'integer', 'description': 'Target assistant_config_versions.version_number to restore. One of version_number/version_id is required.'}, 'idempotency_key': {'type': 'string', 'description': 'Stable key for the rollback request; repeating it returns the original outcome. Defaults to a key derived from agent + version — pass a fresh key to repeat a rollback that already executed.'}, 'queue_for_approval': {'type': 'boolean', 'description': 'Create a durable owner-review request (default true). Setting false returns needs_approval, but an authority-envelope retry still cannot execute.'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'code': {'type': ['string', 'null']}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'result': {'type': ['object', 'null'], 'description': 'On executed: { agent_id, restored_from_version, restored_fields, skipped_fields, new_version_number, warning? }.'}, 'status': {'type': 'string'}, 'message': {'type': ['string', 'null']}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'summary': {'type': ['object', 'null']}, 'agent_id': {'type': 'string'}, 'approval': {'type': ['object', 'null']}, 'request_id': {'type': ['string', 'null']}, 'risk_level': {'type': ['string', 'null']}, 'business_id': {'type': ['string', 'null']}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'wait': {'type': 'boolean', 'description': 'Block until the run completes (default true).'}, 'eval_id': {'type': 'string', 'description': 'Run a single eval scenario by ID.'}, 'agent_id': {'type': 'string', 'description': 'Run every eval scenario for this agent.'}, 'max_wait_ms': {'type': 'integer', 'description': 'Per-run wait cap in ms when wait is true (default 60000, max 110000).'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'total': {'type': ['integer', 'null']}, 'failed': {'type': ['integer', 'null']}, 'passed': {'type': ['boolean', 'null']}, 'run_id': {'type': ['string', 'null']}, 'status': {'type': ['string', 'null']}, 'results': {'type': ['array', 'object', 'null']}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'completed': {'type': ['integer', 'null']}, 'vapi_run_id': {'type': ['string', 'null']}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['business_id'], 'properties': {'city': {'type': 'string'}, 'state': {'enum': ['AL', 'AK', 'AZ', 'AR', 'CA', 'CO', 'CT', 'DE', 'DC', 'FL', 'GA', 'HI', 'ID', 'IL', 'IN', 'IA', 'KS', 'KY', 'LA', 'ME', 'MD', 'MA', 'MI', 'MN', 'MS', 'MO', 'MT', 'NE', 'NV', 'NH', 'NJ', 'NM', 'NY', 'NC', 'ND', 'OH', 'OK', 'OR', 'PA', 'RI', 'SC', 'SD', 'TN', 'TX', 'UT', 'VT', 'VA', 'WA', 'WV', 'WI', 'WY', 'PR', 'VI', 'GU', 'AS', 'MP'], 'type': 'string'}, 'street': {'type': 'string', 'description': 'Must match the address the IRS has.'}, 'industry': {'enum': ['AUTOMOTIVE', 'AGRICULTURE', 'BANKING', 'CONSTRUCTION', 'CONSUMER', 'EDUCATION', 'ENGINEERING', 'ENERGY', 'OIL_AND_GAS', 'FAST_MOVING_CONSUMER_GOODS', 'FINANCIAL', 'FINTECH', 'FOOD_AND_BEVERAGE', 'GOVERNMENT', 'HEALTHCARE', 'HOSPITALITY', 'INSURANCE', 'LEGAL', 'MANUFACTURING', 'MEDIA', 'ONLINE', 'PROFESSIONAL_SERVICES', 'RAW_MATERIALS', 'REAL_ESTATE', 'RELIGION', 'RETAIL', 'JEWELRY', 'TECHNOLOGY', 'TELECOMMUNICATIONS', 'TRANSPORTATION', 'TRAVEL', 'ELECTRONICS', 'NOT_FOR_PROFIT'], 'type': 'string'}, 'text_types': {'enum': ['service', 'service_and_sales'], 'type': 'string', 'description': 'service: replies and follow-ups to people who contacted the business. service_and_sales: also lets sales texts go to people who opted in to marketing.'}, 'business_id': {'type': 'string'}, 'postal_code': {'type': 'string', 'description': '5-digit ZIP, or ZIP+4.'}, 'website_url': {'type': 'string', 'description': 'Carriers check the site loads.'}, 'business_type': {'enum': ['Sole Proprietorship', 'Partnership', 'Limited Liability Corporation', 'Co-operative', 'Non-profit Corporation', 'Corporation'], 'type': 'string'}, 'contact_email': {'type': 'string'}, 'contact_phone': {'type': 'string', 'description': 'A US number the carriers can reach.'}, 'contact_title': {'type': 'string', 'description': 'As the contact signs, e.g. Owner.'}, 'contact_last_name': {'type': 'string'}, 'contact_first_name': {'type': 'string'}, 'legal_business_name': {'type': 'string', 'description': 'Exactly as on the IRS EIN letter.'}, 'contact_job_position': {'enum': ['Director', 'GM', 'VP', 'CEO', 'CFO', 'General Counsel', 'Other'], 'type': 'string'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'saved': {'type': 'boolean'}, 'missing': {'type': 'array', 'items': {'type': 'object'}}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'next_step': {'type': 'string'}, 'setup_url': {'type': 'string'}, 'consent_url': {'type': 'string'}, 'saved_steps': {'type': 'array', 'items': {'type': 'string'}}, 'registration': {'type': 'object'}, 'next_question': {'type': 'object'}, 'next_step_text': {'type': 'string'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'maximum': 20, 'minimum': 1, 'description': 'Max results to return (default 10, max 20).'}, 'country': {'type': 'string', 'description': 'Two-letter country code (default US).'}, 'area_code': {'type': 'string', 'description': 'Preferred area code (optional).'}, 'business_id': {'type': 'string', 'description': "Search that business's carrier inventory (optional; defaults to the platform carrier)."}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'available_numbers': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['from_agent_id', 'to', 'message'], 'properties': {'to': {'type': 'string', 'description': 'Recipient phone number in E.164 format (e.g. +18135551234).'}, 'lead_id': {'type': 'string', 'description': "Optional lead ID to link and honor the lead's automation-pause state."}, 'message': {'type': 'string', 'description': 'Text message body.'}, 'from_agent_id': {'type': 'string', 'description': 'Agent ID whose phone line the text is sent from.'}, 'idempotency_key': {'type': 'string', 'description': 'Optional caller-supplied key. A replay with the same key returns the original send outcome instead of sending again — use it when retrying after an uncertain response.'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'to': {'type': ['string', 'null']}, 'from': {'type': ['string', 'null']}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'message_sid': {'type': ['string', 'null']}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['business_id', 'display_name'], 'properties': {'business_id': {'type': 'string'}, 'display_name': {'type': 'string', 'description': 'Up to 15 characters, e.g. SUMMIT ROOFING.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'charged': {'type': 'boolean'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'branded_caller_id': {'type': 'object'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': [], 'properties': {'declined': {'type': 'boolean', 'description': 'Set true (instead of owner_phone) when the caller will not give a reachable number. Records the business as an inquiry lead instead of a provisioned number — never buy a number after this.'}, 'ring_first': {'type': 'boolean', 'description': 'When true (default), ring this number first and overflow to the secretary. When false, only saves the number.'}, 'business_id': {'type': 'string', 'description': 'Business ID (optional only when the token can access exactly one business).'}, 'owner_phone': {'type': 'string', 'description': "The owner's own mobile number, US format (e.g. (908) 555-1234 or +19085551234). Required unless declined is true."}, 'contact_name': {'type': 'string', 'description': 'Only used with declined=true: the caller name, for the inquiry record.'}, 'contact_email': {'type': 'string', 'description': 'Only used with declined=true: an email for the inquiry record, if given.'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'status': {'type': 'string'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'next_step': {'type': 'string'}, 'business_id': {'type': 'string'}, 'ring_first_status': {'type': ['string', 'null']}, 'owner_phone_masked': {'type': ['string', 'null']}, 'ring_first_applied': {'type': 'boolean'}, 'owner_phone_present': {'type': 'boolean'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'persona': {'enum': ['cell_only', 'office'], 'type': 'string', 'description': "Which phones the business runs on, if the owner said: cell_only (just the owner's cell) or office (desk phones / an existing office line that will forward in). Shapes next_step; optional."}, 'business_id': {'type': 'string', 'description': 'Business ID (required when the token can access multiple businesses).'}, 'owner_mobile': {'type': 'string', 'description': "The owner's own mobile number (US). Optional when set_owner_phone already saved one; required when the last attempt returned missing_owner_mobile."}, 'business_address': {'type': 'object', 'required': ['street', 'city', 'state', 'zip'], 'properties': {'zip': {'type': 'string', 'description': '5-digit US ZIP code.'}, 'city': {'type': 'string'}, 'state': {'type': 'string', 'description': 'Two-letter US state code.'}, 'street': {'type': 'string', 'description': 'Street number and name.'}}, 'description': 'The business street address to save before provisioning. Optional when a complete address is already on file; required when the last attempt returned missing_address.'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'ids': {'type': 'object'}, 'code': {'type': 'string', 'description': 'Present when success is false.'}, 'line': {'type': ['string', 'null'], 'description': 'The phone-system line (E.164), if a number is attached.'}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'issues': {'type': 'array', 'items': {'type': 'object', 'properties': {'field': {'type': 'string'}, 'message': {'type': 'string'}}}, 'description': 'Address fields to correct when code is invalid_address.'}, 'reused': {'type': 'array', 'items': {'type': 'string'}}, 'created': {'type': 'array', 'items': {'type': 'string'}}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'warnings': {'type': 'array', 'items': {'type': 'string'}}, 'next_step': {'type': 'string', 'description': 'The one line to relay to the owner.'}, 'business_id': {'type': 'string'}, 'next_action': {'type': 'string', 'description': 'What to collect and how to retry, when blocked.'}, 'provisioned': {'type': 'boolean'}, 'kai_extension': {'type': 'string'}, 'required_field': {'enum': ['business_address', 'owner_mobile'], 'type': 'string', 'description': 'Present when setup is blocked on a missing input.'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['webhook_url'], 'properties': {'id': {'type': 'string', 'description': 'Existing webhook ID to update (omit to create new).'}, 'events': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Event types to subscribe to (see get_webhook for the supported list).'}, 'is_active': {'type': 'boolean', 'description': 'Enable or disable delivery.'}, 'business_id': {'type': 'string', 'description': 'Business ID (optional only when the token can access exactly one business).'}, 'description': {'type': 'string', 'description': 'Human label for this webhook.'}, 'webhook_url': {'type': 'string', 'description': 'HTTPS/HTTP destination URL for event delivery.'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'events': {'type': 'array', 'items': {'type': 'string'}}, 'message': {'type': 'string'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'webhook': {'type': 'object'}, 'business_id': {'type': 'string'}, 'webhook_secret': {'type': ['string', 'null']}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['business_id'], 'properties': {'business_id': {'type': 'string'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'filed': {'type': 'boolean'}, 'charged': {'type': 'boolean'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'monthly_usd': {'type': 'number'}, 'checkout_url': {'type': 'string'}, 'one_time_usd': {'type': 'number'}, 'included_in_plan': {'type': 'boolean'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['agent_id'], 'properties': {'name': {'type': 'string', 'description': 'Agent display name.'}, 'actor': {'type': 'object', 'description': 'Who is asking: { type: agent|human|system|integration, id, display_name }.'}, 'model': {'type': 'object', 'description': 'Language model selection: { provider, model, temperature }.'}, 'voice': {'type': 'object', 'description': 'Voice selection: { provider, voiceId }.'}, 'dry_run': {'type': 'boolean', 'description': 'Validate and summarize the change without writing.'}, 'agent_id': {'type': 'string', 'description': 'KaiCalls agent ID to update.'}, 'authority': {'type': 'object', 'description': 'Attribution only. Caller-supplied authority cannot authorize live changes; authenticated owner review of the stored request is required.'}, 'sms_prompt': {'type': 'string', 'description': 'SMS reply prompt.'}, 'source_ref': {'type': 'string', 'description': 'External source reference, such as a support ticket or conversation ID.'}, 'business_id': {'type': 'string', 'description': 'Business ID. Required when the agent has multiple accessible assignments.'}, 'max_duration': {'type': 'integer', 'description': 'Maximum call duration in seconds.'}, 'first_message': {'type': 'string', 'description': 'Spoken greeting / first message callers hear.'}, 'inbound_prompt': {'type': 'string', 'description': 'Full inbound system prompt that drives the agent.'}, 'idempotency_key': {'type': 'string', 'description': 'Required for writes. Reuse the same key when retrying the same change.'}, 'outbound_prompt': {'type': 'string', 'description': 'Outbound (campaign) system prompt.'}, 'transfer_enabled': {'type': 'boolean', 'description': 'Enable/disable live call transfer.'}, 'queue_for_approval': {'type': 'boolean', 'description': 'When authority is missing, create a pending dashboard approval instead of returning needs_approval.'}, 'transfer_phone_number': {'type': 'string', 'description': 'Number to transfer qualified calls to.'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'code': {'type': ['string', 'null']}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'result': {'type': ['object', 'null']}, 'status': {'type': 'string'}, 'message': {'type': ['string', 'null']}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'summary': {'type': ['object', 'null']}, 'agent_id': {'type': ['string', 'null']}, 'approval': {'type': ['object', 'null']}, 'request_id': {'type': ['string', 'null']}, 'risk_level': {'type': ['string', 'null']}, 'business_id': {'type': ['string', 'null']}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'required': ['flow'], 'properties': {'flow': {'type': 'object', 'description': 'The complete phone flow to apply.'}, 'business_id': {'type': 'string', 'description': 'Business ID (required when the token can access multiple businesses).'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'flow': {'type': 'object'}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'changes': {'type': 'array', 'items': {'type': 'string'}}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'readback': {'type': 'string'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'id': {'type': 'string', 'description': 'Knowledge item ID to update (omit to create).'}, 'tags': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'content': {'type': 'string'}, 'category': {'type': 'string'}, 'business_id': {'type': 'string', 'description': 'Business ID. Required for create when the token can access multiple businesses.'}, 'content_type': {'type': 'string'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'knowledge': {'type': ['object', 'null']}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'lead': {'type': 'object', 'description': 'Fields for a NEW lead: name, first_name, last_name, phone, email, status, source, notes, address, city, state, zip, agent_id, message. At least one of name/phone/email is required.'}, 'updates': {'type': 'array', 'items': {'type': 'object', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Lead ID to update.'}}}, 'description': 'Update existing leads. Each item is { id, ...fields } where fields are a subset of name, first_name, last_name, email, phone, status, source, notes, address, city, state, zip. Max 100 per call.'}, 'business_id': {'type': 'string', 'description': 'Business ID. Required for create when the API key can access multiple businesses.'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'lead': {'type': ['object', 'null']}, 'error': {'type': 'string', 'description': 'Present when success is false'}, 'failed': {'type': ['integer', 'null']}, 'results': {'type': ['array', 'null'], 'items': {'type': 'object'}}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}, 'updated': {'type': ['integer', 'null']}, 'operation': {'type': 'string', 'description': 'create or update'}}, 'additionalProperties': True}
入力スキーマ
{'type': 'object', 'properties': {'id': {'type': 'string', 'description': 'Product ID to update (omit to create).'}, 'sku': {'type': 'string'}, 'name': {'type': 'string'}, 'price': {'type': 'number'}, 'category': {'type': 'string'}, 'quantity': {'type': 'number', 'description': 'Inventory quantity to set (optional).'}, 'attributes': {'type': 'object'}, 'business_id': {'type': 'string', 'description': 'Business ID. Required for create when the token can access multiple businesses.'}, 'description': {'type': 'string'}}}
出力スキーマ
{'type': 'object', 'required': ['success'], 'properties': {'error': {'type': 'string', 'description': 'Present when success is false'}, 'product': {'type': ['object', 'null']}, 'success': {'type': 'boolean', 'description': 'Whether the tool completed successfully'}}, 'additionalProperties': True}
最近のツール変更
類似のMCPサーバー
Odichat
Manages WhatsApp, Instagram, and Facebook inboxes with contacts, conversations, agents, automation rules, labels, canned response…
trengo
Manages Trengo customer-support tickets, contacts, teams, messages, assignments, board cards, and operational reports.
Agent Broker
Finds and verifies businesses, captures leads, sends compliant messages, places calls, and schedules appointments.
Crisp
Provides access to Crisp customer support, live chat, CRM, and helpdesk capabilities.
neuron
Operates AI chatbots and messaging workflows across WhatsApp and social channels, including contacts, campaigns, conversations, p…
freedom-mcp
Supports company operations through commitments, teams, agents, customer evidence, leads, content workflows, spreadsheets, commer…
独行录 / opcmenu
Supports founder and company discovery, collaboration goals and tasks, events and signups, networking, messaging, profiles, produ…
Meta Council
Provides governed workflows for consulting, outreach, sales deals, invoices, marketing campaigns, content approvals, accounting a…