diff --git a/custom_theme/main.html b/custom_theme/main.html
index 4c73cdc..bffbb07 100644
--- a/custom_theme/main.html
+++ b/custom_theme/main.html
@@ -8,15 +8,4 @@
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-PG938LS');
-
-
-
{% endblock %}
diff --git a/docs/scripts/init_kapa_widget.js b/docs/scripts/init_kapa_widget.js
new file mode 100644
index 0000000..6b62d52
--- /dev/null
+++ b/docs/scripts/init_kapa_widget.js
@@ -0,0 +1,52 @@
+document.addEventListener("DOMContentLoaded", function () {
+ var script = document.createElement("script");
+ script.src = "https://widget.kapa.ai/kapa-widget.bundle.js";
+ script.setAttribute("data-website-id", "90e95ec3-2524-43ab-93da-3e94fdd01d59");
+ script.setAttribute("data-project-name", "KX");
+ script.setAttribute("data-modal-title", "Ask AI");
+ script.setAttribute("data-project-color", "#FFC300");
+ //script.setAttribute("data-project-color-dark", "#00B0F0");
+ //script.setAttribute("data-color-scheme-selector", "[data-md-color-scheme='slate']");
+ script.setAttribute("data-color-scheme", "light");
+ script.setAttribute("data-surface-color", "#ffffff");
+ script.setAttribute("data-surface-elevated-color", "#f8f9fa");
+ script.setAttribute("data-surface-hover-color", "#f1f3f5");
+ script.setAttribute("data-text-color", "#111111");
+ script.setAttribute("data-text-muted-color", "#666666");
+ script.setAttribute("data-border-color", "#dee2e6");
+ script.setAttribute("data-anchor-color", "#2563eb");
+ //script.setAttribute("data-surface-color-dark", "#17171a");
+ //script.setAttribute("data-surface-elevated-color-dark", "#25252a");
+ //script.setAttribute("data-surface-hover-color-dark", "#32323a");
+ //script.setAttribute("data-text-color-dark", "#e4e4e7");
+ //script.setAttribute("data-text-muted-color-dark", "#a1a1aa");
+ //script.setAttribute("data-border-color-dark", "#3f3f45");
+ //script.setAttribute("data-anchor-color-dark", "#60a5fa");
+ script.setAttribute("data-modal-header-background-color", "#ffffff");
+ script.setAttribute("data-modal-header-color", "#1a1a1a");
+ //script.setAttribute("data-modal-header-background-color-dark", "#1a1a1a");
+ //script.setAttribute("data-modal-header-color-dark", "#ffffff");
+ script.setAttribute("data-project-logo", "https://images.seeklogo.com/logo-png/45/2/kx-logo-png_seeklogo-454185.png");
+ script.setAttribute('data-modal-override-open-id', 'ask-ai-input');
+ script.setAttribute('data-modal-override-open-class', 'search-input');
+ script.setAttribute('data-modal-open-by-default', 'false');
+ //script.setAttribute('data-user-analytics-fingerprint-enabled', 'true');
+ script.setAttribute("data-modal-z-index", "10001");
+ script.setAttribute("data-modal-size", "800px");
+ script.setAttribute("data-scale-factor", "0.8");
+ script.setAttribute("data-modal-title-font-size", "18px");
+ script.setAttribute("data-button-text-color", "#060000");
+ script.setAttribute("data-modal-disclaimer", "This is an experimental custom LLM for answering technical questions about KX products. Answers are based **only** on KX documentation and support sources, but may not be fully accurate so please use your best judgement. Don't forget to rate the answers and give feedback!");
+ script.setAttribute("data-modal-example-questions", "How do I get started with PyKX?,What's new in PyKX?,How do I get started with KDB-X?,How do I learn q?");
+ script.setAttribute("data-mcp-enabled", "true");
+ script.setAttribute("data-mcp-server-url", "https://kx.mcp.kapa.ai");
+ script.setAttribute("data-search-mode-enabled", "true");
+ //script.setAttribute("data-consent-required", "true");
+ //script.setAttribute("data-user-analytics-cookie-enabled", "true");
+ //script.setAttribute("data-consent-screen-title", "Help us improve our AI assistant");
+ //script.setAttribute("data-consent-screen-disclaimer", "By clicking 'Allow tracking', you consent to anonymous user tracking which helps us improve our service. We don't collect any personally identifiable information.");
+ //script.setAttribute("data-consent-screen-accept-button-text", "Allow tracking");
+ //script.setAttribute("data-consent-screen-reject-button-text", "No, thanks");
+ script.async = true;
+ document.head.appendChild(script);
+});
\ No newline at end of file
diff --git a/mkdocs.yml b/mkdocs.yml
index 6e2f759..47bccb0 100644
--- a/mkdocs.yml
+++ b/mkdocs.yml
@@ -41,6 +41,7 @@ extra_javascript:
- 'https://code.jquery.com/jquery-3.6.0.min.js'
- 'https://use.fontawesome.com/3dbf29ed12.js'
- scripts/strip-q-prompt-copy.js
+ - scripts/init_kapa_widget.js
# this relative path is needed to source from code.kx.com!!!
- "../../pykx/scripts/versions.js"
# Uncomment only for local test