Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,071Paid calls: 1,545Letters: 14Defects: 1,324counted 3 min ago
teppi

Server definition

Hash
sha256:0aa17c63bd55afb16b42f9bff71b294dced7b31b0b326d387208bc374a3b179e
What it is
What a remote MCP server returned when asked what it offers: 37 tools

The blob, as servednamed by its sha256

{ "instructions": null, "tools": [ { "description": "Create a new data source for the authenticated application. The 'settings' object must match the given 'type'. Returns the created data source. Creating a data source does not sync any content — use run_data_source to start a sync.", "inputSchema": { "additionalProperties": false, "properties": { "integration_id": { "anyOf": [ { "format": "uuid", "type": "string" }, { "type": "null" } ], "default": null, "description": "Integration UUID for connected data sources. Required for WordPress data sources." }, "name": { "description": "Human-readable display name of the data source (e.g. 'Company Website').", "type": "string" }, "schedule": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Cron expression (e.g. '0 3 * * *') or null to disable scheduled re-sync." }, "settings": { "description": "Type-specific config. Pass as an inline JSON object — do NOT serialize to a string. Must include a 'type' discriminator field: 'website_crawler', 'pdf_upload', 'open_api', 'helpspace', 'custom_webcrawler', or 'webhook'.", "oneOf": [ { "anyOf": [ { "properties": { "actor": { "default": "apify/website-content-crawler", "enum": [ "apify/website-content-crawler" ], "type": "string" }, "crawler_type": { "default": "cheerio", "enum": [ "playwright:firefox", "playwright:adaptive", "cheerio" ], "type": "string" }, "custom_tags": { "description": "Tags defined by the user that are displayed as badges in frontend. Applies to all pages crawled with this data source.", "items": { "type": "string" }, "type": "array" }, "exclude_url_globs": { "items": { "type": "string" }, "type": "array" }, "filters": { "anyOf": [ { "properties": { "criteria": { "items": { "properties": { "condition": { "properties": { "type": { "enum": [ "max_age_days", "contains" ], "type": "string" }, "value": { "anyOf": [ { "type": "integer" }, { "type": "string" } ] } }, "required": [ "type", "value" ], "type": "object" }, "field": { "enum": [ "published_time", "modified_time" ], "type": "string" } }, "required": [ "field", "condition" ], "type": "object" }, "type": "array" } }, "type": "object" }, { "type": "null" } ], "default": null }, "ignore_canonical_url": { "default": false, "description": "Ignore canonical URLs when crawling if they are incorrectly defined or the crawler should consider Query Parameters as well.", "type": "boolean" }, "ignore_errors": { "default": false, "description": "Ignore any page-specific errors (Lang-Tab not available, status code etc.) and continue crawling.", "type": "boolean" }, "include_url_globs": { "items": { "type": "string" }, "type": "array" }, "max_crawl_depth": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "default": 20 }, "max_pages_per_crawl": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "default": 30 }, "remove_html_elements": { "default": "footer, div.footer, #footer, header, div.pageheader, #pageheader, script, style, noscript, svg, [role=\"alert\"], [role=\"banner\"], [role=\"dialog\"], [role=\"alertdialog\"], [role=\"region\"][aria-label*=\"skip\" i], [aria-modal=\"true\"], #branchly-chat-widget-container, #branchly-embed-container, #branchly-chat-embed-container, #branchly-search-interface-container", "description": "List of CSS selectors to remove from the HTML content. List should be separated by commas.", "type": "string" }, "title_suffix_to_remove": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Remove suffix or prefix from page titles." }, "type": { "const": "website_crawler", "default": "website_crawler", "type": "string" }, "unavailable_source_policy": { "anyOf": [ { "description": "Policy for handling unavailable URLs during data source sync.", "enum": [ "ignore", "delete_unavailable" ], "type": "string" }, { "type": "null" } ], "default": "delete_unavailable", "description": "Policy for handling unavailable Sources/URLs during data source run." }, "urls": { "properties": { "start_urls": { "items": { "format": "uri", "minLength": 1, "type": "string" }, "type": "array" } }, "required": [ "start_urls" ], "type": "object" } }, "required": [ "urls" ], "type": "object" }, { "properties": { "files": { "items": { "properties": { "file_name": { "type": "string" }, "is_external": { "default": false, "type": "boolean" }, "url": { "format": "uri", "minLength": 1, "type": "string" } }, "required": [ "file_name", "url" ], "type": "object" }, "type": "array" }, "type": { "const": "file_upload", "default": "file_upload", "type": "string" } }, "required": [ "files" ], "type": "object" }, { "properties": { "data_template_mapping": { "properties": { "custom_metadata": { "anyOf": [ { "properties": { "score_boost": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "tags": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null } }, "type": "object" }, { "type": "null" } ], "default": null }, "page_metadata": { "anyOf": [ { "properties": { "article": { "anyOf": [ { "properties": { "modified_time": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "published_time": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "tags": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null } }, "type": "object" }, { "type": "null" } ], "default": null }, "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "images": { "anyOf": [ { "properties": { "url": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null } }, "type": "object" }, { "type": "null" } ], "default": null }, "title": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null } }, "type": "object" }, { "type": "null" } ], "default": null }, "source": { "type": "string" }, "text": { "type": "string" }, "title": { "type": "string" } }, "required": [ "text", "title", "source" ], "type": "object" }, "extra_options": { "anyOf": [ { "additionalProperties": { "anyOf": [ { "type": "string" }, { "type": "boolean" }, { "type": "number" }, { "type": "integer" }, { "type": "null" } ] }, "type": "object" }, { "type": "null" } ], "default": null }, "openapi_spec": { "type": "string" }, "operation_id": { "type": "string" }, "response_content_path": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "type": { "const": "openAPI", "default": "openAPI", "type": "string" }, "unavailable_source_policy": { "anyOf": [ { "description": "Policy for handling unavailable URLs during data source sync.", "enum": [ "ignore", "delete_unavailable" ], "type": "string" }, { "type": "null" } ], "default": "delete_unavailable", "description": "Policy for handling unavailable Sources/URLs during data source run." } }, "required": [ "openapi_spec", "operation_id", "data_template_mapping" ], "type": "object" }, { "properties": { "api_token": { "type": "string" }, "client_id": { "type": "string" }, "site_id": { "type": "integer" }, "type": { "const": "helpspace", "default": "helpspace", "type": "string" }, "unavailable_source_policy": { "anyOf": [ { "description": "Policy for handling unavailable URLs during data source sync.", "enum": [ "ignore", "delete_unavailable" ], "type": "string" }, { "type": "null" } ], "default": "delete_unavailable", "description": "Policy for handling unavailable Sources/URLs during data source run." } }, "required": [ "client_id", "api_token", "site_id" ], "type": "object" }, { "properties": { "actor": { "default": "apify/website-content-crawler", "enum": [ "apify/website-content-crawler" ], "type": "string" }, "crawler_type": { "default": "cheerio", "enum": [ "playwright:firefox", "playwright:adaptive", "cheerio" ], "type": "string" }, "custom_tags": { "description": "Tags defined by the user that are displayed as badges in frontend. Applies to all pages crawled with this data source.", "items": { "type": "string" }, "type": "array" }, "exclude_url_globs": { "items": { "type": "string" }, "type": "array" }, "fetch_image_captions": { "default": false, "description": "Fetch and generate captions for images found during crawling.", "type": "boolean" }, "graph_builder": { "properties": { "connect_start_urls_to_entry": { "default": true, "description": "Connect start URLs to entry node", "type": "boolean" }, "contact_node_ids": { "anyOf": [ { "items": { "format": "uuid", "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null }, "navigation_builder": { "oneOf": [ { "properties": { "breadcrumb_selector": { "type": "string" }, "type": { "const": "breadcrumbs", "default": "breadcrumbs", "type": "string" } }, "required": [ "breadcrumb_selector", "type" ], "type": "object" } ] }, "nodes_wo_edges_to_root": { "default": false, "description": "Nodes without incoming/outgoing edges to the root node/start url. Prevents orphan nodes", "type": "boolean" }, "nodes_wo_out_edges_to_contact": { "default": false, "description": "Nodes without outgoing edges to contact nodes. Uses contact_node_ids if available, otherwise all contact nodes", "type": "boolean" }, "nodes_wo_out_edges_to_tool": { "default": false, "description": "Nodes without outgoing edges to tool nodes. Uses tool_node_ids if available, otherwise all tool nodes", "type": "boolean" }, "tool_node_ids": { "anyOf": [ { "items": { "format": "uuid", "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null } }, "required": [ "navigation_builder" ], "type": "object" }, "ignore_errors": { "default": false, "type": "boolean" }, "include_url_globs": { "items": { "type": "string" }, "type": "array" }, "main_content_marker": { "properties": { "end_marker": { "type": "string" }, "selector_filter": { "type": "string" }, "start_marker": { "type": "string" }, "type": { "const": "comments", "default": "comments", "type": "string" } }, "required": [ "selector_filter", "start_marker", "end_marker" ], "type": "object" }, "title_suffix_to_remove": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Remove suffix or prefix from page titles." }, "type": { "const": "custom_website_crawler", "default": "custom_website_crawler", "type": "string" }, "unavailable_source_policy": { "anyOf": [ { "description": "Policy for handling unavailable URLs during data source sync.", "enum": [ "ignore", "delete_unavailable" ], "type": "string" }, { "type": "null" } ], "default": "ignore", "description": "Policy for handling unavailable Sources/URLs during data source run." }, "urls": { "properties": { "start_urls": { "items": { "format": "uri", "minLength": 1, "type": "string" }, "type": "array" } }, "required": [ "start_urls" ], "type": "object" } }, "required": [ "urls", "main_content_marker", "graph_builder" ], "type": "object" }, { "description": "Settings for webhook data source.", "properties": { "data_template_mapping": { "anyOf": [ { "properties": { "custom_metadata": { "anyOf": [ { "properties": { "score_boost": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "tags": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null } }, "type": "object" }, { "type": "null" } ], "default": null }, "page_metadata": { "anyOf": [ { "properties": { "article": { "anyOf": [ { "properties": { "modified_time": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "published_time": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "tags": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null } }, "type": "object" }, { "type": "null" } ], "default": null }, "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "images": { "anyOf": [ { "properties": { "url": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null } }, "type": "object" }, { "type": "null" } ], "default": null }, "title": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null } }, "type": "object" }, { "type": "null" } ], "default": null }, "source": { "type": "string" }, "text": { "type": "string" }, "title": { "type": "string" } }, "required": [ "text", "title", "source" ], "type": "object" }, { "type": "null" } ], "default": null, "description": "Optional template mapping for custom webhook payloads. If provided, incoming data will be mapped to internal format." }, "type": { "const": "webhook", "default": "webhook", "type": "string" } }, "type": "object" }, { "properties": { "api_path": { "default": "/wp-json/wp/v2", "type": "string" }, "default_site_locale": { "default": "de", "description": "Locale assigned to all posts in 'static' mode, or used as fallback in detection modes.", "type": "string" }, "excluded_categories": { "items": { "type": "integer" }, "type": "array" }, "filters": { "anyOf": [ { "properties": { "criteria": { "items": { "properties": { "condition": { "properties": { "type": { "enum": [ "max_age_days", "contains" ], "type": "string" }, "value": { "anyOf": [ { "type": "integer" }, { "type": "string" } ] } }, "required": [ "type", "value" ], "type": "object" }, "field": { "enum": [ "published_time", "modified_time" ], "type": "string" } }, "required": [ "field", "condition" ], "type": "object" }, "type": "array" } }, "type": "object" }, { "type": "null" } ], "default": null }, "locale_detection": { "default": "static", "description": "Strategy for inferring the locale from a post's URL. 'static' uses default_locale for all posts. 'path_prefix' reads the first path segment (domain.com/en/page). 'subdomain' reads the subdomain (en.domain.com). 'query_param' reads the ?lang= query parameter. 'wpml' queries the WPML REST API per language (?lang=xx) and tags each post with the queried language code.", "enum": [ "static", "path_prefix", "subdomain", "query_param", "wpml" ], "type": "string" }, "locale_mapping": { "additionalProperties": { "type": "string" }, "description": "Map detected URL language codes to app locales. e.g. {'en': 'en', 'de': 'de', 'fr_FR': 'fr'}. Applied after locale_detection; unmatched codes are used as-is. Falls back to default_locale when no locale is detected.Locale mapping is used to filter posts in 'wpml' language detection mode.", "type": "object" }, "post_status": { "items": { "type": "string" }, "minItems": 1, "type": "array" }, "post_types": { "items": { "type": "string" }, "minItems": 1, "type": "array" }, "timeout": { "default": 30, "maximum": 120, "minimum": 5, "type": "integer" }, "type": { "const": "wordpress", "default": "wordpress", "type": "string" }, "unavailable_source_policy": { "anyOf": [ { "description": "Policy for handling unavailable URLs during data source sync.", "enum": [ "ignore", "delete_unavailable" ], "type": "string" }, { "type": "null" } ], "default": "delete_unavailable" }, "verify_ssl": { "default": true, "type": "boolean" } }, "type": "object" } ], "required": [ "type" ] } ] }, "type": { "description": "Must match the 'type' discriminator of the 'settings' object when both are provided.", "enum": [ "website_crawler", "file_upload", "node_editor", "default_node", "openAPI", "helpspace", "custom_website_crawler", "webhook", "wordpress" ], "type": "string" } }, "required": [ "name", "type", "settings" ], "type": "object" }, "name": "create_data_source", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Create a new content node in the knowledge base. Label defaults to 'content'.", "inputSchema": { "additionalProperties": false, "properties": { "custom_metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "default": null }, "label": { "default": "content", "enum": [ "entry", "content", "contact", "tool", "fallback", "integration", "style", "chat_navigator_style", "search_style", "search_result", "navigator", "feedback" ], "type": "string" }, "score_boost": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "default": null, "description": "Boost value for search ranking. Higher is better. Use null for no boost." }, "source": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Source URL for the node content." }, "text": { "additionalProperties": { "type": "string" }, "description": "Locale-keyed body content (HTML) map, e.g. {\"de\": \"<p>Inhalt</p>\", \"en\": \"<p>Content</p>\"}.", "type": "object" }, "title": { "additionalProperties": { "type": "string" }, "description": "Locale-keyed title map, e.g. {\"de\": \"Titel\", \"en\": \"Title\"}.", "type": "object" } }, "required": [ "title", "text" ], "type": "object" }, "name": "create_node", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Create a new prompt version for the authenticated application. The new prompt is automatically set as active and the previously active prompt of the same type and subtype is deactivated. Use this whenever you want to change prompt text.", "inputSchema": { "additionalProperties": false, "properties": { "interface_type": { "anyOf": [ { "description": "Coarser grouping of EmbedType for prompt scoping.\n\nFollows the same pattern as StyleType in the interface_styles domain.\nEach value maps to one or more EmbedType values via ``embed_type_to_interface_type``.", "enum": [ "chat", "navigator", "search", "api", "form" ], "type": "string" }, { "type": "null" } ], "default": null, "description": "Interface scope of the prompt: 'chat', 'navigator', 'search', or 'api'. Required for 'chat' and 'search_answering' prompt types; omit for 'suggested_questions' and 'chat_evaluation'." }, "prompt": { "type": "string" }, "subtype": { "anyOf": [ { "description": "Subtypes for prompts - used for routing vs output instructions.", "enum": [ "routing_instructions", "output_instructions" ], "type": "string" }, { "type": "null" } ], "default": null, "description": "'routing_instructions' or 'output_instructions'. Returns all when omitted." }, "type": { "description": "Types of prompts in the system.", "enum": [ "chat", "search_answering", "suggested_questions", "chat_evaluation" ], "type": "string" } }, "required": [ "prompt", "type" ], "type": "object" }, "name": "create_prompt", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Create a new tool (AI action) for the authenticated application. Tool names must be unique per application, snake_case, max 64 chars. 'tool_config' and 'function_arguments' must match the given 'tool_type'. Returns the created tool.", "inputSchema": { "additionalProperties": false, "properties": { "agents": { "anyOf": [ { "items": { "enum": [ "chat_routing", "chat_output", "search_answer", "form_answer", "form_routing", "follow_up_actions", "suggested_questions", "web_mcp" ], "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "description": "Optional list of agent types that may use this tool: 'chat_routing', 'chat_output', 'search_answer', 'form_answer', 'form_routing', 'follow_up_actions', 'suggested_questions'." }, "description": { "description": "Natural-language description of what the tool does and when the LLM should call it.", "type": "string" }, "function_arguments": { "anyOf": [ { "properties": { "data_source_ids_filter": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null }, "data_source_types_filter": { "anyOf": [ { "items": { "enum": [ "website_crawler", "file_upload", "node_editor", "default_node", "openAPI", "helpspace", "custom_website_crawler", "webhook", "wordpress" ], "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null }, "document_limit_default": { "default": 15, "type": "integer" }, "document_limit_rerank": { "default": 25, "type": "integer" }, "formatter": { "default": "grouped_chunks", "enum": [ "chunks_with_source", "numbered_chunks_with_source", "grouped_chunks", "grouped_chunks_with_custom_metadata", "grouped_chunks_with_page_metadata" ], "type": "string" }, "node_ids_filter": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null }, "node_labels_filter": { "anyOf": [ { "items": { "enum": [ "entry", "content", "contact", "tool", "fallback", "integration", "style", "chat_navigator_style", "search_style", "search_result", "navigator", "feedback" ], "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null }, "object": { "const": "knowledge_base_tool_arguments", "default": "knowledge_base_tool_arguments", "type": "string" }, "rerank": { "default": false, "type": "boolean" }, "retrieval_method": { "default": "default", "enum": [ "default", "parent_context" ], "type": "string" }, "sources_filter": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null } }, "type": "object" }, { "properties": { "node_ids": { "description": "List of node IDs to look up in the graph.", "items": { "type": "string" }, "type": "array" }, "object": { "const": "node_lookup_tool_arguments", "default": "node_lookup_tool_arguments", "type": "string" } }, "type": "object" }, { "properties": { "object": { "const": "send_email_tool_arguments", "default": "send_email_tool_arguments", "type": "string" }, "sender_email": { "format": "email", "type": "string" } }, "required": [ "sender_email" ], "type": "object" }, { "properties": { "limit": { "default": 5, "type": "integer" }, "object": { "const": "web_search_tool_arguments", "default": "web_search_tool_arguments", "type": "string" } }, "type": "object" }, { "properties": { "object": { "const": "web_page_reader_tool_arguments", "default": "web_page_reader_tool_arguments", "type": "string" }, "target_selector": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Only returns elements from CSS selector." }, "url": { "type": "string" }, "wait_for_selector": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Wait for a specific element to appear before returning. For dynamic content." } }, "required": [ "url" ], "type": "object" }, { "properties": { "data_privacy_text": { "anyOf": [ { "additionalProperties": { "type": "string" }, "type": "object" }, { "type": "null" } ], "default": null, "description": "Optional data privacy text. If provided, a checkbox should be displayed to the user." }, "form_title": { "additionalProperties": { "type": "string" }, "type": "object" }, "notification_email": { "anyOf": [ { "format": "email", "type": "string" }, { "items": { "format": "email", "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "description": "Used for email forwarding of form submissions. If not provided, no email will be forwarded" }, "object": { "const": "form_tool_arguments", "default": "form_tool_arguments", "type": "string" }, "show_data_privacy_text": { "default": false, "type": "boolean" }, "submit_button_text": { "additionalProperties": { "type": "string" }, "type": "object" }, "submit_message": { "additionalProperties": { "type": "string" }, "type": "object" } }, "required": [ "form_title", "submit_message", "submit_button_text" ], "type": "object" }, { "properties": { "channels": { "type": "string" }, "domain": { "type": "string" }, "entity_type": { "const": "Event", "default": "Event", "type": "string" }, "event": { "anyOf": [ { "properties": { "event_type": { "enum": [ "carousel_v1" ], "type": "string" }, "mapping": { "properties": { "detail": { "default": "{{event_date_time.0.start_date}} - {{event_date_time.0.end_date}}<br>{{address.city}}<br>", "type": "string" }, "id": { "default": "{{event_id}}", "type": "string" }, "image_url": { "default": "{{first_image.url}}", "type": "string" }, "resource_url": { "default": "{{link}}", "type": "string" }, "tags": { "default": "{{tags}}", "type": "string" }, "title": { "default": "{{event_name}}", "type": "string" }, "type": { "const": "carousel_v1", "default": "carousel_v1", "type": "string" } }, "type": "object" } }, "required": [ "event_type", "mapping" ], "type": "object" }, { "type": "null" } ], "default": null, "description": "Optional frontend event mapping." }, "object": { "const": "venus_knowledge_graph_tool_arguments", "default": "venus_knowledge_graph_tool_arguments", "type": "string" }, "projects": { "type": "string" } }, "required": [ "projects", "channels", "domain" ], "type": "object" }, { "properties": { "event": { "anyOf": [ { "properties": { "event_type": { "enum": [ "carousel_v1" ], "type": "string" }, "mapping": { "properties": { "detail": { "default": "{{event_date_time.0.start_date}} - {{event_date_time.0.end_date}}<br>{{address.city}}<br>", "type": "string" }, "id": { "default": "{{event_id}}", "type": "string" }, "image_url": { "default": "{{first_image.url}}", "type": "string" }, "resource_url": { "default": "{{link}}", "type": "string" }, "tags": { "default": "{{tags}}", "type": "string" }, "title": { "default": "{{event_name}}", "type": "string" }, "type": { "const": "carousel_v1", "default": "carousel_v1", "type": "string" } }, "type": "object" } }, "required": [ "event_type", "mapping" ], "type": "object" }, { "type": "null" } ], "default": null, "description": "Optional frontend event mapping." }, "object": { "const": "regiondo_tool_arguments", "default": "regiondo_tool_arguments", "type": "string" }, "public_key": { "type": "string" }, "secret_key": { "type": "string" } }, "required": [ "secret_key", "public_key" ], "type": "object" }, { "properties": { "events": { "description": "List of frontend events to be triggered by this tool", "items": { "properties": { "event_type": { "enum": [ "carousel_v1" ], "type": "string" }, "mapping": { "properties": { "detail": { "default": "{{event_date_time.0.start_date}} - {{event_date_time.0.end_date}}<br>{{address.city}}<br>", "type": "string" }, "id": { "default": "{{event_id}}", "type": "string" }, "image_url": { "default": "{{first_image.url}}", "type": "string" }, "resource_url": { "default": "{{link}}", "type": "string" }, "tags": { "default": "{{tags}}", "type": "string" }, "title": { "default": "{{event_name}}", "type": "string" }, "type": { "const": "carousel_v1", "default": "carousel_v1", "type": "string" } }, "type": "object" }, "mcp_tool_entities": { "anyOf": [ { "properties": { "key": { "description": "The key to use to identify the entity from the MCP server response", "type": "string" }, "values": { "description": "The specific entities (values) that should be mapped to the frontend event", "items": { "type": "string" }, "type": "array" } }, "required": [ "key" ], "type": "object" }, { "type": "null" } ], "default": null, "description": "Mapping to distinguish entities from the MCP server response. If None, map to all entities" }, "mcp_tool_names": { "description": "List of tool names this frontend event should be mapped to. If empty, map to all tools of the MCP server.", "items": { "type": "string" }, "type": "array" } }, "required": [ "event_type", "mapping" ], "type": "object" }, "type": "array" }, "headers": { "anyOf": [ { "additionalProperties": { "type": "string" }, "type": "object" }, { "type": "null" } ], "default": null, "description": "Optional headers to be sent with the request to the MCP server." }, "image_url": { "anyOf": [ { "format": "uri", "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Optional image URL to be shown in the Dashboard. Only for frontend display." }, "mcp_url": { "format": "uri", "minLength": 1, "type": "string" }, "object": { "const": "mcp_server_tool_arguments", "default": "mcp_server_tool_arguments", "type": "string" } }, "required": [ "mcp_url" ], "type": "object" }, { "description": "Arguments for the API tool that define how to make HTTP requests.\n\nContains the static configuration for executing API requests.\nUse {{parameter_name}} mustache notation in url, query_params, headers, and body\nto reference parameters defined in tool_config.", "properties": { "body": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "default": null, "description": "Request body. Values can include parameter placeholders using mustache notation like {{parameter_name}}." }, "body_content_type": { "default": "application/json", "description": "Content type of the request body.", "enum": [ "application/json", "application/x-www-form-urlencoded" ], "type": "string" }, "event": { "anyOf": [ { "properties": { "event_type": { "enum": [ "carousel_v1" ], "type": "string" }, "mapping": { "properties": { "detail": { "default": "{{event_date_time.0.start_date}} - {{event_date_time.0.end_date}}<br>{{address.city}}<br>", "type": "string" }, "id": { "default": "{{event_id}}", "type": "string" }, "image_url": { "default": "{{first_image.url}}", "type": "string" }, "resource_url": { "default": "{{link}}", "type": "string" }, "tags": { "default": "{{tags}}", "type": "string" }, "title": { "default": "{{event_name}}", "type": "string" }, "type": { "const": "carousel_v1", "default": "carousel_v1", "type": "string" } }, "type": "object" } }, "required": [ "event_type", "mapping" ], "type": "object" }, { "type": "null" } ], "default": null, "description": "Optional frontend event mapping." }, "headers": { "anyOf": [ { "additionalProperties": { "type": "string" }, "type": "object" }, { "type": "null" } ], "default": null, "description": "HTTP headers for the request. Values can include parameter placeholders using mustache notation like {{parameter_name}}." }, "integration_id": { "anyOf": [ { "format": "uuid", "type": "string" }, { "type": "null" } ], "default": null, "description": "ID of the integration used to obtain an auth token for the request." }, "method": { "description": "HTTP method for the API request.", "enum": [ "GET", "POST", "PUT", "PATCH", "DELETE" ], "type": "string" }, "object": { "const": "api_tool_arguments", "default": "api_tool_arguments", "type": "string" }, "query_params": { "anyOf": [ { "additionalProperties": { "type": "string" }, "type": "object" }, { "type": "null" } ], "default": null, "description": "Query parameters for the request. Values can include parameter placeholders using mustache notation like {{parameter_name}}." }, "response_path": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Optional dot notation to extract specific data from the API response." }, "timeout": { "default": 5, "description": "Request timeout in seconds.", "maximum": 30, "minimum": 1, "type": "integer" }, "url": { "description": "URL of the API endpoint. Can include parameter placeholders using mustache notation like {{parameter_name}}.", "type": "string" } }, "required": [ "method", "url" ], "type": "object" }, { "description": "Arguments for the Buttons tool.\n\nThis tool allows AI to send buttons as a frontend event to users.\nNo inputs are required from the AI when executing this tool.\nMaximum 3 buttons can be sent.", "properties": { "buttons": { "description": "List of buttons to display. Maximum 10 buttons.", "items": { "description": "Individual button in the buttons tool.\n\n- link_button: Opens URL in new tab (if external) or navigates (like follow-up actions)\n- button: Uses text as input for sending new request", "properties": { "text": { "description": "Button text to display. Should be short and descriptive.", "maxLength": 50, "type": "string" }, "type": { "description": "Type of the button", "enum": [ "link_button", "button" ], "type": "string" }, "url": { "anyOf": [ { "format": "uri", "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "URL for link_button type. Required for link_button, not used for button type. Allow mailto: and tel: links as well." } }, "required": [ "type", "text" ], "type": "object" }, "maxItems": 10, "minItems": 1, "type": "array" }, "object": { "const": "buttons_tool_arguments", "default": "buttons_tool_arguments", "type": "string" } }, "required": [ "buttons" ], "type": "object" }, { "properties": { "default_travelmode": { "anyOf": [ { "enum": [ "driving", "walking", "bicycling", "transit" ], "type": "string" }, { "type": "null" } ], "default": null, "description": "Default travel mode used when the AI does not specify one." }, "icon_url": { "anyOf": [ { "format": "uri", "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Optional URL of an icon to display inside the link button." }, "object": { "const": "google_maps_link_tool_arguments", "default": "google_maps_link_tool_arguments", "type": "string" } }, "type": "object" }, { "properties": { "default_mode": { "anyOf": [ { "enum": [ "driving", "walking", "bicycling", "transit", "flying" ], "type": "string" }, { "type": "null" } ], "default": null, "description": "Default travel mode used when the AI does not specify one." }, "object": { "const": "google_maps_embed_tool_arguments", "default": "google_maps_embed_tool_arguments", "type": "string" } }, "type": "object" }, { "properties": { "integration_id": { "description": "ID of the connected Calendly integration to use for scheduling.", "format": "uuid", "type": "string" }, "object": { "const": "calendly_tool_arguments", "default": "calendly_tool_arguments", "type": "string" } }, "required": [ "integration_id" ], "type": "object" }, { "type": "null" } ], "default": null, "description": "Fixed runtime arguments NOT collected from the LLM (e.g. recipient email, rerank flag, knowledge-base ID). Pass as an inline JSON object — do NOT serialize to a string. Must include an 'object' discriminator field matching the tool type." }, "name": { "description": "snake_case tool name, max 64 characters. Used as the function name when the LLM calls the tool.", "type": "string" }, "tool_config": { "anyOf": [ { "properties": { "properties": { "items": { "oneOf": [ { "properties": { "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "field_type": { "const": "string", "default": "string", "type": "string" }, "format": { "default": "text", "description": "HTML input type", "enum": [ "text", "email", "tel" ], "type": "string" }, "name": { "type": "string" }, "required": { "default": false, "type": "boolean" } }, "required": [ "name", "field_type" ], "type": "object" }, { "properties": { "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "field_type": { "const": "text_area", "default": "text_area", "type": "string" }, "format": { "const": "text", "default": "text", "description": "HTML input type", "type": "string" }, "name": { "type": "string" }, "required": { "default": false, "type": "boolean" } }, "required": [ "name", "field_type" ], "type": "object" }, { "properties": { "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "field_type": { "const": "number", "default": "number", "type": "string" }, "minimum": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "default": null }, "name": { "type": "string" }, "required": { "default": false, "type": "boolean" } }, "required": [ "name", "field_type" ], "type": "object" }, { "properties": { "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "enum": { "items": { "type": "string" }, "type": "array" }, "field_type": { "const": "select", "default": "select", "type": "string" }, "name": { "type": "string" }, "required": { "default": false, "type": "boolean" } }, "required": [ "name", "enum", "field_type" ], "type": "object" }, { "properties": { "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "field_type": { "const": "date", "default": "date", "type": "string" }, "format": { "const": "date", "default": "date", "type": "string" }, "name": { "type": "string" }, "required": { "default": false, "type": "boolean" } }, "required": [ "name", "field_type" ], "type": "object" }, { "properties": { "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "field_type": { "const": "time", "default": "time", "type": "string" }, "format": { "const": "time", "default": "time", "type": "string" }, "name": { "type": "string" }, "required": { "default": false, "type": "boolean" } }, "required": [ "name", "field_type" ], "type": "object" }, { "properties": { "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "field_type": { "const": "checkbox", "default": "checkbox", "type": "string" }, "name": { "type": "string" }, "required": { "default": false, "type": "boolean" } }, "required": [ "name", "field_type" ], "type": "object" } ] }, "type": "array" } }, "required": [ "properties" ], "type": "object" }, { "description": "Configuration for the API tool sent to the LLM as a function.\n\nContains the parameters that the AI collects from users, which are then\nsubstituted into the URL, headers, and body using {{parameter_name}} notation.", "properties": { "object": { "const": "api_tool_config", "default": "api_tool_config", "type": "string" }, "parameters": { "description": "List of parameters to collect from the user for use in the API request.", "items": { "description": "Parameter collected from the user for use in API requests.\n\nParameters can be used as placeholders in URL, headers, or body using {{parameter_name}} notation.", "properties": { "description": { "description": "Description of the parameter to help the AI understand what data to collect from the user.", "type": "string" }, "name": { "description": "Name of the parameter. Used as a variable placeholder in URL, headers, or body with {{name}} notation.", "type": "string" }, "required": { "default": true, "description": "Whether this parameter is required for the API call.", "type": "boolean" }, "type": { "default": "text", "description": "Type of the parameter.", "enum": [ "text", "number", "boolean" ], "type": "string" } }, "required": [ "name", "description" ], "type": "object" }, "type": "array" } }, "type": "object" }, { "type": "null" } ], "default": null, "description": "Function schema sent to the LLM. Pass as an inline JSON object — do NOT serialize to a string. Use 'FormAPISchema' for form tools or 'APIToolConfig' for API-calling tools. Pass null to clear." }, "tool_type": { "description": "Type of the tool: 'knowledge_base', 'openAPI', 'node_lookup', 'send_email', 'form', 'contact_information', 'web_search', 'web_page_reader', 'weather', 'venus_knowledge_graph', 'regiondo', 'mcp_server', 'api', 'buttons', 'google_maps_link', 'google_maps_embed', or 'calendly'.", "enum": [ "knowledge_base", "openAPI", "node_lookup", "send_email", "form", "contact_information", "web_search", "web_page_reader", "weather", "venus_knowledge_graph", "regiondo", "mcp_server", "api", "buttons", "google_maps_link", "google_maps_embed", "calendly" ], "type": "string" } }, "required": [ "name", "description", "tool_type" ], "type": "object" }, "name": "create_tool", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Time series of active sessions broken down by embed type (chat, chat_widget, navigator, search_interface, voice, api). Use this to understand which interfaces are driving usage.", "inputSchema": { "additionalProperties": false, "properties": { "time_filter": { "anyOf": [ { "enum": [ "this_month", "this_year", "last_month", "last_30_days", "last_6_months", "last_12_months" ], "type": "string" }, { "pattern": "^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$", "type": "string" } ], "default": "last_30_days", "description": "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)." } }, "type": "object" }, "name": "get_active_sessions_by_embed", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Time series of active sessions, bucketed by day or week (auto-chosen from the time window). Each row breaks the total down by interaction type (chat / search / navigation / form_submission / voice). Gaps are zero-filled, so the series is safe to plot directly. Use this to spot spikes, dips, or trends.", "inputSchema": { "additionalProperties": false, "properties": { "embed_types": { "anyOf": [ { "items": { "enum": [ "chat", "search", "chat_widget", "search_interface", "voice", "api", "form" ], "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "description": "Restrict to sessions initiated through these embed type(s). Omit to include all embeds." }, "time_filter": { "anyOf": [ { "enum": [ "this_month", "this_year", "last_month", "last_30_days", "last_6_months", "last_12_months" ], "type": "string" }, { "pattern": "^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$", "type": "string" } ], "default": "last_30_days", "description": "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)." } }, "type": "object" }, "name": "get_active_sessions_over_time", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Distribution of chat answer types (e.g. 'answered', 'no_answer', 'tool_call', 'human_handoff'), ranked by occurrence count. Use this to monitor answer quality: a high 'no_answer' share signals content gaps; a high 'human_handoff' share signals where the bot is escalating.", "inputSchema": { "additionalProperties": false, "properties": { "time_filter": { "anyOf": [ { "enum": [ "this_month", "this_year", "last_month", "last_30_days", "last_6_months", "last_12_months" ], "type": "string" }, { "pattern": "^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$", "type": "string" } ], "default": "last_30_days", "description": "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)." } }, "type": "object" }, "name": "get_answer_type_distribution", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Return the full configuration of the authenticated application.", "inputSchema": { "additionalProperties": false, "properties": {}, "type": "object" }, "name": "get_application", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Sentiment distribution of chat answers as counts of 'positive', 'negative', and 'neutral'. Optionally restrict to specific answer types. Use this as a quick quality signal — a rising 'negative' share usually warrants drilling into individual sessions via read_sessions.", "inputSchema": { "additionalProperties": false, "properties": { "answer_types": { "anyOf": [ { "items": { "enum": [ "complete", "no_knowledge", "outside_scope", "small_talk", "follow_up_question" ], "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "description": "Restrict to chat requests whose final answer matched one of these types. Omit to include all answer types." }, "time_filter": { "anyOf": [ { "enum": [ "this_month", "this_year", "last_month", "last_30_days", "last_6_months", "last_12_months" ], "type": "string" }, { "pattern": "^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$", "type": "string" } ], "default": "last_30_days", "description": "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)." } }, "type": "object" }, "name": "get_sentiment_distribution", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Knowledge-base nodes most frequently cited in chat answers, ranked by citation count. Each row carries the node UUID (vertex_id), its title, optional source URL, and citation_count. Use this to understand which knowledge is actually load-bearing; pair with read_node(vertex_id) to inspect cited content.", "inputSchema": { "additionalProperties": false, "properties": { "embed_types": { "anyOf": [ { "items": { "enum": [ "chat", "search", "chat_widget", "search_interface", "voice", "api", "form" ], "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "description": "Restrict to sessions initiated through these embed type(s). Omit to include all embeds." }, "limit": { "default": 15, "description": "Maximum number of rows to return, ordered by count descending.", "exclusiveMinimum": 0, "type": "integer" }, "time_filter": { "anyOf": [ { "enum": [ "this_month", "this_year", "last_month", "last_30_days", "last_6_months", "last_12_months" ], "type": "string" }, { "pattern": "^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$", "type": "string" } ], "default": "last_30_days", "description": "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)." } }, "type": "object" }, "name": "get_top_cited_sources", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "URLs users actually clicked from inside the embed (search results, citation links, follow-ups, etc.), ranked by click count. Optionally filter by click event type. Use this to see what users find useful enough to click through to.", "inputSchema": { "additionalProperties": false, "properties": { "event_types": { "anyOf": [ { "items": { "enum": [ "search_result", "link", "contact", "tool", "follow_up_navigation", "follow_up_question", "custom", "analytics" ], "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "description": "Restrict to specific click-event type(s): 'search_result', 'link', 'contact', 'tool', 'follow_up_navigation', 'follow_up_question'. Omit to include all." }, "limit": { "default": 15, "description": "Maximum number of rows to return, ordered by count descending.", "exclusiveMinimum": 0, "type": "integer" }, "time_filter": { "anyOf": [ { "enum": [ "this_month", "this_year", "last_month", "last_30_days", "last_6_months", "last_12_months" ], "type": "string" }, { "pattern": "^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$", "type": "string" } ], "default": "last_30_days", "description": "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)." } }, "type": "object" }, "name": "get_top_clicked_urls", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Top device categories (e.g. 'desktop', 'mobile', 'tablet') across all request types, ranked by occurrence count. Use this to understand the device mix of real users interacting with the embed.", "inputSchema": { "additionalProperties": false, "properties": { "limit": { "default": 15, "description": "Maximum number of rows to return, ordered by count descending.", "exclusiveMinimum": 0, "type": "integer" }, "time_filter": { "anyOf": [ { "enum": [ "this_month", "this_year", "last_month", "last_30_days", "last_6_months", "last_12_months" ], "type": "string" }, { "pattern": "^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$", "type": "string" } ], "default": "last_30_days", "description": "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)." } }, "type": "object" }, "name": "get_top_devices", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Top (country, region) combinations across all request types, ranked by occurrence count. Country is an ISO country code; region may be null when unavailable. Use this to understand geographic distribution of users.", "inputSchema": { "additionalProperties": false, "properties": { "limit": { "default": 15, "description": "Maximum number of rows to return, ordered by count descending.", "exclusiveMinimum": 0, "type": "integer" }, "time_filter": { "anyOf": [ { "enum": [ "this_month", "this_year", "last_month", "last_30_days", "last_6_months", "last_12_months" ], "type": "string" }, { "pattern": "^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$", "type": "string" } ], "default": "last_30_days", "description": "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)." } }, "type": "object" }, "name": "get_top_geographies", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Page URLs the user was ON when they interacted with the embed (chat, search, navigation, form submission), ranked by occurrence count. Differs from get_top_clicked_urls: this is the ORIGIN page, not the destination. Use this to find which pages of the host site drive the most embed engagement.", "inputSchema": { "additionalProperties": false, "properties": { "limit": { "default": 15, "description": "Maximum number of rows to return, ordered by count descending.", "exclusiveMinimum": 0, "type": "integer" }, "time_filter": { "anyOf": [ { "enum": [ "this_month", "this_year", "last_month", "last_30_days", "last_6_months", "last_12_months" ], "type": "string" }, { "pattern": "^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$", "type": "string" } ], "default": "last_30_days", "description": "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)." } }, "type": "object" }, "name": "get_top_interaction_sources", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Top detected natural languages of user CHAT questions, ranked by occurrence count. Differs from get_top_locales: locale reflects the embed/browser setting, language is detected from the actual query text. Use both to spot mismatches (e.g. German-speaking users hitting an English-only embed).", "inputSchema": { "additionalProperties": false, "properties": { "limit": { "default": 15, "description": "Maximum number of rows to return, ordered by count descending.", "exclusiveMinimum": 0, "type": "integer" }, "time_filter": { "anyOf": [ { "enum": [ "this_month", "this_year", "last_month", "last_30_days", "last_6_months", "last_12_months" ], "type": "string" }, { "pattern": "^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$", "type": "string" } ], "default": "last_30_days", "description": "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)." } }, "type": "object" }, "name": "get_top_languages", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Top locales (BCP-47 style, e.g. 'de_DE', 'en_US') across chat, search, and navigation requests, ranked by occurrence count. Use this to understand which languages/regions are being served and where content gaps may exist.", "inputSchema": { "additionalProperties": false, "properties": { "limit": { "default": 15, "description": "Maximum number of rows to return, ordered by count descending.", "exclusiveMinimum": 0, "type": "integer" }, "time_filter": { "anyOf": [ { "enum": [ "this_month", "this_year", "last_month", "last_30_days", "last_6_months", "last_12_months" ], "type": "string" }, { "pattern": "^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$", "type": "string" } ], "default": "last_30_days", "description": "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)." } }, "type": "object" }, "name": "get_top_locales", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Top user search queries (normalized: lowercased, trimmed), ranked by occurrence count. Use this to discover dominant user intents and content gaps; pair with read_sessions(search_query=...) to inspect specific sessions.", "inputSchema": { "additionalProperties": false, "properties": { "limit": { "default": 15, "description": "Maximum number of rows to return, ordered by count descending.", "exclusiveMinimum": 0, "type": "integer" }, "time_filter": { "anyOf": [ { "enum": [ "this_month", "this_year", "last_month", "last_30_days", "last_6_months", "last_12_months" ], "type": "string" }, { "pattern": "^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$", "type": "string" } ], "default": "last_30_days", "description": "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)." } }, "type": "object" }, "name": "get_top_searches", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Top tags attached to chat answers (auto-derived classifications), ranked by occurrence count. Optionally restrict to specific answer types. Use this for a quick topical breakdown of chat traffic.", "inputSchema": { "additionalProperties": false, "properties": { "answer_types": { "anyOf": [ { "items": { "enum": [ "complete", "no_knowledge", "outside_scope", "small_talk", "follow_up_question" ], "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "description": "Restrict to chat requests whose final answer matched one of these types. Omit to include all answer types." }, "limit": { "default": 15, "description": "Maximum number of rows to return, ordered by count descending.", "exclusiveMinimum": 0, "type": "integer" }, "time_filter": { "anyOf": [ { "enum": [ "this_month", "this_year", "last_month", "last_30_days", "last_6_months", "last_12_months" ], "type": "string" }, { "pattern": "^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$", "type": "string" } ], "default": "last_30_days", "description": "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)." } }, "type": "object" }, "name": "get_top_tags", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Time series of trending classifications (topics OR intents inferred from chat content), one series per classification id. Each series item carries a period timestamp and count. Use this to see how topical or intent demand shifts over time. Choose 'topic' for subject-matter trends, 'intent' for user-goal trends.", "inputSchema": { "additionalProperties": false, "properties": { "classification_type": { "description": "Which classification dimension to trend: 'topic' or 'intent'. Topics = subject matter inferred from chat content; intents = user goal inferred from chat content.", "enum": [ "topic", "intent" ], "type": "string" }, "time_filter": { "anyOf": [ { "enum": [ "this_month", "this_year", "last_month", "last_30_days", "last_6_months", "last_12_months" ], "type": "string" }, { "pattern": "^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$", "type": "string" } ], "default": "last_30_days", "description": "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)." } }, "required": [ "classification_type" ], "type": "object" }, "name": "get_trending_classifications", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "List data sources for the authenticated application. Optionally filter by data source type(s). Returns paginated results ordered by last update.", "inputSchema": { "additionalProperties": false, "properties": { "data_source_types": { "anyOf": [ { "items": { "enum": [ "website_crawler", "file_upload", "node_editor", "default_node", "openAPI", "helpspace", "custom_website_crawler", "webhook", "wordpress" ], "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "description": "Filter by data source type(s): 'website_crawler', 'pdf_upload', 'open_api', 'helpspace', 'custom_webcrawler', 'webhook'. Returns all when omitted." }, "limit": { "default": 50, "exclusiveMinimum": 0, "type": "integer" }, "page": { "default": 1, "exclusiveMinimum": 0, "type": "integer" } }, "type": "object" }, "name": "list_data_sources", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "List nodes in the knowledge base. Optionally filter by vertex label(s), data source type(s), or data source IDs. Optionally sort by updated_at ('asc' or 'desc'). Provide 'query' and 'locale' to perform a full-text search across node content (requires both parameters). Returns paginated results with total count.", "inputSchema": { "additionalProperties": false, "properties": { "data_source_ids": { "anyOf": [ { "items": { "format": "uuid", "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "description": "Filter by data source UUID(s). Returns all when omitted." }, "data_source_types": { "anyOf": [ { "items": { "enum": [ "website_crawler", "file_upload", "node_editor", "default_node", "openAPI", "helpspace", "custom_website_crawler", "webhook", "wordpress" ], "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "description": "Filter by data source type(s): 'website_crawler', 'pdf_upload', 'open_api', 'helpspace', 'custom_webcrawler', 'webhook'. Returns all when omitted." }, "labels": { "anyOf": [ { "items": { "enum": [ "entry", "content", "contact", "tool", "fallback", "integration", "style", "chat_navigator_style", "search_style", "search_result", "navigator", "feedback" ], "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "description": "Filter by vertex label(s) (e.g. 'content'). Returns all when omitted." }, "limit": { "default": 10, "exclusiveMinimum": 0, "maximum": 10, "type": "integer" }, "locale": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Valid Locale configured in the application for full-text search (e.g. 'de', 'en'). Required when 'query' is provided. Ignored otherwise." }, "page": { "default": 1, "exclusiveMinimum": 0, "type": "integer" }, "query": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Full-text search query across node content. When provided, 'locale' must also be provided. Leave empty to list without search." }, "sort_parameters": { "anyOf": [ { "items": { "properties": { "direction": { "enum": [ "asc", "desc" ], "type": "string" }, "field": { "enum": [ "updated_at" ], "type": "string" } }, "required": [ "field", "direction" ], "type": "object" }, "type": "array" }, { "type": "null" } ], "default": null, "description": "Sort order, e.g. [{\"field\": \"updated_at\", \"direction\": \"desc\"}]." } }, "type": "object" }, "name": "list_nodes", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "List prompts for the authenticated application. Optionally filter by type, subtype, or active status. Returns paginated results ordered by active status then last update.", "inputSchema": { "additionalProperties": false, "properties": { "interface_type": { "anyOf": [ { "description": "Coarser grouping of EmbedType for prompt scoping.\n\nFollows the same pattern as StyleType in the interface_styles domain.\nEach value maps to one or more EmbedType values via ``embed_type_to_interface_type``.", "enum": [ "chat", "navigator", "search", "api", "form" ], "type": "string" }, { "type": "null" } ], "default": null, "description": "Interface scope of the prompt: 'chat', 'navigator', 'search', or 'api'. Required for 'chat' and 'search_answering' prompt types; omit for 'suggested_questions' and 'chat_evaluation'." }, "is_active": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": true, "description": "Activating a prompt automatically deactivates other prompts of the same type." }, "limit": { "default": 20, "exclusiveMinimum": 0, "type": "integer" }, "page": { "default": 1, "exclusiveMinimum": 0, "type": "integer" }, "prompt_type": { "anyOf": [ { "description": "Types of prompts in the system.", "enum": [ "chat", "search_answering", "suggested_questions", "chat_evaluation" ], "type": "string" }, { "type": "null" } ], "default": null, "description": "'chat', 'search_answering', 'suggested_questions', or 'chat_evaluation'. Returns all when omitted." }, "subtype": { "anyOf": [ { "description": "Subtypes for prompts - used for routing vs output instructions.", "enum": [ "routing_instructions", "output_instructions" ], "type": "string" }, { "type": "null" } ], "default": null, "description": "'routing_instructions' or 'output_instructions'. Returns all when omitted." } }, "type": "object" }, "name": "list_prompts", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "List tools configured for the authenticated application. Optionally filter by active status. Returns all matching tools.", "inputSchema": { "additionalProperties": false, "properties": { "active": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": true, "description": "true = active only, false = inactive only, omit = all." } }, "type": "object" }, "name": "list_tools", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Read the full document chunks retrieved for a single chat request (QA or SA). Returns chunk_id, vertex_id, title, full text, score, source, data source type, page metadata, and whether the chunk was cited in the final answer. Use this after read_session_detail to inspect the exact context the assistant grounded its answer in. Ordered by score descending.", "inputSchema": { "additionalProperties": false, "properties": { "chat_request_id": { "format": "uuid", "type": "string" } }, "required": [ "chat_request_id" ], "type": "object" }, "name": "read_chat_request_documents", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Read the full tool calls executed for a single chat request. Returns tool_call_id, tool_id, tool_name, tool_type, full arguments (JSON), and full content/response (JSON). Use this to inspect what the assistant invoked and how the tool responded. Ordered by timestamp ascending.", "inputSchema": { "additionalProperties": false, "properties": { "chat_request_id": { "format": "uuid", "type": "string" } }, "required": [ "chat_request_id" ], "type": "object" }, "name": "read_chat_request_tool_calls", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "List data source runs for the authenticated application, latest first. Optionally filter by data source ID or run status. Returns the latest runs (default 5) and the total matching count. Use this to track the progress of a run triggered via run_data_source.", "inputSchema": { "additionalProperties": false, "properties": { "data_source_id": { "anyOf": [ { "format": "uuid", "type": "string" }, { "type": "null" } ], "default": null, "description": "Filter runs by data source UUID. Returns all runs when omitted." }, "limit": { "default": 5, "exclusiveMinimum": 0, "maximum": 10, "type": "integer" }, "status": { "anyOf": [ { "enum": [ "started", "succeeded", "aborted", "timeout", "cancelled" ], "type": "string" }, { "type": "null" } ], "default": null, "description": "Filter runs by status: 'started', 'succeeded', 'aborted', 'timeout', or 'cancelled'. Returns all when omitted." } }, "type": "object" }, "name": "read_data_source_runs", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Read a node by its ID. Returns full node details.", "inputSchema": { "additionalProperties": false, "properties": { "node_id": { "format": "uuid", "type": "string" } }, "required": [ "node_id" ], "type": "object" }, "name": "read_node", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Read the full search results returned for a single instant-search request. Returns chunk_id, vertex_id, title, full text, and relevance score. Use this to inspect the exact results a user saw for their search query. Ordered by score descending.", "inputSchema": { "additionalProperties": false, "properties": { "search_request_id": { "format": "uuid", "type": "string" } }, "required": [ "search_request_id" ], "type": "object" }, "name": "read_search_request_results", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Read a single session with its full history in token-dense form. Returns all interactions (chat, navigation, search, form, voice). Document chunks and tool calls are returned as references (IDs + titles) - use read_node(vertex_id) or read_tool(tool_id) to fetch full content.", "inputSchema": { "additionalProperties": false, "properties": { "session_id": { "format": "uuid", "type": "string" } }, "required": [ "session_id" ], "type": "object" }, "name": "read_session_detail", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "List sessions for application. Filter by interaction types (chat, search, navigation, form_submission, voice), embed types, answer types, tool IDs, or a full-text search query. Each session includes its full history, but document chunks and tool calls are returned as references (IDs + titles) rather than full content.Returns paginated results ordered by start time descending.", "inputSchema": { "additionalProperties": false, "properties": { "answer_types": { "anyOf": [ { "items": { "enum": [ "complete", "no_knowledge", "outside_scope", "small_talk", "follow_up_question" ], "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "description": "Filter by answer type(s) returned to users. Only exists for chat sessions." }, "embed_types": { "anyOf": [ { "items": { "enum": [ "chat", "search", "chat_widget", "search_interface", "voice", "api", "form" ], "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "description": "Filter by embed type(s) through which sessions were initiated." }, "interactions": { "anyOf": [ { "items": { "enum": [ "navigation", "search", "chat", "form_submission", "voice" ], "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "description": "'chat', 'search', 'navigation', 'form_submission', or 'voice'." }, "limit": { "default": 10, "exclusiveMinimum": 0, "maximum": 10, "type": "integer" }, "page": { "default": 1, "exclusiveMinimum": 0, "type": "integer" }, "search_query": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Full-text search across session content. Returns all when omitted." }, "time_filter": { "anyOf": [ { "enum": [ "this_month", "this_year", "last_month", "last_30_days", "last_6_months", "last_12_months" ], "type": "string" }, { "pattern": "^\\d{4}-\\d{2}-\\d{2},\\d{4}-\\d{2}-\\d{2}$", "type": "string" }, { "type": "null" } ], "default": null, "description": "Time window for the analytics query. Accepts either: (a) a preset enum value: 'this_month', 'this_year', 'last_month', 'last_30_days' (default), 'last_6_months', 'last_12_months'; or (b) an explicit ISO date range as 'YYYY-MM-DD,YYYY-MM-DD' (inclusive)." }, "tool_ids": { "anyOf": [ { "items": { "format": "uuid", "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "description": "Filter sessions that involved specific tool UUID(s). Only exists for chat sessions." } }, "type": "object" }, "name": "read_sessions", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Read a tool by its ID. Returns full tool details.", "inputSchema": { "additionalProperties": false, "properties": { "tool_id": { "format": "uuid", "type": "string" } }, "required": [ "tool_id" ], "type": "object" }, "name": "read_tool", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Trigger an asynchronous run (sync/crawl) of a data source by its ID. The run is queued as a background job. Returns the accepted status. Track progress with read_data_source_runs.", "inputSchema": { "additionalProperties": false, "properties": { "data_source_id": { "format": "uuid", "type": "string" } }, "required": [ "data_source_id" ], "type": "object" }, "name": "run_data_source", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Update analytics fields on a chat request: summary, tags, answer_type, sentiment, classification_topic_id, or classification_intent_id. Only provided fields are updated. Use this to annotate or reclassify chat interactions after the fact.", "inputSchema": { "additionalProperties": false, "properties": { "answer_type": { "anyOf": [ { "enum": [ "complete", "no_knowledge", "outside_scope", "small_talk", "follow_up_question" ], "type": "string" }, { "type": "null" } ], "default": null, "description": "Answer type classification: 'complete', 'no_knowledge', 'outside_scope', 'small_talk', or 'follow_up_question'." }, "chat_request_id": { "format": "uuid", "type": "string" }, "classification_intent_id": { "anyOf": [ { "format": "uuid", "type": "string" }, { "type": "null" } ], "default": null, "description": "UUID of the classification intent to assign to this chat request." }, "classification_topic_id": { "anyOf": [ { "format": "uuid", "type": "string" }, { "type": "null" } ], "default": null, "description": "UUID of the classification topic to assign to this chat request." }, "sentiment": { "anyOf": [ { "enum": [ "positive", "negative", "neutral" ], "type": "string" }, { "type": "null" } ], "default": null, "description": "Sentiment classification: 'positive', 'negative', or 'neutral'." }, "summary": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Short summary or annotation for the chat request." }, "tags": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "description": "List of tags to attach to the chat request." } }, "required": [ "chat_request_id" ], "type": "object" }, "name": "update_chat_request_analytics", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Update a data source by its ID. Only provided fields will be updated (partial update). Returns the updated data source.", "inputSchema": { "additionalProperties": false, "properties": { "data_source_id": { "format": "uuid", "type": "string" }, "integration_id": { "anyOf": [ { "format": "uuid", "type": "string" }, { "type": "null" } ], "default": null, "description": "Integration UUID for connected data sources. Required for WordPress data sources." }, "name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "schedule": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Cron expression (e.g. '0 3 * * *') or null to disable scheduled re-sync." }, "settings": { "anyOf": [ { "description": "Settings for data source, used for DB and creating models", "oneOf": [ { "properties": { "actor": { "default": "apify/website-content-crawler", "enum": [ "apify/website-content-crawler" ], "type": "string" }, "crawler_type": { "default": "cheerio", "enum": [ "playwright:firefox", "playwright:adaptive", "cheerio" ], "type": "string" }, "custom_tags": { "description": "Tags defined by the user that are displayed as badges in frontend. Applies to all pages crawled with this data source.", "items": { "type": "string" }, "type": "array" }, "exclude_url_globs": { "items": { "type": "string" }, "type": "array" }, "filters": { "anyOf": [ { "properties": { "criteria": { "items": { "properties": { "condition": { "properties": { "type": { "enum": [ "max_age_days", "contains" ], "type": "string" }, "value": { "anyOf": [ { "type": "integer" }, { "type": "string" } ] } }, "required": [ "type", "value" ], "type": "object" }, "field": { "enum": [ "published_time", "modified_time" ], "type": "string" } }, "required": [ "field", "condition" ], "type": "object" }, "type": "array" } }, "type": "object" }, { "type": "null" } ], "default": null }, "ignore_canonical_url": { "default": false, "description": "Ignore canonical URLs when crawling if they are incorrectly defined or the crawler should consider Query Parameters as well.", "type": "boolean" }, "ignore_errors": { "default": false, "description": "Ignore any page-specific errors (Lang-Tab not available, status code etc.) and continue crawling.", "type": "boolean" }, "include_url_globs": { "items": { "type": "string" }, "type": "array" }, "max_crawl_depth": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "default": 20 }, "max_pages_per_crawl": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "default": 30 }, "remove_html_elements": { "default": "footer, div.footer, #footer, header, div.pageheader, #pageheader, script, style, noscript, svg, [role=\"alert\"], [role=\"banner\"], [role=\"dialog\"], [role=\"alertdialog\"], [role=\"region\"][aria-label*=\"skip\" i], [aria-modal=\"true\"], #branchly-chat-widget-container, #branchly-embed-container, #branchly-chat-embed-container, #branchly-search-interface-container", "description": "List of CSS selectors to remove from the HTML content. List should be separated by commas.", "type": "string" }, "title_suffix_to_remove": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Remove suffix or prefix from page titles." }, "type": { "const": "website_crawler", "default": "website_crawler", "type": "string" }, "unavailable_source_policy": { "anyOf": [ { "description": "Policy for handling unavailable URLs during data source sync.", "enum": [ "ignore", "delete_unavailable" ], "type": "string" }, { "type": "null" } ], "default": "delete_unavailable", "description": "Policy for handling unavailable Sources/URLs during data source run." }, "urls": { "properties": { "start_urls": { "items": { "format": "uri", "minLength": 1, "type": "string" }, "type": "array" } }, "required": [ "start_urls" ], "type": "object" } }, "required": [ "urls", "type" ], "type": "object" }, { "properties": { "files": { "items": { "properties": { "file_name": { "type": "string" }, "is_external": { "default": false, "type": "boolean" }, "url": { "format": "uri", "minLength": 1, "type": "string" } }, "required": [ "file_name", "url" ], "type": "object" }, "type": "array" }, "type": { "const": "file_upload", "default": "file_upload", "type": "string" } }, "required": [ "files", "type" ], "type": "object" }, { "properties": { "data_template_mapping": { "properties": { "custom_metadata": { "anyOf": [ { "properties": { "score_boost": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "tags": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null } }, "type": "object" }, { "type": "null" } ], "default": null }, "page_metadata": { "anyOf": [ { "properties": { "article": { "anyOf": [ { "properties": { "modified_time": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "published_time": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "tags": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null } }, "type": "object" }, { "type": "null" } ], "default": null }, "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "images": { "anyOf": [ { "properties": { "url": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null } }, "type": "object" }, { "type": "null" } ], "default": null }, "title": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null } }, "type": "object" }, { "type": "null" } ], "default": null }, "source": { "type": "string" }, "text": { "type": "string" }, "title": { "type": "string" } }, "required": [ "text", "title", "source" ], "type": "object" }, "extra_options": { "anyOf": [ { "additionalProperties": { "anyOf": [ { "type": "string" }, { "type": "boolean" }, { "type": "number" }, { "type": "integer" }, { "type": "null" } ] }, "type": "object" }, { "type": "null" } ], "default": null }, "openapi_spec": { "type": "string" }, "operation_id": { "type": "string" }, "response_content_path": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "type": { "const": "openAPI", "default": "openAPI", "type": "string" }, "unavailable_source_policy": { "anyOf": [ { "description": "Policy for handling unavailable URLs during data source sync.", "enum": [ "ignore", "delete_unavailable" ], "type": "string" }, { "type": "null" } ], "default": "delete_unavailable", "description": "Policy for handling unavailable Sources/URLs during data source run." } }, "required": [ "openapi_spec", "operation_id", "data_template_mapping", "type" ], "type": "object" }, { "properties": { "api_token": { "type": "string" }, "client_id": { "type": "string" }, "site_id": { "type": "integer" }, "type": { "const": "helpspace", "default": "helpspace", "type": "string" }, "unavailable_source_policy": { "anyOf": [ { "description": "Policy for handling unavailable URLs during data source sync.", "enum": [ "ignore", "delete_unavailable" ], "type": "string" }, { "type": "null" } ], "default": "delete_unavailable", "description": "Policy for handling unavailable Sources/URLs during data source run." } }, "required": [ "client_id", "api_token", "site_id", "type" ], "type": "object" }, { "properties": { "actor": { "default": "apify/website-content-crawler", "enum": [ "apify/website-content-crawler" ], "type": "string" }, "crawler_type": { "default": "cheerio", "enum": [ "playwright:firefox", "playwright:adaptive", "cheerio" ], "type": "string" }, "custom_tags": { "description": "Tags defined by the user that are displayed as badges in frontend. Applies to all pages crawled with this data source.", "items": { "type": "string" }, "type": "array" }, "exclude_url_globs": { "items": { "type": "string" }, "type": "array" }, "fetch_image_captions": { "default": false, "description": "Fetch and generate captions for images found during crawling.", "type": "boolean" }, "graph_builder": { "properties": { "connect_start_urls_to_entry": { "default": true, "description": "Connect start URLs to entry node", "type": "boolean" }, "contact_node_ids": { "anyOf": [ { "items": { "format": "uuid", "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null }, "navigation_builder": { "oneOf": [ { "properties": { "breadcrumb_selector": { "type": "string" }, "type": { "const": "breadcrumbs", "default": "breadcrumbs", "type": "string" } }, "required": [ "breadcrumb_selector", "type" ], "type": "object" } ] }, "nodes_wo_edges_to_root": { "default": false, "description": "Nodes without incoming/outgoing edges to the root node/start url. Prevents orphan nodes", "type": "boolean" }, "nodes_wo_out_edges_to_contact": { "default": false, "description": "Nodes without outgoing edges to contact nodes. Uses contact_node_ids if available, otherwise all contact nodes", "type": "boolean" }, "nodes_wo_out_edges_to_tool": { "default": false, "description": "Nodes without outgoing edges to tool nodes. Uses tool_node_ids if available, otherwise all tool nodes", "type": "boolean" }, "tool_node_ids": { "anyOf": [ { "items": { "format": "uuid", "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null } }, "required": [ "navigation_builder" ], "type": "object" }, "ignore_errors": { "default": false, "type": "boolean" }, "include_url_globs": { "items": { "type": "string" }, "type": "array" }, "main_content_marker": { "properties": { "end_marker": { "type": "string" }, "selector_filter": { "type": "string" }, "start_marker": { "type": "string" }, "type": { "const": "comments", "default": "comments", "type": "string" } }, "required": [ "selector_filter", "start_marker", "end_marker" ], "type": "object" }, "title_suffix_to_remove": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Remove suffix or prefix from page titles." }, "type": { "const": "custom_website_crawler", "default": "custom_website_crawler", "type": "string" }, "unavailable_source_policy": { "anyOf": [ { "description": "Policy for handling unavailable URLs during data source sync.", "enum": [ "ignore", "delete_unavailable" ], "type": "string" }, { "type": "null" } ], "default": "ignore", "description": "Policy for handling unavailable Sources/URLs during data source run." }, "urls": { "properties": { "start_urls": { "items": { "format": "uri", "minLength": 1, "type": "string" }, "type": "array" } }, "required": [ "start_urls" ], "type": "object" } }, "required": [ "urls", "main_content_marker", "graph_builder", "type" ], "type": "object" }, { "description": "Settings for webhook data source.", "properties": { "data_template_mapping": { "anyOf": [ { "properties": { "custom_metadata": { "anyOf": [ { "properties": { "score_boost": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "tags": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null } }, "type": "object" }, { "type": "null" } ], "default": null }, "page_metadata": { "anyOf": [ { "properties": { "article": { "anyOf": [ { "properties": { "modified_time": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "published_time": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "tags": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null } }, "type": "object" }, { "type": "null" } ], "default": null }, "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "images": { "anyOf": [ { "properties": { "url": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null } }, "type": "object" }, { "type": "null" } ], "default": null }, "title": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null } }, "type": "object" }, { "type": "null" } ], "default": null }, "source": { "type": "string" }, "text": { "type": "string" }, "title": { "type": "string" } }, "required": [ "text", "title", "source" ], "type": "object" }, { "type": "null" } ], "default": null, "description": "Optional template mapping for custom webhook payloads. If provided, incoming data will be mapped to internal format." }, "type": { "const": "webhook", "default": "webhook", "type": "string" } }, "required": [ "type" ], "type": "object" }, { "properties": { "api_path": { "default": "/wp-json/wp/v2", "type": "string" }, "default_site_locale": { "default": "de", "description": "Locale assigned to all posts in 'static' mode, or used as fallback in detection modes.", "type": "string" }, "excluded_categories": { "items": { "type": "integer" }, "type": "array" }, "filters": { "anyOf": [ { "properties": { "criteria": { "items": { "properties": { "condition": { "properties": { "type": { "enum": [ "max_age_days", "contains" ], "type": "string" }, "value": { "anyOf": [ { "type": "integer" }, { "type": "string" } ] } }, "required": [ "type", "value" ], "type": "object" }, "field": { "enum": [ "published_time", "modified_time" ], "type": "string" } }, "required": [ "field", "condition" ], "type": "object" }, "type": "array" } }, "type": "object" }, { "type": "null" } ], "default": null }, "locale_detection": { "default": "static", "description": "Strategy for inferring the locale from a post's URL. 'static' uses default_locale for all posts. 'path_prefix' reads the first path segment (domain.com/en/page). 'subdomain' reads the subdomain (en.domain.com). 'query_param' reads the ?lang= query parameter. 'wpml' queries the WPML REST API per language (?lang=xx) and tags each post with the queried language code.", "enum": [ "static", "path_prefix", "subdomain", "query_param", "wpml" ], "type": "string" }, "locale_mapping": { "additionalProperties": { "type": "string" }, "description": "Map detected URL language codes to app locales. e.g. {'en': 'en', 'de': 'de', 'fr_FR': 'fr'}. Applied after locale_detection; unmatched codes are used as-is. Falls back to default_locale when no locale is detected.Locale mapping is used to filter posts in 'wpml' language detection mode.", "type": "object" }, "post_status": { "items": { "type": "string" }, "minItems": 1, "type": "array" }, "post_types": { "items": { "type": "string" }, "minItems": 1, "type": "array" }, "timeout": { "default": 30, "maximum": 120, "minimum": 5, "type": "integer" }, "type": { "const": "wordpress", "default": "wordpress", "type": "string" }, "unavailable_source_policy": { "anyOf": [ { "description": "Policy for handling unavailable URLs during data source sync.", "enum": [ "ignore", "delete_unavailable" ], "type": "string" }, { "type": "null" } ], "default": "delete_unavailable" }, "verify_ssl": { "default": true, "type": "boolean" } }, "required": [ "type" ], "type": "object" } ] }, { "type": "null" } ], "default": null, "description": "Type-specific config. Pass as an inline JSON object — do NOT serialize to a string. Must include a 'type' discriminator field: 'website_crawler', 'pdf_upload', 'open_api', 'helpspace', 'custom_webcrawler', or 'webhook'." }, "type": { "anyOf": [ { "enum": [ "website_crawler", "file_upload", "node_editor", "default_node", "openAPI", "helpspace", "custom_website_crawler", "webhook", "wordpress" ], "type": "string" }, { "type": "null" } ], "default": null, "description": "Must match the 'type' discriminator of the 'settings' object when both are provided." } }, "required": [ "data_source_id" ], "type": "object" }, "name": "update_data_source", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Update a content node by its ID. Only provided fields are updated. Title and text are locale dicts (e.g. {\"de\": \"Titel\"}) — provided keys are merged, others preserved. custom_metadata keys are likewise merged into the existing metadata.", "inputSchema": { "additionalProperties": false, "properties": { "custom_metadata": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "default": null }, "node_id": { "format": "uuid", "type": "string" }, "score_boost": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "default": null, "description": "Boost value for search ranking. Higher is better. Use null for no boost." }, "source": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Source URL for the node content." }, "text": { "anyOf": [ { "additionalProperties": { "type": "string" }, "type": "object" }, { "type": "null" } ], "default": null, "description": "Locale-keyed body content (HTML) map, e.g. {\"de\": \"<p>Inhalt</p>\", \"en\": \"<p>Content</p>\"}." }, "title": { "anyOf": [ { "additionalProperties": { "type": "string" }, "type": "object" }, { "type": "null" } ], "default": null, "description": "Locale-keyed title map, e.g. {\"de\": \"Titel\", \"en\": \"Title\"}." } }, "required": [ "node_id" ], "type": "object" }, "name": "update_node", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Activate or deactivate a prompt by its ID. Use is_active=true to restore a previous prompt version — the currently active prompt of the same type and subtype is deactivated automatically. To change prompt text, use create_prompt instead.", "inputSchema": { "additionalProperties": false, "properties": { "is_active": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": null, "description": "Activating a prompt automatically deactivates other prompts of the same type." }, "prompt_id": { "format": "uuid", "type": "string" } }, "required": [ "prompt_id" ], "type": "object" }, "name": "update_prompt", "outputSchema": { "additionalProperties": true, "type": "object" } }, { "description": "Update an existing tool by its ID. Fetches the current tool and applies partial updates to name, description, or active status.", "inputSchema": { "additionalProperties": false, "properties": { "active": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "default": null }, "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "function_arguments": { "anyOf": [ { "properties": { "data_source_ids_filter": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null }, "data_source_types_filter": { "anyOf": [ { "items": { "enum": [ "website_crawler", "file_upload", "node_editor", "default_node", "openAPI", "helpspace", "custom_website_crawler", "webhook", "wordpress" ], "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null }, "document_limit_default": { "default": 15, "type": "integer" }, "document_limit_rerank": { "default": 25, "type": "integer" }, "formatter": { "default": "grouped_chunks", "enum": [ "chunks_with_source", "numbered_chunks_with_source", "grouped_chunks", "grouped_chunks_with_custom_metadata", "grouped_chunks_with_page_metadata" ], "type": "string" }, "node_ids_filter": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null }, "node_labels_filter": { "anyOf": [ { "items": { "enum": [ "entry", "content", "contact", "tool", "fallback", "integration", "style", "chat_navigator_style", "search_style", "search_result", "navigator", "feedback" ], "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null }, "object": { "const": "knowledge_base_tool_arguments", "default": "knowledge_base_tool_arguments", "type": "string" }, "rerank": { "default": false, "type": "boolean" }, "retrieval_method": { "default": "default", "enum": [ "default", "parent_context" ], "type": "string" }, "sources_filter": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null } }, "type": "object" }, { "properties": { "node_ids": { "description": "List of node IDs to look up in the graph.", "items": { "type": "string" }, "type": "array" }, "object": { "const": "node_lookup_tool_arguments", "default": "node_lookup_tool_arguments", "type": "string" } }, "type": "object" }, { "properties": { "object": { "const": "send_email_tool_arguments", "default": "send_email_tool_arguments", "type": "string" }, "sender_email": { "format": "email", "type": "string" } }, "required": [ "sender_email" ], "type": "object" }, { "properties": { "limit": { "default": 5, "type": "integer" }, "object": { "const": "web_search_tool_arguments", "default": "web_search_tool_arguments", "type": "string" } }, "type": "object" }, { "properties": { "object": { "const": "web_page_reader_tool_arguments", "default": "web_page_reader_tool_arguments", "type": "string" }, "target_selector": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Only returns elements from CSS selector." }, "url": { "type": "string" }, "wait_for_selector": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Wait for a specific element to appear before returning. For dynamic content." } }, "required": [ "url" ], "type": "object" }, { "properties": { "data_privacy_text": { "anyOf": [ { "additionalProperties": { "type": "string" }, "type": "object" }, { "type": "null" } ], "default": null, "description": "Optional data privacy text. If provided, a checkbox should be displayed to the user." }, "form_title": { "additionalProperties": { "type": "string" }, "type": "object" }, "notification_email": { "anyOf": [ { "format": "email", "type": "string" }, { "items": { "format": "email", "type": "string" }, "type": "array" }, { "type": "null" } ], "default": null, "description": "Used for email forwarding of form submissions. If not provided, no email will be forwarded" }, "object": { "const": "form_tool_arguments", "default": "form_tool_arguments", "type": "string" }, "show_data_privacy_text": { "default": false, "type": "boolean" }, "submit_button_text": { "additionalProperties": { "type": "string" }, "type": "object" }, "submit_message": { "additionalProperties": { "type": "string" }, "type": "object" } }, "required": [ "form_title", "submit_message", "submit_button_text" ], "type": "object" }, { "properties": { "channels": { "type": "string" }, "domain": { "type": "string" }, "entity_type": { "const": "Event", "default": "Event", "type": "string" }, "event": { "anyOf": [ { "properties": { "event_type": { "enum": [ "carousel_v1" ], "type": "string" }, "mapping": { "properties": { "detail": { "default": "{{event_date_time.0.start_date}} - {{event_date_time.0.end_date}}<br>{{address.city}}<br>", "type": "string" }, "id": { "default": "{{event_id}}", "type": "string" }, "image_url": { "default": "{{first_image.url}}", "type": "string" }, "resource_url": { "default": "{{link}}", "type": "string" }, "tags": { "default": "{{tags}}", "type": "string" }, "title": { "default": "{{event_name}}", "type": "string" }, "type": { "const": "carousel_v1", "default": "carousel_v1", "type": "string" } }, "type": "object" } }, "required": [ "event_type", "mapping" ], "type": "object" }, { "type": "null" } ], "default": null, "description": "Optional frontend event mapping." }, "object": { "const": "venus_knowledge_graph_tool_arguments", "default": "venus_knowledge_graph_tool_arguments", "type": "string" }, "projects": { "type": "string" } }, "required": [ "projects", "channels", "domain" ], "type": "object" }, { "properties": { "event": { "anyOf": [ { "properties": { "event_type": { "enum": [ "carousel_v1" ], "type": "string" }, "mapping": { "properties": { "detail": { "default": "{{event_date_time.0.start_date}} - {{event_date_time.0.end_date}}<br>{{address.city}}<br>", "type": "string" }, "id": { "default": "{{event_id}}", "type": "string" }, "image_url": { "default": "{{first_image.url}}", "type": "string" }, "resource_url": { "default": "{{link}}", "type": "string" }, "tags": { "default": "{{tags}}", "type": "string" }, "title": { "default": "{{event_name}}", "type": "string" }, "type": { "const": "carousel_v1", "default": "carousel_v1", "type": "string" } }, "type": "object" } }, "required": [ "event_type", "mapping" ], "type": "object" }, { "type": "null" } ], "default": null, "description": "Optional frontend event mapping." }, "object": { "const": "regiondo_tool_arguments", "default": "regiondo_tool_arguments", "type": "string" }, "public_key": { "type": "string" }, "secret_key": { "type": "string" } }, "required": [ "secret_key", "public_key" ], "type": "object" }, { "properties": { "events": { "description": "List of frontend events to be triggered by this tool", "items": { "properties": { "event_type": { "enum": [ "carousel_v1" ], "type": "string" }, "mapping": { "properties": { "detail": { "default": "{{event_date_time.0.start_date}} - {{event_date_time.0.end_date}}<br>{{address.city}}<br>", "type": "string" }, "id": { "default": "{{event_id}}", "type": "string" }, "image_url": { "default": "{{first_image.url}}", "type": "string" }, "resource_url": { "default": "{{link}}", "type": "string" }, "tags": { "default": "{{tags}}", "type": "string" }, "title": { "default": "{{event_name}}", "type": "string" }, "type": { "const": "carousel_v1", "default": "carousel_v1", "type": "string" } }, "type": "object" }, "mcp_tool_entities": { "anyOf": [ { "properties": { "key": { "description": "The key to use to identify the entity from the MCP server response", "type": "string" }, "values": { "description": "The specific entities (values) that should be mapped to the frontend event", "items": { "type": "string" }, "type": "array" } }, "required": [ "key" ], "type": "object" }, { "type": "null" } ], "default": null, "description": "Mapping to distinguish entities from the MCP server response. If None, map to all entities" }, "mcp_tool_names": { "description": "List of tool names this frontend event should be mapped to. If empty, map to all tools of the MCP server.", "items": { "type": "string" }, "type": "array" } }, "required": [ "event_type", "mapping" ], "type": "object" }, "type": "array" }, "headers": { "anyOf": [ { "additionalProperties": { "type": "string" }, "type": "object" }, { "type": "null" } ], "default": null, "description": "Optional headers to be sent with the request to the MCP server." }, "image_url": { "anyOf": [ { "format": "uri", "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Optional image URL to be shown in the Dashboard. Only for frontend display." }, "mcp_url": { "format": "uri", "minLength": 1, "type": "string" }, "object": { "const": "mcp_server_tool_arguments", "default": "mcp_server_tool_arguments", "type": "string" } }, "required": [ "mcp_url" ], "type": "object" }, { "description": "Arguments for the API tool that define how to make HTTP requests.\n\nContains the static configuration for executing API requests.\nUse {{parameter_name}} mustache notation in url, query_params, headers, and body\nto reference parameters defined in tool_config.", "properties": { "body": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "default": null, "description": "Request body. Values can include parameter placeholders using mustache notation like {{parameter_name}}." }, "body_content_type": { "default": "application/json", "description": "Content type of the request body.", "enum": [ "application/json", "application/x-www-form-urlencoded" ], "type": "string" }, "event": { "anyOf": [ { "properties": { "event_type": { "enum": [ "carousel_v1" ], "type": "string" }, "mapping": { "properties": { "detail": { "default": "{{event_date_time.0.start_date}} - {{event_date_time.0.end_date}}<br>{{address.city}}<br>", "type": "string" }, "id": { "default": "{{event_id}}", "type": "string" }, "image_url": { "default": "{{first_image.url}}", "type": "string" }, "resource_url": { "default": "{{link}}", "type": "string" }, "tags": { "default": "{{tags}}", "type": "string" }, "title": { "default": "{{event_name}}", "type": "string" }, "type": { "const": "carousel_v1", "default": "carousel_v1", "type": "string" } }, "type": "object" } }, "required": [ "event_type", "mapping" ], "type": "object" }, { "type": "null" } ], "default": null, "description": "Optional frontend event mapping." }, "headers": { "anyOf": [ { "additionalProperties": { "type": "string" }, "type": "object" }, { "type": "null" } ], "default": null, "description": "HTTP headers for the request. Values can include parameter placeholders using mustache notation like {{parameter_name}}." }, "integration_id": { "anyOf": [ { "format": "uuid", "type": "string" }, { "type": "null" } ], "default": null, "description": "ID of the integration used to obtain an auth token for the request." }, "method": { "description": "HTTP method for the API request.", "enum": [ "GET", "POST", "PUT", "PATCH", "DELETE" ], "type": "string" }, "object": { "const": "api_tool_arguments", "default": "api_tool_arguments", "type": "string" }, "query_params": { "anyOf": [ { "additionalProperties": { "type": "string" }, "type": "object" }, { "type": "null" } ], "default": null, "description": "Query parameters for the request. Values can include parameter placeholders using mustache notation like {{parameter_name}}." }, "response_path": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "Optional dot notation to extract specific data from the API response." }, "timeout": { "default": 5, "description": "Request timeout in seconds.", "maximum": 30, "minimum": 1, "type": "integer" }, "url": { "description": "URL of the API endpoint. Can include parameter placeholders using mustache notation like {{parameter_name}}.", "type": "string" } }, "required": [ "method", "url" ], "type": "object" }, { "description": "Arguments for the Buttons tool.\n\nThis tool allows AI to send buttons as a frontend event to users.\nNo inputs are required from the AI when executing this tool.\nMaximum 3 buttons can be sent.", "properties": { "buttons": { "description": "List of buttons to display. Maximum 10 buttons.", "items": { "description": "Individual button in the buttons tool.\n\n- link_button: Opens URL in new tab (if external) or navigates (like follow-up actions)\n- button: Uses text as input for sending new request", "properties": { "text": { "description": "Button text to display. Should be short and descriptive.", "maxLength": 50, "type": "string" }, "type": { "description": "Type of the button", "enum": [ "link_button", "button" ], "type": "string" }, "url": { "anyOf": [ { "format": "uri", "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "URL for link_button type. Required for link_button, not used for button type. Allow mailto: and tel: links as well." } }, "required": [ "type", "text" ], "type": "object" }, "maxItems": 10, "minItems": 1, "type": "array" }, "object": { "const": "buttons_tool_arguments", "default": "buttons_tool_arguments", "type": "string" } }, "required": [ "buttons" ], "type": "object" }, { "properties": { "default_travelmode": { "anyOf": [ { "enum": [ "driving", "walking", "bicycling", "transit" ], "type": "string" }, { "type": "null" } ], "default": null, "description": "Default travel mode used when the AI does not specify one." }, "icon_url": { "anyOf": [ { "format": "uri", "minLength": 1, "type": "string" }, { "type": "null" } ], "default": null, "description": "Optional URL of an icon to display inside the link button." }, "object": { "const": "google_maps_link_tool_arguments", "default": "google_maps_link_tool_arguments", "type": "string" } }, "type": "object" }, { "properties": { "default_mode": { "anyOf": [ { "enum": [ "driving", "walking", "bicycling", "transit", "flying" ], "type": "string" }, { "type": "null" } ], "default": null, "description": "Default travel mode used when the AI does not specify one." }, "object": { "const": "google_maps_embed_tool_arguments", "default": "google_maps_embed_tool_arguments", "type": "string" } }, "type": "object" }, { "properties": { "integration_id": { "description": "ID of the connected Calendly integration to use for scheduling.", "format": "uuid", "type": "string" }, "object": { "const": "calendly_tool_arguments", "default": "calendly_tool_arguments", "type": "string" } }, "required": [ "integration_id" ], "type": "object" }, { "type": "null" } ], "default": null, "description": "Fixed runtime arguments NOT collected from the LLM (e.g. recipient email, rerank flag, knowledge-base ID). Pass as an inline JSON object — do NOT serialize to a string. Must include an 'object' discriminator field matching the tool type." }, "name": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null, "description": "snake_case tool name, max 64 characters. Used as the function name when the LLM calls the tool." }, "tool_config": { "anyOf": [ { "properties": { "properties": { "items": { "oneOf": [ { "properties": { "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "field_type": { "const": "string", "default": "string", "type": "string" }, "format": { "default": "text", "description": "HTML input type", "enum": [ "text", "email", "tel" ], "type": "string" }, "name": { "type": "string" }, "required": { "default": false, "type": "boolean" } }, "required": [ "name", "field_type" ], "type": "object" }, { "properties": { "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "field_type": { "const": "text_area", "default": "text_area", "type": "string" }, "format": { "const": "text", "default": "text", "description": "HTML input type", "type": "string" }, "name": { "type": "string" }, "required": { "default": false, "type": "boolean" } }, "required": [ "name", "field_type" ], "type": "object" }, { "properties": { "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "field_type": { "const": "number", "default": "number", "type": "string" }, "minimum": { "anyOf": [ { "type": "number" }, { "type": "null" } ], "default": null }, "name": { "type": "string" }, "required": { "default": false, "type": "boolean" } }, "required": [ "name", "field_type" ], "type": "object" }, { "properties": { "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "enum": { "items": { "type": "string" }, "type": "array" }, "field_type": { "const": "select", "default": "select", "type": "string" }, "name": { "type": "string" }, "required": { "default": false, "type": "boolean" } }, "required": [ "name", "enum", "field_type" ], "type": "object" }, { "properties": { "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "field_type": { "const": "date", "default": "date", "type": "string" }, "format": { "const": "date", "default": "date", "type": "string" }, "name": { "type": "string" }, "required": { "default": false, "type": "boolean" } }, "required": [ "name", "field_type" ], "type": "object" }, { "properties": { "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "field_type": { "const": "time", "default": "time", "type": "string" }, "format": { "const": "time", "default": "time", "type": "string" }, "name": { "type": "string" }, "required": { "default": false, "type": "boolean" } }, "required": [ "name", "field_type" ], "type": "object" }, { "properties": { "description": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "default": null }, "field_type": { "const": "checkbox", "default": "checkbox", "type": "string" }, "name": { "type": "string" }, "required": { "default": false, "type": "boolean" } }, "required": [ "name", "field_type" ], "type": "object" } ] }, "type": "array" } }, "required": [ "properties" ], "type": "object" }, { "description": "Configuration for the API tool sent to the LLM as a function.\n\nContains the parameters that the AI collects from users, which are then\nsubstituted into the URL, headers, and body using {{parameter_name}} notation.", "properties": { "object": { "const": "api_tool_config", "default": "api_tool_config", "type": "string" }, "parameters": { "description": "List of parameters to collect from the user for use in the API request.", "items": { "description": "Parameter collected from the user for use in API requests.\n\nParameters can be used as placeholders in URL, headers, or body using {{parameter_name}} notation.", "properties": { "description": { "description": "Description of the parameter to help the AI understand what data to collect from the user.", "type": "string" }, "name": { "description": "Name of the parameter. Used as a variable placeholder in URL, headers, or body with {{name}} notation.", "type": "string" }, "required": { "default": true, "description": "Whether this parameter is required for the API call.", "type": "boolean" }, "type": { "default": "text", "description": "Type of the parameter.", "enum": [ "text", "number", "boolean" ], "type": "string" } }, "required": [ "name", "description" ], "type": "object" }, "type": "array" } }, "type": "object" }, { "type": "null" } ], "default": null, "description": "Function schema sent to the LLM. Pass as an inline JSON object — do NOT serialize to a string. Use 'FormAPISchema' for form tools or 'APIToolConfig' for API-calling tools. Pass null to clear." }, "tool_id": { "format": "uuid", "type": "string" } }, "required": [ "tool_id" ], "type": "object" }, "name": "update_tool", "outputSchema": { "additionalProperties": true, "type": "object" } } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:0aa17c63bd55afb16b42f9bff71b294dced7b31b0b326d387208bc374a3b179e | sha256sum