@wootsup/yt-builder-mcp 1.12.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +128 -30
- package/bin/node-floor.d.ts +28 -0
- package/bin/node-floor.js +123 -0
- package/bin/yt-builder-mcp.js +51 -10
- package/dist/auth.d.ts +3 -121
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +40 -170
- package/dist/auth.js.map +1 -1
- package/dist/catalog/build-catalog.d.ts +4 -49
- package/dist/catalog/build-catalog.d.ts.map +1 -1
- package/dist/catalog/build-catalog.js +15 -126
- package/dist/catalog/build-catalog.js.map +1 -1
- package/dist/catalog/json-schema.d.ts +3 -0
- package/dist/catalog/json-schema.d.ts.map +1 -0
- package/dist/catalog/json-schema.js +68 -0
- package/dist/catalog/json-schema.js.map +1 -0
- package/dist/catalog/output-shapes.d.ts +6 -0
- package/dist/catalog/output-shapes.d.ts.map +1 -0
- package/dist/catalog/output-shapes.js +89 -0
- package/dist/catalog/output-shapes.js.map +1 -0
- package/dist/catalog/tool-catalog-markdown.d.ts +1 -37
- package/dist/catalog/tool-catalog-markdown.d.ts.map +1 -1
- package/dist/catalog/tool-catalog-markdown.js +8 -52
- package/dist/catalog/tool-catalog-markdown.js.map +1 -1
- package/dist/cli/doctor-command.d.ts +2 -7
- package/dist/cli/doctor-command.d.ts.map +1 -1
- package/dist/cli/doctor-command.js +21 -62
- package/dist/cli/doctor-command.js.map +1 -1
- package/dist/cli/invocation-decision.d.ts +4 -52
- package/dist/cli/invocation-decision.d.ts.map +1 -1
- package/dist/cli/invocation-decision.js +45 -54
- package/dist/cli/invocation-decision.js.map +1 -1
- package/dist/client.d.ts +3 -107
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +34 -115
- package/dist/client.js.map +1 -1
- package/dist/clients/claude-code.d.ts +0 -15
- package/dist/clients/claude-code.d.ts.map +1 -1
- package/dist/clients/claude-code.js +0 -22
- package/dist/clients/claude-code.js.map +1 -1
- package/dist/clients/claude-desktop.d.ts +0 -16
- package/dist/clients/claude-desktop.d.ts.map +1 -1
- package/dist/clients/claude-desktop.js +0 -18
- package/dist/clients/claude-desktop.js.map +1 -1
- package/dist/clients/cline.d.ts +0 -23
- package/dist/clients/cline.d.ts.map +1 -1
- package/dist/clients/cline.js +0 -33
- package/dist/clients/cline.js.map +1 -1
- package/dist/clients/codex-cli.d.ts +0 -39
- package/dist/clients/codex-cli.d.ts.map +1 -1
- package/dist/clients/codex-cli.js +0 -137
- package/dist/clients/codex-cli.js.map +1 -1
- package/dist/clients/continue.d.ts +0 -10
- package/dist/clients/continue.d.ts.map +1 -1
- package/dist/clients/continue.js +0 -26
- package/dist/clients/continue.js.map +1 -1
- package/dist/clients/cursor.d.ts +0 -9
- package/dist/clients/cursor.d.ts.map +1 -1
- package/dist/clients/cursor.js +0 -11
- package/dist/clients/cursor.js.map +1 -1
- package/dist/clients/gemini-cli.d.ts +0 -15
- package/dist/clients/gemini-cli.d.ts.map +1 -1
- package/dist/clients/gemini-cli.js +0 -17
- package/dist/clients/gemini-cli.js.map +1 -1
- package/dist/clients/home.d.ts +0 -12
- package/dist/clients/home.d.ts.map +1 -1
- package/dist/clients/home.js +0 -12
- package/dist/clients/home.js.map +1 -1
- package/dist/clients/index.d.ts +0 -150
- package/dist/clients/index.d.ts.map +1 -1
- package/dist/clients/index.js +0 -112
- package/dist/clients/index.js.map +1 -1
- package/dist/clients/roo-code.d.ts +0 -20
- package/dist/clients/roo-code.d.ts.map +1 -1
- package/dist/clients/roo-code.js +0 -22
- package/dist/clients/roo-code.js.map +1 -1
- package/dist/clients/zed.d.ts +0 -9
- package/dist/clients/zed.d.ts.map +1 -1
- package/dist/clients/zed.js +0 -18
- package/dist/clients/zed.js.map +1 -1
- package/dist/compat-floor.d.ts +35 -0
- package/dist/compat-floor.d.ts.map +1 -0
- package/dist/compat-floor.js +84 -0
- package/dist/compat-floor.js.map +1 -0
- package/dist/compat-probe.d.ts +6 -0
- package/dist/compat-probe.d.ts.map +1 -0
- package/dist/compat-probe.js +20 -0
- package/dist/compat-probe.js.map +1 -0
- package/dist/diagnostics/ca-reexec.d.ts +0 -30
- package/dist/diagnostics/ca-reexec.d.ts.map +1 -1
- package/dist/diagnostics/ca-reexec.js +0 -62
- package/dist/diagnostics/ca-reexec.js.map +1 -1
- package/dist/diagnostics/ca-trust.d.ts +0 -22
- package/dist/diagnostics/ca-trust.d.ts.map +1 -1
- package/dist/diagnostics/ca-trust.js +3 -42
- package/dist/diagnostics/ca-trust.js.map +1 -1
- package/dist/diagnostics/diagnose-network-error.d.ts +1 -38
- package/dist/diagnostics/diagnose-network-error.d.ts.map +1 -1
- package/dist/diagnostics/diagnose-network-error.js +26 -37
- package/dist/diagnostics/diagnose-network-error.js.map +1 -1
- package/dist/diagnostics/doctor.d.ts +1 -85
- package/dist/diagnostics/doctor.d.ts.map +1 -1
- package/dist/diagnostics/doctor.js +5 -90
- package/dist/diagnostics/doctor.js.map +1 -1
- package/dist/diagnostics/startup-self-probe.d.ts +3 -25
- package/dist/diagnostics/startup-self-probe.d.ts.map +1 -1
- package/dist/diagnostics/startup-self-probe.js +11 -48
- package/dist/diagnostics/startup-self-probe.js.map +1 -1
- package/dist/errors/hints.d.ts +0 -44
- package/dist/errors/hints.d.ts.map +1 -1
- package/dist/errors/hints.js +0 -32
- package/dist/errors/hints.js.map +1 -1
- package/dist/errors/mask.d.ts +0 -31
- package/dist/errors/mask.d.ts.map +1 -1
- package/dist/errors/mask.js +0 -32
- package/dist/errors/mask.js.map +1 -1
- package/dist/errors/redact-credentials.d.ts +2 -0
- package/dist/errors/redact-credentials.d.ts.map +1 -0
- package/dist/errors/redact-credentials.js +13 -0
- package/dist/errors/redact-credentials.js.map +1 -0
- package/dist/errors/sanitize.d.ts +0 -29
- package/dist/errors/sanitize.d.ts.map +1 -1
- package/dist/errors/sanitize.js +0 -40
- package/dist/errors/sanitize.js.map +1 -1
- package/dist/errors.d.ts +6 -17
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +16 -21
- package/dist/errors.js.map +1 -1
- package/dist/gateway/advanced-read-tool.d.ts +0 -32
- package/dist/gateway/advanced-read-tool.d.ts.map +1 -1
- package/dist/gateway/advanced-read-tool.js +43 -111
- package/dist/gateway/advanced-read-tool.js.map +1 -1
- package/dist/gateway/advanced-tool/discovery.d.ts +1 -12
- package/dist/gateway/advanced-tool/discovery.d.ts.map +1 -1
- package/dist/gateway/advanced-tool/discovery.js +15 -24
- package/dist/gateway/advanced-tool/discovery.js.map +1 -1
- package/dist/gateway/advanced-tool/domains.d.ts +7 -66
- package/dist/gateway/advanced-tool/domains.d.ts.map +1 -1
- package/dist/gateway/advanced-tool/domains.js +36 -80
- package/dist/gateway/advanced-tool/domains.js.map +1 -1
- package/dist/gateway/advanced-tool/execute.d.ts +0 -25
- package/dist/gateway/advanced-tool/execute.d.ts.map +1 -1
- package/dist/gateway/advanced-tool/execute.js +13 -49
- package/dist/gateway/advanced-tool/execute.js.map +1 -1
- package/dist/gateway/advanced-tool/index.d.ts +1 -32
- package/dist/gateway/advanced-tool/index.d.ts.map +1 -1
- package/dist/gateway/advanced-tool/index.js +1 -35
- package/dist/gateway/advanced-tool/index.js.map +1 -1
- package/dist/gateway/advanced-tool/register.d.ts +0 -14
- package/dist/gateway/advanced-tool/register.d.ts.map +1 -1
- package/dist/gateway/advanced-tool/register.js +22 -58
- package/dist/gateway/advanced-tool/register.js.map +1 -1
- package/dist/gateway/advanced-tool.d.ts +0 -11
- package/dist/gateway/advanced-tool.d.ts.map +1 -1
- package/dist/gateway/advanced-tool.js +0 -11
- package/dist/gateway/advanced-tool.js.map +1 -1
- package/dist/gateway/capturing-server.d.ts +3 -88
- package/dist/gateway/capturing-server.d.ts.map +1 -1
- package/dist/gateway/capturing-server.js +0 -77
- package/dist/gateway/capturing-server.js.map +1 -1
- package/dist/gateway/essentials.d.ts +1 -63
- package/dist/gateway/essentials.d.ts.map +1 -1
- package/dist/gateway/essentials.js +9 -178
- package/dist/gateway/essentials.js.map +1 -1
- package/dist/gateway/test-support.d.ts +0 -28
- package/dist/gateway/test-support.d.ts.map +1 -1
- package/dist/gateway/test-support.js +0 -29
- package/dist/gateway/test-support.js.map +1 -1
- package/dist/health-response.d.ts +2 -0
- package/dist/health-response.d.ts.map +1 -0
- package/dist/health-response.js +7 -0
- package/dist/health-response.js.map +1 -0
- package/dist/icon-data.js +0 -3
- package/dist/icon-data.js.map +1 -1
- package/dist/index.d.ts +7 -23
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +46 -130
- package/dist/index.js.map +1 -1
- package/dist/install-skill.d.ts +0 -44
- package/dist/install-skill.d.ts.map +1 -1
- package/dist/install-skill.js +5 -46
- package/dist/install-skill.js.map +1 -1
- package/dist/net/extra-headers.d.ts +0 -58
- package/dist/net/extra-headers.d.ts.map +1 -1
- package/dist/net/extra-headers.js +0 -67
- package/dist/net/extra-headers.js.map +1 -1
- package/dist/net/internal-host.d.ts +0 -31
- package/dist/net/internal-host.d.ts.map +1 -1
- package/dist/net/internal-host.js +7 -65
- package/dist/net/internal-host.js.map +1 -1
- package/dist/net/proxy-dispatcher.d.ts +0 -37
- package/dist/net/proxy-dispatcher.d.ts.map +1 -1
- package/dist/net/proxy-dispatcher.js +0 -40
- package/dist/net/proxy-dispatcher.js.map +1 -1
- package/dist/net/public-fetch.d.ts +53 -0
- package/dist/net/public-fetch.d.ts.map +1 -0
- package/dist/net/public-fetch.js +143 -0
- package/dist/net/public-fetch.js.map +1 -0
- package/dist/net/public-page-report.d.ts +26 -0
- package/dist/net/public-page-report.d.ts.map +1 -0
- package/dist/net/public-page-report.js +145 -0
- package/dist/net/public-page-report.js.map +1 -0
- package/dist/net/redirect-safe-fetch.d.ts +14 -0
- package/dist/net/redirect-safe-fetch.d.ts.map +1 -0
- package/dist/net/redirect-safe-fetch.js +61 -0
- package/dist/net/redirect-safe-fetch.js.map +1 -0
- package/dist/net/session-recovery-fetch.d.ts +7 -0
- package/dist/net/session-recovery-fetch.d.ts.map +1 -0
- package/dist/net/session-recovery-fetch.js +139 -0
- package/dist/net/session-recovery-fetch.js.map +1 -0
- package/dist/net/site-basic-auth.d.ts +1 -59
- package/dist/net/site-basic-auth.d.ts.map +1 -1
- package/dist/net/site-basic-auth.js +5 -94
- package/dist/net/site-basic-auth.js.map +1 -1
- package/dist/package-version.d.ts +2 -0
- package/dist/package-version.d.ts.map +1 -0
- package/dist/package-version.js +15 -0
- package/dist/package-version.js.map +1 -0
- package/dist/platform/detect.d.ts +0 -54
- package/dist/platform/detect.d.ts.map +1 -1
- package/dist/platform/detect.js +0 -53
- package/dist/platform/detect.js.map +1 -1
- package/dist/platform/index.d.ts +0 -100
- package/dist/platform/index.d.ts.map +1 -1
- package/dist/platform/index.js +0 -106
- package/dist/platform/index.js.map +1 -1
- package/dist/platform/joomla.d.ts +0 -35
- package/dist/platform/joomla.d.ts.map +1 -1
- package/dist/platform/joomla.js +0 -35
- package/dist/platform/joomla.js.map +1 -1
- package/dist/proxy/bridge.d.ts +36 -76
- package/dist/proxy/bridge.d.ts.map +1 -1
- package/dist/proxy/bridge.js +443 -136
- package/dist/proxy/bridge.js.map +1 -1
- package/dist/proxy/confirm-elicitation.d.ts +22 -0
- package/dist/proxy/confirm-elicitation.d.ts.map +1 -0
- package/dist/proxy/confirm-elicitation.js +170 -0
- package/dist/proxy/confirm-elicitation.js.map +1 -0
- package/dist/proxy/confirm-question-contract.d.ts +6 -0
- package/dist/proxy/confirm-question-contract.d.ts.map +1 -0
- package/dist/proxy/confirm-question-contract.js +9 -0
- package/dist/proxy/confirm-question-contract.js.map +1 -0
- package/dist/proxy/confirm-question.d.ts +2 -0
- package/dist/proxy/confirm-question.d.ts.map +1 -0
- package/dist/proxy/confirm-question.js +125 -0
- package/dist/proxy/confirm-question.js.map +1 -0
- package/dist/proxy/instructions.d.ts +4 -0
- package/dist/proxy/instructions.d.ts.map +1 -0
- package/dist/proxy/instructions.js +12 -0
- package/dist/proxy/instructions.js.map +1 -0
- package/dist/proxy/mode.d.ts +14 -9
- package/dist/proxy/mode.d.ts.map +1 -1
- package/dist/proxy/mode.js +58 -34
- package/dist/proxy/mode.js.map +1 -1
- package/dist/proxy/multi-site.d.ts +42 -0
- package/dist/proxy/multi-site.d.ts.map +1 -0
- package/dist/proxy/multi-site.js +134 -0
- package/dist/proxy/multi-site.js.map +1 -0
- package/dist/proxy/request-headers.d.ts +9 -0
- package/dist/proxy/request-headers.d.ts.map +1 -0
- package/dist/proxy/request-headers.js +17 -0
- package/dist/proxy/request-headers.js.map +1 -0
- package/dist/proxy/shadow-tools.d.ts +9 -0
- package/dist/proxy/shadow-tools.d.ts.map +1 -0
- package/dist/proxy/shadow-tools.js +42 -0
- package/dist/proxy/shadow-tools.js.map +1 -0
- package/dist/proxy/tools-list-cap.d.ts +7 -0
- package/dist/proxy/tools-list-cap.d.ts.map +1 -0
- package/dist/proxy/tools-list-cap.js +14 -0
- package/dist/proxy/tools-list-cap.js.map +1 -0
- package/dist/proxy/transport-uncertainty.d.ts +2 -0
- package/dist/proxy/transport-uncertainty.d.ts.map +1 -0
- package/dist/proxy/transport-uncertainty.js +8 -0
- package/dist/proxy/transport-uncertainty.js.map +1 -0
- package/dist/proxy/upstream-error.d.ts +7 -0
- package/dist/proxy/upstream-error.d.ts.map +1 -0
- package/dist/proxy/upstream-error.js +35 -0
- package/dist/proxy/upstream-error.js.map +1 -0
- package/dist/proxy/wire-dialect.d.ts +5 -0
- package/dist/proxy/wire-dialect.d.ts.map +1 -0
- package/dist/proxy/wire-dialect.js +33 -0
- package/dist/proxy/wire-dialect.js.map +1 -0
- package/dist/server.d.ts +14 -82
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +107 -203
- package/dist/server.js.map +1 -1
- package/dist/setup/banner-color.d.ts +13 -0
- package/dist/setup/banner-color.d.ts.map +1 -0
- package/dist/setup/banner-color.js +93 -0
- package/dist/setup/banner-color.js.map +1 -0
- package/dist/setup/banner.d.ts +22 -0
- package/dist/setup/banner.d.ts.map +1 -0
- package/dist/setup/banner.js +119 -0
- package/dist/setup/banner.js.map +1 -0
- package/dist/setup/ca-recovery.d.ts +20 -0
- package/dist/setup/ca-recovery.d.ts.map +1 -0
- package/dist/setup/ca-recovery.js +92 -0
- package/dist/setup/ca-recovery.js.map +1 -0
- package/dist/setup/closing.d.ts +15 -0
- package/dist/setup/closing.d.ts.map +1 -0
- package/dist/setup/closing.js +43 -0
- package/dist/setup/closing.js.map +1 -0
- package/dist/setup/corporate-ca.d.ts +16 -0
- package/dist/setup/corporate-ca.d.ts.map +1 -0
- package/dist/setup/corporate-ca.js +32 -0
- package/dist/setup/corporate-ca.js.map +1 -0
- package/dist/setup/host-platform.d.ts +8 -0
- package/dist/setup/host-platform.d.ts.map +1 -0
- package/dist/setup/host-platform.js +21 -0
- package/dist/setup/host-platform.js.map +1 -0
- package/dist/setup/install-configs.d.ts +18 -0
- package/dist/setup/install-configs.d.ts.map +1 -0
- package/dist/setup/install-configs.js +70 -0
- package/dist/setup/install-configs.js.map +1 -0
- package/dist/setup/multi-site-loop.d.ts +14 -0
- package/dist/setup/multi-site-loop.d.ts.map +1 -0
- package/dist/setup/multi-site-loop.js +20 -0
- package/dist/setup/multi-site-loop.js.map +1 -0
- package/dist/setup/phases.d.ts +18 -0
- package/dist/setup/phases.d.ts.map +1 -0
- package/dist/setup/phases.js +55 -0
- package/dist/setup/phases.js.map +1 -0
- package/dist/setup/registry-remedy.d.ts +12 -0
- package/dist/setup/registry-remedy.d.ts.map +1 -0
- package/dist/setup/registry-remedy.js +37 -0
- package/dist/setup/registry-remedy.js.map +1 -0
- package/dist/setup/resume.d.ts +28 -0
- package/dist/setup/resume.d.ts.map +1 -0
- package/dist/setup/resume.js +99 -0
- package/dist/setup/resume.js.map +1 -0
- package/dist/setup-ca-env.d.ts +0 -30
- package/dist/setup-ca-env.d.ts.map +1 -1
- package/dist/setup-ca-env.js +0 -28
- package/dist/setup-ca-env.js.map +1 -1
- package/dist/setup-ca-reprobe.d.ts +0 -25
- package/dist/setup-ca-reprobe.d.ts.map +1 -1
- package/dist/setup-ca-reprobe.js +0 -34
- package/dist/setup-ca-reprobe.js.map +1 -1
- package/dist/setup-cli-confirm.d.ts +0 -34
- package/dist/setup-cli-confirm.d.ts.map +1 -1
- package/dist/setup-cli-confirm.js +0 -36
- package/dist/setup-cli-confirm.js.map +1 -1
- package/dist/setup-cli.d.ts +6 -167
- package/dist/setup-cli.d.ts.map +1 -1
- package/dist/setup-cli.js +161 -173
- package/dist/setup-cli.js.map +1 -1
- package/dist/setup-npx-spec.d.ts +0 -36
- package/dist/setup-npx-spec.d.ts.map +1 -1
- package/dist/setup-npx-spec.js +0 -38
- package/dist/setup-npx-spec.js.map +1 -1
- package/dist/setup-prompts.d.ts +5 -70
- package/dist/setup-prompts.d.ts.map +1 -1
- package/dist/setup-prompts.js +67 -107
- package/dist/setup-prompts.js.map +1 -1
- package/dist/setup-token.d.ts +0 -34
- package/dist/setup-token.d.ts.map +1 -1
- package/dist/setup-token.js +0 -40
- package/dist/setup-token.js.map +1 -1
- package/dist/setup-wizard-defaults.d.ts +0 -36
- package/dist/setup-wizard-defaults.d.ts.map +1 -1
- package/dist/setup-wizard-defaults.js +0 -75
- package/dist/setup-wizard-defaults.js.map +1 -1
- package/dist/setup-wizard-handshake.d.ts +1 -19
- package/dist/setup-wizard-handshake.d.ts.map +1 -1
- package/dist/setup-wizard-handshake.js +8 -45
- package/dist/setup-wizard-handshake.js.map +1 -1
- package/dist/setup-wizard-types.d.ts +16 -209
- package/dist/setup-wizard-types.d.ts.map +1 -1
- package/dist/setup-wizard-types.js +0 -9
- package/dist/setup-wizard-types.js.map +1 -1
- package/dist/setup-wizard.d.ts +0 -28
- package/dist/setup-wizard.d.ts.map +1 -1
- package/dist/setup-wizard.js +167 -412
- package/dist/setup-wizard.js.map +1 -1
- package/dist/setup.d.ts +0 -15
- package/dist/setup.d.ts.map +1 -1
- package/dist/setup.js +0 -15
- package/dist/setup.js.map +1 -1
- package/dist/sites/bootstrap.d.ts +0 -38
- package/dist/sites/bootstrap.d.ts.map +1 -1
- package/dist/sites/bootstrap.js +0 -44
- package/dist/sites/bootstrap.js.map +1 -1
- package/dist/sites/cli/add-site.d.ts +0 -76
- package/dist/sites/cli/add-site.d.ts.map +1 -1
- package/dist/sites/cli/add-site.js +0 -71
- package/dist/sites/cli/add-site.js.map +1 -1
- package/dist/sites/cli/list-sites.d.ts +0 -31
- package/dist/sites/cli/list-sites.d.ts.map +1 -1
- package/dist/sites/cli/list-sites.js +0 -45
- package/dist/sites/cli/list-sites.js.map +1 -1
- package/dist/sites/cli/remove-site.d.ts +0 -37
- package/dist/sites/cli/remove-site.d.ts.map +1 -1
- package/dist/sites/cli/remove-site.js +0 -37
- package/dist/sites/cli/remove-site.js.map +1 -1
- package/dist/sites/cli/set-default.d.ts +0 -25
- package/dist/sites/cli/set-default.d.ts.map +1 -1
- package/dist/sites/cli/set-default.js +0 -22
- package/dist/sites/cli/set-default.js.map +1 -1
- package/dist/sites/cli/test-site.d.ts +0 -44
- package/dist/sites/cli/test-site.d.ts.map +1 -1
- package/dist/sites/cli/test-site.js +0 -39
- package/dist/sites/cli/test-site.js.map +1 -1
- package/dist/sites/client-pool.d.ts +11 -164
- package/dist/sites/client-pool.d.ts.map +1 -1
- package/dist/sites/client-pool.js +73 -194
- package/dist/sites/client-pool.js.map +1 -1
- package/dist/sites/config-problem.d.ts +2 -0
- package/dist/sites/config-problem.d.ts.map +1 -0
- package/dist/sites/config-problem.js +13 -0
- package/dist/sites/config-problem.js.map +1 -0
- package/dist/sites/env-bridge.d.ts +0 -69
- package/dist/sites/env-bridge.d.ts.map +1 -1
- package/dist/sites/env-bridge.js +2 -71
- package/dist/sites/env-bridge.js.map +1 -1
- package/dist/sites/op-inject.d.ts +23 -0
- package/dist/sites/op-inject.d.ts.map +1 -0
- package/dist/sites/op-inject.js +131 -0
- package/dist/sites/op-inject.js.map +1 -0
- package/dist/sites/paths.d.ts +0 -19
- package/dist/sites/paths.d.ts.map +1 -1
- package/dist/sites/paths.js +0 -19
- package/dist/sites/paths.js.map +1 -1
- package/dist/sites/probe.d.ts +1 -47
- package/dist/sites/probe.d.ts.map +1 -1
- package/dist/sites/probe.js +4 -46
- package/dist/sites/probe.js.map +1 -1
- package/dist/sites/registry.d.ts +4 -135
- package/dist/sites/registry.d.ts.map +1 -1
- package/dist/sites/registry.js +4 -98
- package/dist/sites/registry.js.map +1 -1
- package/dist/sites/schema.d.ts +3 -51
- package/dist/sites/schema.d.ts.map +1 -1
- package/dist/sites/schema.js +6 -52
- package/dist/sites/schema.js.map +1 -1
- package/dist/sites/secret-resolver.d.ts +6 -76
- package/dist/sites/secret-resolver.d.ts.map +1 -1
- package/dist/sites/secret-resolver.js +39 -104
- package/dist/sites/secret-resolver.js.map +1 -1
- package/dist/sites/store.d.ts +12 -69
- package/dist/sites/store.d.ts.map +1 -1
- package/dist/sites/store.js +37 -86
- package/dist/sites/store.js.map +1 -1
- package/dist/sites/substituted-registry.d.ts +11 -0
- package/dist/sites/substituted-registry.d.ts.map +1 -0
- package/dist/sites/substituted-registry.js +13 -0
- package/dist/sites/substituted-registry.js.map +1 -0
- package/dist/sites/tools/fetch-public-url.d.ts +4 -0
- package/dist/sites/tools/fetch-public-url.d.ts.map +1 -0
- package/dist/sites/tools/fetch-public-url.js +231 -0
- package/dist/sites/tools/fetch-public-url.js.map +1 -0
- package/dist/sites/tools/index.d.ts +2 -26
- package/dist/sites/tools/index.d.ts.map +1 -1
- package/dist/sites/tools/index.js +5 -28
- package/dist/sites/tools/index.js.map +1 -1
- package/dist/sites/tools/sites-list.d.ts +3 -47
- package/dist/sites/tools/sites-list.d.ts.map +1 -1
- package/dist/sites/tools/sites-list.js +65 -79
- package/dist/sites/tools/sites-list.js.map +1 -1
- package/dist/sites/tools/sites-overview.d.ts +4 -0
- package/dist/sites/tools/sites-overview.d.ts.map +1 -0
- package/dist/sites/tools/sites-overview.js +209 -0
- package/dist/sites/tools/sites-overview.js.map +1 -0
- package/dist/sites/tools/sites-test.d.ts +2 -45
- package/dist/sites/tools/sites-test.d.ts.map +1 -1
- package/dist/sites/tools/sites-test.js +0 -55
- package/dist/sites/tools/sites-test.js.map +1 -1
- package/dist/sites/tools/use-site.d.ts +2 -45
- package/dist/sites/tools/use-site.d.ts.map +1 -1
- package/dist/sites/tools/use-site.js +29 -78
- package/dist/sites/tools/use-site.js.map +1 -1
- package/dist/sites/unknown-name-result.d.ts +10 -0
- package/dist/sites/unknown-name-result.d.ts.map +1 -0
- package/dist/sites/unknown-name-result.js +13 -0
- package/dist/sites/unknown-name-result.js.map +1 -0
- package/dist/skill-instructions.d.ts +7 -0
- package/dist/skill-instructions.d.ts.map +1 -0
- package/dist/skill-instructions.js +84 -0
- package/dist/skill-instructions.js.map +1 -0
- package/dist/skill-loader.d.ts +0 -102
- package/dist/skill-loader.d.ts.map +1 -1
- package/dist/skill-loader.js +4 -142
- package/dist/skill-loader.js.map +1 -1
- package/dist/skill-manifest.d.ts +0 -20
- package/dist/skill-manifest.d.ts.map +1 -1
- package/dist/skill-manifest.js +1 -21
- package/dist/skill-manifest.js.map +1 -1
- package/dist/skill-topics.d.ts +19 -0
- package/dist/skill-topics.d.ts.map +1 -0
- package/dist/skill-topics.js +181 -0
- package/dist/skill-topics.js.map +1 -0
- package/dist/tools/active-site.d.ts +16 -0
- package/dist/tools/active-site.d.ts.map +1 -0
- package/dist/tools/active-site.js +55 -0
- package/dist/tools/active-site.js.map +1 -0
- package/dist/tools/bind-guidance.d.ts +2 -72
- package/dist/tools/bind-guidance.d.ts.map +1 -1
- package/dist/tools/bind-guidance.js +2 -72
- package/dist/tools/bind-guidance.js.map +1 -1
- package/dist/tools/budgeted-table.d.ts +14 -19
- package/dist/tools/budgeted-table.d.ts.map +1 -1
- package/dist/tools/budgeted-table.js +171 -105
- package/dist/tools/budgeted-table.js.map +1 -1
- package/dist/tools/elements/bind-output-schema.d.ts +69 -0
- package/dist/tools/elements/bind-output-schema.d.ts.map +1 -0
- package/dist/tools/elements/bind-output-schema.js +64 -0
- package/dist/tools/elements/bind-output-schema.js.map +1 -0
- package/dist/tools/elements/builders.d.ts +1 -22
- package/dist/tools/elements/builders.d.ts.map +1 -1
- package/dist/tools/elements/builders.js +147 -133
- package/dist/tools/elements/builders.js.map +1 -1
- package/dist/tools/elements/index.d.ts +0 -26
- package/dist/tools/elements/index.d.ts.map +1 -1
- package/dist/tools/elements/index.js +0 -25
- package/dist/tools/elements/index.js.map +1 -1
- package/dist/tools/elements/read-output-schemas.d.ts +121 -0
- package/dist/tools/elements/read-output-schemas.d.ts.map +1 -0
- package/dist/tools/elements/read-output-schemas.js +225 -0
- package/dist/tools/elements/read-output-schemas.js.map +1 -0
- package/dist/tools/elements/write-output-schemas.d.ts +185 -0
- package/dist/tools/elements/write-output-schemas.d.ts.map +1 -0
- package/dist/tools/elements/write-output-schemas.js +98 -0
- package/dist/tools/elements/write-output-schemas.js.map +1 -0
- package/dist/tools/elements.d.ts +0 -11
- package/dist/tools/elements.d.ts.map +1 -1
- package/dist/tools/elements.js +0 -11
- package/dist/tools/elements.js.map +1 -1
- package/dist/tools/format/health-format.d.ts +26 -43
- package/dist/tools/format/health-format.d.ts.map +1 -1
- package/dist/tools/format/health-format.js +28 -60
- package/dist/tools/format/health-format.js.map +1 -1
- package/dist/tools/format/inspection-format.d.ts +2 -54
- package/dist/tools/format/inspection-format.d.ts.map +1 -1
- package/dist/tools/format/inspection-format.js +33 -119
- package/dist/tools/format/inspection-format.js.map +1 -1
- package/dist/tools/format/pages-format.d.ts +32 -69
- package/dist/tools/format/pages-format.d.ts.map +1 -1
- package/dist/tools/format/pages-format.js +114 -139
- package/dist/tools/format/pages-format.js.map +1 -1
- package/dist/tools/format/sources-format.d.ts +5 -39
- package/dist/tools/format/sources-format.d.ts.map +1 -1
- package/dist/tools/format/sources-format.js +57 -87
- package/dist/tools/format/sources-format.js.map +1 -1
- package/dist/tools/health-output-schemas.d.ts +82 -0
- package/dist/tools/health-output-schemas.d.ts.map +1 -0
- package/dist/tools/health-output-schemas.js +130 -0
- package/dist/tools/health-output-schemas.js.map +1 -0
- package/dist/tools/health.d.ts +2 -20
- package/dist/tools/health.d.ts.map +1 -1
- package/dist/tools/health.js +46 -232
- package/dist/tools/health.js.map +1 -1
- package/dist/tools/index.d.ts +1 -26
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +12 -39
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/inspection.d.ts +4 -34
- package/dist/tools/inspection.d.ts.map +1 -1
- package/dist/tools/inspection.js +164 -536
- package/dist/tools/inspection.js.map +1 -1
- package/dist/tools/library.d.ts +115 -127
- package/dist/tools/library.d.ts.map +1 -1
- package/dist/tools/library.js +706 -454
- package/dist/tools/library.js.map +1 -1
- package/dist/tools/local-content/builders.d.ts +1 -17
- package/dist/tools/local-content/builders.d.ts.map +1 -1
- package/dist/tools/local-content/builders.js +103 -46
- package/dist/tools/local-content/builders.js.map +1 -1
- package/dist/tools/local-content/index.d.ts +0 -15
- package/dist/tools/local-content/index.d.ts.map +1 -1
- package/dist/tools/local-content/index.js +0 -14
- package/dist/tools/local-content/index.js.map +1 -1
- package/dist/tools/local-content/schemas.d.ts +31 -47
- package/dist/tools/local-content/schemas.d.ts.map +1 -1
- package/dist/tools/local-content/schemas.js +33 -62
- package/dist/tools/local-content/schemas.js.map +1 -1
- package/dist/tools/modules/builders.d.ts +4 -0
- package/dist/tools/modules/builders.d.ts.map +1 -0
- package/dist/tools/modules/builders.js +58 -0
- package/dist/tools/modules/builders.js.map +1 -0
- package/dist/tools/modules/index.d.ts +2 -0
- package/dist/tools/modules/index.d.ts.map +1 -0
- package/dist/tools/modules/index.js +2 -0
- package/dist/tools/modules/index.js.map +1 -0
- package/dist/tools/modules/module-id-schema.d.ts +4 -0
- package/dist/tools/modules/module-id-schema.d.ts.map +1 -0
- package/dist/tools/modules/module-id-schema.js +14 -0
- package/dist/tools/modules/module-id-schema.js.map +1 -0
- package/dist/tools/modules/module-type-fields.d.ts +10 -0
- package/dist/tools/modules/module-type-fields.d.ts.map +1 -0
- package/dist/tools/modules/module-type-fields.js +34 -0
- package/dist/tools/modules/module-type-fields.js.map +1 -0
- package/dist/tools/modules/modules-create.d.ts +59 -0
- package/dist/tools/modules/modules-create.d.ts.map +1 -0
- package/dist/tools/modules/modules-create.js +154 -0
- package/dist/tools/modules/modules-create.js.map +1 -0
- package/dist/tools/modules/modules-delete.d.ts +51 -0
- package/dist/tools/modules/modules-delete.d.ts.map +1 -0
- package/dist/tools/modules/modules-delete.js +180 -0
- package/dist/tools/modules/modules-delete.js.map +1 -0
- package/dist/tools/modules/modules-update.d.ts +43 -0
- package/dist/tools/modules/modules-update.d.ts.map +1 -0
- package/dist/tools/modules/modules-update.js +177 -0
- package/dist/tools/modules/modules-update.js.map +1 -0
- package/dist/tools/modules/placement-hints.d.ts +5 -0
- package/dist/tools/modules/placement-hints.d.ts.map +1 -0
- package/dist/tools/modules/placement-hints.js +90 -0
- package/dist/tools/modules/placement-hints.js.map +1 -0
- package/dist/tools/modules/placement-ways.d.ts +13 -0
- package/dist/tools/modules/placement-ways.d.ts.map +1 -0
- package/dist/tools/modules/placement-ways.js +61 -0
- package/dist/tools/modules/placement-ways.js.map +1 -0
- package/dist/tools/multi-items/builders.d.ts +1 -21
- package/dist/tools/multi-items/builders.d.ts.map +1 -1
- package/dist/tools/multi-items/builders.js +22 -65
- package/dist/tools/multi-items/builders.js.map +1 -1
- package/dist/tools/multi-items/index.d.ts +0 -15
- package/dist/tools/multi-items/index.d.ts.map +1 -1
- package/dist/tools/multi-items/index.js +0 -15
- package/dist/tools/multi-items/index.js.map +1 -1
- package/dist/tools/multi-items/item-container-map.d.ts +0 -35
- package/dist/tools/multi-items/item-container-map.d.ts.map +1 -1
- package/dist/tools/multi-items/item-container-map.js +0 -35
- package/dist/tools/multi-items/item-container-map.js.map +1 -1
- package/dist/tools/multi-items/output-schemas.d.ts +101 -0
- package/dist/tools/multi-items/output-schemas.d.ts.map +1 -0
- package/dist/tools/multi-items/output-schemas.js +74 -0
- package/dist/tools/multi-items/output-schemas.js.map +1 -0
- package/dist/tools/navigation/builders.d.ts +1 -16
- package/dist/tools/navigation/builders.d.ts.map +1 -1
- package/dist/tools/navigation/builders.js +5 -27
- package/dist/tools/navigation/builders.js.map +1 -1
- package/dist/tools/navigation/index.d.ts +0 -13
- package/dist/tools/navigation/index.d.ts.map +1 -1
- package/dist/tools/navigation/index.js +0 -12
- package/dist/tools/navigation/index.js.map +1 -1
- package/dist/tools/navigation/schemas.d.ts +0 -30
- package/dist/tools/navigation/schemas.d.ts.map +1 -1
- package/dist/tools/navigation/schemas.js +0 -30
- package/dist/tools/navigation/schemas.js.map +1 -1
- package/dist/tools/output-schema-metadata.d.ts +5 -0
- package/dist/tools/output-schema-metadata.d.ts.map +1 -0
- package/dist/tools/output-schema-metadata.js +83 -0
- package/dist/tools/output-schema-metadata.js.map +1 -0
- package/dist/tools/pages/builders.d.ts +1 -41
- package/dist/tools/pages/builders.d.ts.map +1 -1
- package/dist/tools/pages/builders.js +320 -405
- package/dist/tools/pages/builders.js.map +1 -1
- package/dist/tools/pages/header-transparency.d.ts +2 -32
- package/dist/tools/pages/header-transparency.d.ts.map +1 -1
- package/dist/tools/pages/header-transparency.js +9 -43
- package/dist/tools/pages/header-transparency.js.map +1 -1
- package/dist/tools/pages/index.d.ts +1 -19
- package/dist/tools/pages/index.d.ts.map +1 -1
- package/dist/tools/pages/index.js +1 -19
- package/dist/tools/pages/index.js.map +1 -1
- package/dist/tools/pages/schemas.d.ts +323 -241
- package/dist/tools/pages/schemas.d.ts.map +1 -1
- package/dist/tools/pages/schemas.js +514 -549
- package/dist/tools/pages/schemas.js.map +1 -1
- package/dist/tools/pages/write-output-schemas.d.ts +139 -0
- package/dist/tools/pages/write-output-schemas.d.ts.map +1 -0
- package/dist/tools/pages/write-output-schemas.js +138 -0
- package/dist/tools/pages/write-output-schemas.js.map +1 -0
- package/dist/tools/pages.d.ts +0 -11
- package/dist/tools/pages.d.ts.map +1 -1
- package/dist/tools/pages.js +0 -11
- package/dist/tools/pages.js.map +1 -1
- package/dist/tools/pool-resolve-helper.d.ts +0 -52
- package/dist/tools/pool-resolve-helper.d.ts.map +1 -1
- package/dist/tools/pool-resolve-helper.js +29 -104
- package/dist/tools/pool-resolve-helper.js.map +1 -1
- package/dist/tools/progress-phases.d.ts +0 -42
- package/dist/tools/progress-phases.d.ts.map +1 -1
- package/dist/tools/progress-phases.js +0 -44
- package/dist/tools/progress-phases.js.map +1 -1
- package/dist/tools/response-budget.d.ts +0 -69
- package/dist/tools/response-budget.d.ts.map +1 -1
- package/dist/tools/response-budget.js +0 -127
- package/dist/tools/response-budget.js.map +1 -1
- package/dist/tools/shared-schemas.d.ts +11 -65
- package/dist/tools/shared-schemas.d.ts.map +1 -1
- package/dist/tools/shared-schemas.js +40 -123
- package/dist/tools/shared-schemas.js.map +1 -1
- package/dist/tools/skill/builders.d.ts +3 -0
- package/dist/tools/skill/builders.d.ts.map +1 -0
- package/dist/tools/skill/builders.js +81 -0
- package/dist/tools/skill/builders.js.map +1 -0
- package/dist/tools/sources/builders.d.ts +1 -11
- package/dist/tools/sources/builders.d.ts.map +1 -1
- package/dist/tools/sources/builders.js +194 -170
- package/dist/tools/sources/builders.js.map +1 -1
- package/dist/tools/sources/index.d.ts +0 -17
- package/dist/tools/sources/index.d.ts.map +1 -1
- package/dist/tools/sources/index.js +0 -16
- package/dist/tools/sources/index.js.map +1 -1
- package/dist/tools/sources/read-output-schemas.d.ts +101 -0
- package/dist/tools/sources/read-output-schemas.d.ts.map +1 -0
- package/dist/tools/sources/read-output-schemas.js +105 -0
- package/dist/tools/sources/read-output-schemas.js.map +1 -0
- package/dist/tools/sources/source-name-argument.d.ts +17 -0
- package/dist/tools/sources/source-name-argument.d.ts.map +1 -0
- package/dist/tools/sources/source-name-argument.js +64 -0
- package/dist/tools/sources/source-name-argument.js.map +1 -0
- package/dist/tools/sources/write-output-schemas.d.ts +100 -0
- package/dist/tools/sources/write-output-schemas.d.ts.map +1 -0
- package/dist/tools/sources/write-output-schemas.js +61 -0
- package/dist/tools/sources/write-output-schemas.js.map +1 -0
- package/dist/tools/sources.d.ts +0 -12
- package/dist/tools/sources.d.ts.map +1 -1
- package/dist/tools/sources.js +0 -12
- package/dist/tools/sources.js.map +1 -1
- package/dist/tools/sparse-fields.d.ts +16 -232
- package/dist/tools/sparse-fields.d.ts.map +1 -1
- package/dist/tools/sparse-fields.js +178 -242
- package/dist/tools/sparse-fields.js.map +1 -1
- package/dist/tools/strict-input.d.ts +5 -0
- package/dist/tools/strict-input.d.ts.map +1 -0
- package/dist/tools/strict-input.js +55 -0
- package/dist/tools/strict-input.js.map +1 -0
- package/dist/tools/sublayout/builders.d.ts +1 -21
- package/dist/tools/sublayout/builders.d.ts.map +1 -1
- package/dist/tools/sublayout/builders.js +10 -39
- package/dist/tools/sublayout/builders.js.map +1 -1
- package/dist/tools/sublayout/index.d.ts +1 -11
- package/dist/tools/sublayout/index.d.ts.map +1 -1
- package/dist/tools/sublayout/index.js +1 -11
- package/dist/tools/sublayout/index.js.map +1 -1
- package/dist/tools/sublayout/output-schemas.d.ts +57 -0
- package/dist/tools/sublayout/output-schemas.d.ts.map +1 -0
- package/dist/tools/sublayout/output-schemas.js +51 -0
- package/dist/tools/sublayout/output-schemas.js.map +1 -0
- package/dist/tools/tool-builder/annotations.d.ts +1 -49
- package/dist/tools/tool-builder/annotations.d.ts.map +1 -1
- package/dist/tools/tool-builder/annotations.js +9 -49
- package/dist/tools/tool-builder/annotations.js.map +1 -1
- package/dist/tools/tool-builder/confirm-preview.d.ts +24 -0
- package/dist/tools/tool-builder/confirm-preview.d.ts.map +1 -0
- package/dist/tools/tool-builder/confirm-preview.js +37 -0
- package/dist/tools/tool-builder/confirm-preview.js.map +1 -0
- package/dist/tools/tool-builder/define.d.ts +6 -26
- package/dist/tools/tool-builder/define.d.ts.map +1 -1
- package/dist/tools/tool-builder/define.js +0 -25
- package/dist/tools/tool-builder/define.js.map +1 -1
- package/dist/tools/tool-builder/index.d.ts +3 -26
- package/dist/tools/tool-builder/index.d.ts.map +1 -1
- package/dist/tools/tool-builder/index.js +2 -25
- package/dist/tools/tool-builder/index.js.map +1 -1
- package/dist/tools/tool-builder/results.d.ts +4 -124
- package/dist/tools/tool-builder/results.d.ts.map +1 -1
- package/dist/tools/tool-builder/results.js +258 -263
- package/dist/tools/tool-builder/results.js.map +1 -1
- package/dist/tools/tool-builder/types.d.ts +5 -59
- package/dist/tools/tool-builder/types.d.ts.map +1 -1
- package/dist/tools/tool-builder/types.js +0 -7
- package/dist/tools/tool-builder/types.js.map +1 -1
- package/dist/tools/tool-builder.d.ts +0 -14
- package/dist/tools/tool-builder.d.ts.map +1 -1
- package/dist/tools/tool-builder.js +0 -14
- package/dist/tools/tool-builder.js.map +1 -1
- package/dist/uninstall-skill.d.ts +0 -41
- package/dist/uninstall-skill.d.ts.map +1 -1
- package/dist/uninstall-skill.js +0 -49
- package/dist/uninstall-skill.js.map +1 -1
- package/dist/uninstall.d.ts +0 -41
- package/dist/uninstall.d.ts.map +1 -1
- package/dist/uninstall.js +1 -29
- package/dist/uninstall.js.map +1 -1
- package/dist/update/update-check.d.ts +0 -26
- package/dist/update/update-check.d.ts.map +1 -1
- package/dist/update/update-check.js +0 -25
- package/dist/update/update-check.js.map +1 -1
- package/manifest.json +4 -5
- package/package.json +4 -4
- package/skills/yt-builder-mcp/SKILL.md +1857 -400
- package/dist/tools/elements/handlers-write.d.ts +0 -89
- package/dist/tools/elements/handlers-write.d.ts.map +0 -1
- package/dist/tools/elements/handlers-write.js +0 -797
- package/dist/tools/elements/handlers-write.js.map +0 -1
- package/dist/tools/elements/handlers.d.ts +0 -130
- package/dist/tools/elements/handlers.d.ts.map +0 -1
- package/dist/tools/elements/handlers.js +0 -581
- package/dist/tools/elements/handlers.js.map +0 -1
- package/dist/tools/elements/layout-hierarchy-rules.d.ts +0 -62
- package/dist/tools/elements/layout-hierarchy-rules.d.ts.map +0 -1
- package/dist/tools/elements/layout-hierarchy-rules.js +0 -154
- package/dist/tools/elements/layout-hierarchy-rules.js.map +0 -1
- package/dist/tools/elements/schema-validation.d.ts +0 -218
- package/dist/tools/elements/schema-validation.d.ts.map +0 -1
- package/dist/tools/elements/schema-validation.js +0 -685
- package/dist/tools/elements/schema-validation.js.map +0 -1
- package/dist/tools/elicitation.d.ts +0 -87
- package/dist/tools/elicitation.d.ts.map +0 -1
- package/dist/tools/elicitation.js +0 -100
- package/dist/tools/elicitation.js.map +0 -1
- package/dist/tools/format/elements-format.d.ts +0 -75
- package/dist/tools/format/elements-format.d.ts.map +0 -1
- package/dist/tools/format/elements-format.js +0 -368
- package/dist/tools/format/elements-format.js.map +0 -1
- package/dist/tools/format/source-schema-format.d.ts +0 -74
- package/dist/tools/format/source-schema-format.d.ts.map +0 -1
- package/dist/tools/format/source-schema-format.js +0 -208
- package/dist/tools/format/source-schema-format.js.map +0 -1
- package/dist/tools/layout-flatten.d.ts +0 -84
- package/dist/tools/layout-flatten.d.ts.map +0 -1
- package/dist/tools/layout-flatten.js +0 -129
- package/dist/tools/layout-flatten.js.map +0 -1
- package/dist/tools/local-content/handlers.d.ts +0 -56
- package/dist/tools/local-content/handlers.d.ts.map +0 -1
- package/dist/tools/local-content/handlers.js +0 -320
- package/dist/tools/local-content/handlers.js.map +0 -1
- package/dist/tools/multi-items/clean-implode-handler.d.ts +0 -37
- package/dist/tools/multi-items/clean-implode-handler.d.ts.map +0 -1
- package/dist/tools/multi-items/clean-implode-handler.js +0 -65
- package/dist/tools/multi-items/clean-implode-handler.js.map +0 -1
- package/dist/tools/multi-items/format/inspection-format.d.ts +0 -41
- package/dist/tools/multi-items/format/inspection-format.d.ts.map +0 -1
- package/dist/tools/multi-items/format/inspection-format.js +0 -64
- package/dist/tools/multi-items/format/inspection-format.js.map +0 -1
- package/dist/tools/multi-items/inspect-handler.d.ts +0 -97
- package/dist/tools/multi-items/inspect-handler.d.ts.map +0 -1
- package/dist/tools/multi-items/inspect-handler.js +0 -323
- package/dist/tools/multi-items/inspect-handler.js.map +0 -1
- package/dist/tools/multi-items/inspection-cache.d.ts +0 -85
- package/dist/tools/multi-items/inspection-cache.d.ts.map +0 -1
- package/dist/tools/multi-items/inspection-cache.js +0 -126
- package/dist/tools/multi-items/inspection-cache.js.map +0 -1
- package/dist/tools/navigation/handlers.d.ts +0 -30
- package/dist/tools/navigation/handlers.d.ts.map +0 -1
- package/dist/tools/navigation/handlers.js +0 -41
- package/dist/tools/navigation/handlers.js.map +0 -1
- package/dist/tools/pages/handlers-audit.d.ts +0 -140
- package/dist/tools/pages/handlers-audit.d.ts.map +0 -1
- package/dist/tools/pages/handlers-audit.js +0 -714
- package/dist/tools/pages/handlers-audit.js.map +0 -1
- package/dist/tools/pages/handlers-read.d.ts +0 -133
- package/dist/tools/pages/handlers-read.d.ts.map +0 -1
- package/dist/tools/pages/handlers-read.js +0 -1061
- package/dist/tools/pages/handlers-read.js.map +0 -1
- package/dist/tools/pages/handlers-write.d.ts +0 -212
- package/dist/tools/pages/handlers-write.d.ts.map +0 -1
- package/dist/tools/pages/handlers-write.js +0 -419
- package/dist/tools/pages/handlers-write.js.map +0 -1
- package/dist/tools/pages/target.d.ts +0 -162
- package/dist/tools/pages/target.d.ts.map +0 -1
- package/dist/tools/pages/target.js +0 -239
- package/dist/tools/pages/target.js.map +0 -1
- package/dist/tools/sources/handlers-bind.d.ts +0 -148
- package/dist/tools/sources/handlers-bind.d.ts.map +0 -1
- package/dist/tools/sources/handlers-bind.js +0 -657
- package/dist/tools/sources/handlers-bind.js.map +0 -1
- package/dist/tools/sources/handlers.d.ts +0 -116
- package/dist/tools/sources/handlers.d.ts.map +0 -1
- package/dist/tools/sources/handlers.js +0 -289
- package/dist/tools/sources/handlers.js.map +0 -1
- package/dist/tools/sublayout/inspect-sublayout-handler.d.ts +0 -95
- package/dist/tools/sublayout/inspect-sublayout-handler.d.ts.map +0 -1
- package/dist/tools/sublayout/inspect-sublayout-handler.js +0 -181
- package/dist/tools/sublayout/inspect-sublayout-handler.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sites-list.js","sourceRoot":"","sources":["../../../src/sites/tools/sites-list.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sites-list.js","sourceRoot":"","sources":["../../../src/sites/tools/sites-list.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sites-overview.d.ts","sourceRoot":"","sources":["../../../src/sites/tools/sites-overview.ts"],"names":[],"mappings":"AAgDA,OAAO,EAKH,KAAK,oBAAoB,EAC5B,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAsIpD,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,UAAU,GAAG,oBAAoB,CA+L7E"}
|
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { budgetedTableResult } from '../../tools/budgeted-table.js';
|
|
3
|
+
import { RESPONSE_BUDGET } from '../../tools/response-budget.js';
|
|
4
|
+
import { INCLUDE_META_SCHEMA, SITE_ID_SCHEMA } from '../../tools/shared-schemas.js';
|
|
5
|
+
import { applyMaxChars, MAX_CHARS } from '../../tools/sparse-fields.js';
|
|
6
|
+
import { defineTool, jsonResult, readOnly, structuredResult, } from '../../tools/tool-builder.js';
|
|
7
|
+
import { probeSite } from '../probe.js';
|
|
8
|
+
import { substitutedRegistryRefusal } from '../substituted-registry.js';
|
|
9
|
+
import { unknownNameResult } from '../unknown-name-result.js';
|
|
10
|
+
const SITE_OVERVIEW_ROW = z
|
|
11
|
+
.object({
|
|
12
|
+
site_id: z.string(),
|
|
13
|
+
url: z.string(),
|
|
14
|
+
platform: z.string(),
|
|
15
|
+
is_default: z.boolean(),
|
|
16
|
+
label: z.string().optional(),
|
|
17
|
+
reachable: z.boolean(),
|
|
18
|
+
bearer_valid: z.boolean(),
|
|
19
|
+
error: z.string().optional(),
|
|
20
|
+
pages_total: z.number().optional(),
|
|
21
|
+
pages_content: z.number().optional(),
|
|
22
|
+
pages_theme_template: z.number().optional(),
|
|
23
|
+
pages_error: z.string().optional(),
|
|
24
|
+
})
|
|
25
|
+
.catchall(z.unknown());
|
|
26
|
+
const SITES_OVERVIEW_OUTPUT_SCHEMA = z.object({
|
|
27
|
+
items: z.array(SITE_OVERVIEW_ROW),
|
|
28
|
+
total: z.number(),
|
|
29
|
+
reachable_total: z.number(),
|
|
30
|
+
default_site_id: z.string().nullable(),
|
|
31
|
+
config_problem: z
|
|
32
|
+
.string()
|
|
33
|
+
.optional()
|
|
34
|
+
.describe('Present only when a configured source (a sites file, or the ' +
|
|
35
|
+
'YTB_MCP_SITE_URL/YTB_MCP_BEARER_TOKEN pair) EXISTED but was rejected at ' +
|
|
36
|
+
'startup — as opposed to nothing being configured yet. Names the exact ' +
|
|
37
|
+
'rejection reason. Absent in every other case.'),
|
|
38
|
+
_meta: z.object({ tool_kind: z.string() }).passthrough().optional(),
|
|
39
|
+
});
|
|
40
|
+
const TABLE_COLUMNS = [
|
|
41
|
+
{ key: 'site_id', label: 'SITE_ID', width: 20 },
|
|
42
|
+
{ key: 'status', label: 'STATUS', width: 16 },
|
|
43
|
+
{ key: 'platform', label: 'PLATFORM', width: 10 },
|
|
44
|
+
{ key: 'pages', label: 'PAGES', width: 22 },
|
|
45
|
+
{ key: 'url', label: 'URL', width: 34 },
|
|
46
|
+
];
|
|
47
|
+
const COMPACT_COLUMNS = [
|
|
48
|
+
{ key: 'site_id', label: 'SITE_ID', width: 20 },
|
|
49
|
+
{ key: 'status', label: 'STATUS', width: 16 },
|
|
50
|
+
{ key: 'pages', label: 'PAGES', width: 22 },
|
|
51
|
+
];
|
|
52
|
+
function errorMessage(err) {
|
|
53
|
+
if (err instanceof Error)
|
|
54
|
+
return err.message;
|
|
55
|
+
if (typeof err === 'string')
|
|
56
|
+
return err;
|
|
57
|
+
return 'unknown error';
|
|
58
|
+
}
|
|
59
|
+
async function readPageCounts(client) {
|
|
60
|
+
try {
|
|
61
|
+
const data = await client.get('/pages?limit=1');
|
|
62
|
+
const out = {};
|
|
63
|
+
if (typeof data.total === 'number') {
|
|
64
|
+
out.pages_total = data.total;
|
|
65
|
+
}
|
|
66
|
+
else if (Array.isArray(data.pages)) {
|
|
67
|
+
out.pages_total = data.pages.length;
|
|
68
|
+
}
|
|
69
|
+
const totals = data.totals;
|
|
70
|
+
if (totals !== null && typeof totals === 'object') {
|
|
71
|
+
const t = totals;
|
|
72
|
+
if (typeof t.content === 'number' && typeof t.theme_template === 'number') {
|
|
73
|
+
out.pages_content = t.content;
|
|
74
|
+
out.pages_theme_template = t.theme_template;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
return out;
|
|
78
|
+
}
|
|
79
|
+
catch (e) {
|
|
80
|
+
return { pages_error: errorMessage(e) };
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
export function buildSitesOverviewTool(pool) {
|
|
84
|
+
return defineTool({
|
|
85
|
+
name: 'yootheme_builder_sites_overview',
|
|
86
|
+
description: 'Every configured site in ONE call: reachability, Bearer validity and page counts ' +
|
|
87
|
+
'per site, probed in parallel. Replaces sites_list plus one sites_test and one ' +
|
|
88
|
+
'pages_list per site. A site that is down becomes a row with an `error`, never a ' +
|
|
89
|
+
'failed call. Pass `site_id` to narrow to one site; `include_pages:false` skips the ' +
|
|
90
|
+
'page read (one HTTP request per site less). The content/theme_template split is ' +
|
|
91
|
+
'absent on hosts that do not report it — never reported as zero.',
|
|
92
|
+
inputSchema: {
|
|
93
|
+
site_id: SITE_ID_SCHEMA,
|
|
94
|
+
include_pages: z
|
|
95
|
+
.boolean()
|
|
96
|
+
.default(true)
|
|
97
|
+
.describe('Read each site\'s page counts (one extra request per site, run in ' +
|
|
98
|
+
'parallel with the probe). false = connectivity only. Measured over a ' +
|
|
99
|
+
'four-site fleet on 2026-08-13: 841 ms with, 516 ms without.'),
|
|
100
|
+
max_chars: MAX_CHARS.describe('Cap (chars) on the text output; structuredContent stays complete. Whole rows '
|
|
101
|
+
+ 'are dropped, never half a row, and the answer says how many. No '
|
|
102
|
+
+ '`[site @ host] ` prefix is added, so delivery is at most this many chars. '
|
|
103
|
+
+ 'Raising it stops helping at the limit your own client puts on a single tool '
|
|
104
|
+
+ 'result, which this server cannot see. '
|
|
105
|
+
+ 'Out of range, the cap that actually applied comes back as `max_chars`.'),
|
|
106
|
+
include_meta: INCLUDE_META_SCHEMA,
|
|
107
|
+
},
|
|
108
|
+
outputSchema: SITES_OVERVIEW_OUTPUT_SCHEMA,
|
|
109
|
+
annotations: readOnly('Sites — Fleet overview'),
|
|
110
|
+
handler: async ({ site_id, include_pages, max_chars, include_meta }) => {
|
|
111
|
+
const substituteProblem = pool.registry.configProblem;
|
|
112
|
+
if (site_id !== undefined
|
|
113
|
+
&& pool.registry.sitesAreSubstituted
|
|
114
|
+
&& substituteProblem !== null) {
|
|
115
|
+
return jsonResult(substitutedRegistryRefusal(site_id, substituteProblem), { isError: true });
|
|
116
|
+
}
|
|
117
|
+
const allRows = pool.registry.listForDisplay();
|
|
118
|
+
const rows = site_id === undefined
|
|
119
|
+
? allRows
|
|
120
|
+
: allRows.filter((row) => row.site_id === site_id);
|
|
121
|
+
if (site_id !== undefined && rows.length === 0) {
|
|
122
|
+
return unknownNameResult({
|
|
123
|
+
argument: 'site_id',
|
|
124
|
+
value: site_id,
|
|
125
|
+
available: allRows.map((row) => row.site_id),
|
|
126
|
+
code: 'unknown_site',
|
|
127
|
+
error: `No site is configured under site_id "${site_id}".`,
|
|
128
|
+
hint: 'Call yootheme_builder_sites_overview with no arguments to see every '
|
|
129
|
+
+ 'configured site, or run the setup CLI to add this one.',
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
const lines = await Promise.all(rows.map(async (row) => {
|
|
133
|
+
const base = {
|
|
134
|
+
site_id: row.site_id,
|
|
135
|
+
url: row.url,
|
|
136
|
+
platform: row.platform_resolved ?? row.platform_hint,
|
|
137
|
+
is_default: row.is_default,
|
|
138
|
+
...(row.label !== undefined ? { label: row.label } : {}),
|
|
139
|
+
};
|
|
140
|
+
let client;
|
|
141
|
+
try {
|
|
142
|
+
({ client } = await pool.resolve(row.site_id));
|
|
143
|
+
}
|
|
144
|
+
catch (e) {
|
|
145
|
+
return { ...base, reachable: false, bearer_valid: false, error: errorMessage(e) };
|
|
146
|
+
}
|
|
147
|
+
const [probe, pages] = await Promise.all([
|
|
148
|
+
probeSite(client),
|
|
149
|
+
include_pages ? readPageCounts(client) : Promise.resolve({}),
|
|
150
|
+
]);
|
|
151
|
+
const failure = probe.plugin_error ?? probe.bearer_error;
|
|
152
|
+
return {
|
|
153
|
+
...base,
|
|
154
|
+
reachable: probe.plugin_reachable,
|
|
155
|
+
bearer_valid: probe.bearer_valid,
|
|
156
|
+
...(failure !== undefined ? { error: failure } : {}),
|
|
157
|
+
...pages,
|
|
158
|
+
};
|
|
159
|
+
}));
|
|
160
|
+
const reachableTotal = lines.filter((l) => l.reachable && l.bearer_valid).length;
|
|
161
|
+
const defaultSiteId = pool.registry.defaultSiteId();
|
|
162
|
+
const configProblem = pool.registry.configProblem;
|
|
163
|
+
const tableRows = lines.map((l) => ({
|
|
164
|
+
site_id: l.site_id,
|
|
165
|
+
status: l.reachable && l.bearer_valid ? 'ok' : l.reachable ? 'bearer' : 'unreachable',
|
|
166
|
+
platform: l.platform,
|
|
167
|
+
pages: describePages(l),
|
|
168
|
+
url: l.url,
|
|
169
|
+
}));
|
|
170
|
+
const columnKeys = new Set(TABLE_COLUMNS.map((c) => c.key));
|
|
171
|
+
const omittedFields = [
|
|
172
|
+
...new Set(lines.flatMap((l) => Object.keys(l))),
|
|
173
|
+
].filter((key) => !columnKeys.has(key));
|
|
174
|
+
const budget = max_chars ?? RESPONSE_BUDGET.BULKY;
|
|
175
|
+
const toolkitResult = budgetedTableResult(tableRows, {
|
|
176
|
+
columns: [...TABLE_COLUMNS],
|
|
177
|
+
compactColumns: [...COMPACT_COLUMNS],
|
|
178
|
+
header: (count) => `${String(count)} site${count === 1 ? '' : 's'}, ${String(reachableTotal)} fully reachable`
|
|
179
|
+
+ (defaultSiteId !== null ? ` (default: ${defaultSiteId})` : ' (no default configured)')
|
|
180
|
+
+ (configProblem !== null
|
|
181
|
+
? ' — a configured source was rejected at startup and is NOT in this list (see config_problem)'
|
|
182
|
+
: ''),
|
|
183
|
+
footer: 'Diagnose one: yootheme_builder_sites_test({site_id: "<SITE_ID column>"}). '
|
|
184
|
+
+ 'List its pages: yootheme_builder_pages_list({site_id: "<SITE_ID column>"}).',
|
|
185
|
+
omittedFields,
|
|
186
|
+
includeMeta: include_meta,
|
|
187
|
+
}, budget);
|
|
188
|
+
return structuredResult(applyMaxChars(toolkitResult, max_chars), {
|
|
189
|
+
items: lines.map((l) => ({ ...l })),
|
|
190
|
+
total: lines.length,
|
|
191
|
+
reachable_total: reachableTotal,
|
|
192
|
+
default_site_id: defaultSiteId,
|
|
193
|
+
...(configProblem !== null ? { config_problem: configProblem } : {}),
|
|
194
|
+
_meta: { tool_kind: 'registry' },
|
|
195
|
+
});
|
|
196
|
+
},
|
|
197
|
+
});
|
|
198
|
+
}
|
|
199
|
+
function describePages(line) {
|
|
200
|
+
if (line.pages_error !== undefined)
|
|
201
|
+
return '!';
|
|
202
|
+
if (line.pages_total === undefined)
|
|
203
|
+
return '—';
|
|
204
|
+
if (line.pages_content === undefined || line.pages_theme_template === undefined) {
|
|
205
|
+
return String(line.pages_total);
|
|
206
|
+
}
|
|
207
|
+
return `${String(line.pages_total)} (${String(line.pages_content)}+${String(line.pages_theme_template)})`;
|
|
208
|
+
}
|
|
209
|
+
//# sourceMappingURL=sites-overview.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sites-overview.js","sourceRoot":"","sources":["../../../src/sites/tools/sites-overview.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,47 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* W7 — `yootheme_builder_sites_test` L1 tool.
|
|
3
|
-
*
|
|
4
|
-
* Targeted connectivity probe for ONE site_id: runs `/health` (no auth
|
|
5
|
-
* required) + `/etag` (auth required) in parallel and returns a
|
|
6
|
-
* structured `{plugin_reachable, bearer_valid, platform, ...}` block.
|
|
7
|
-
*
|
|
8
|
-
* Why `site_id` is REQUIRED here (not optional):
|
|
9
|
-
* - Every other tool in the registry treats `site_id` as an optional
|
|
10
|
-
* selector that falls back to the default. `sites_test` is the
|
|
11
|
-
* exception: its raison d'être is to verify ONE specific id, so the
|
|
12
|
-
* schema upgrades from `.optional()` to required. The W5
|
|
13
|
-
* SITE_ID_SCHEMA pin-test in `tests/tools/site-id-schema.test.ts`
|
|
14
|
-
* explicitly skips this tool from its "every tool's site_id is
|
|
15
|
-
* optional" loop — see the SITES_TEST_EXEMPT_FROM_OPTIONAL set there.
|
|
16
|
-
*
|
|
17
|
-
* Why the result wraps `withSiteMeta`:
|
|
18
|
-
* - Once `pool.resolve(site_id)` succeeds we DO have a resolved-site
|
|
19
|
-
* descriptor, so the text-prefix `[<label> @ <host>] ` is the same
|
|
20
|
-
* site-awareness signal a Maria-class user already sees on every
|
|
21
|
-
* other tool. The W6.2 wrapper handles both green AND red results
|
|
22
|
-
* uniformly (it just stamps; no behaviour difference).
|
|
23
|
-
*
|
|
24
|
-
* Failure modes mapped:
|
|
25
|
-
* - `UnknownSiteError` → structured error `code: 'unknown_site'` with
|
|
26
|
-
* `available[]` hint (via `resolveSiteOrError`).
|
|
27
|
-
* - `NoDefaultSiteError` → cannot fire here because site_id is required
|
|
28
|
-
* and validated by Zod before the handler runs; left in the helper
|
|
29
|
-
* for defense-in-depth.
|
|
30
|
-
* - `/health` rejects → `plugin_reachable: false` + error message.
|
|
31
|
-
* - `/etag` 401/403 → `plugin_reachable: true` + `bearer_valid: false`.
|
|
32
|
-
* - `/etag` other reject → `plugin_reachable: true` + `bearer_valid:
|
|
33
|
-
* false` + raw error.
|
|
34
|
-
*
|
|
35
|
-
* @license MIT
|
|
36
|
-
*/
|
|
37
|
-
import { type AnyToolDefinition } from '../../tools/tool-builder.js';
|
|
1
|
+
import { type ServedToolDefinition } from '../../tools/tool-builder.js';
|
|
38
2
|
import type { ClientPool } from '../client-pool.js';
|
|
39
|
-
|
|
40
|
-
* Build the W7 `yootheme_builder_sites_test` tool.
|
|
41
|
-
*
|
|
42
|
-
* Signature accepts the {@link ClientPool} directly (no separate
|
|
43
|
-
* registry param) — `pool.resolve(site_id)` is the single source of
|
|
44
|
-
* truth and carries the registry inside.
|
|
45
|
-
*/
|
|
46
|
-
export declare function buildSitesTestTool(pool: ClientPool): AnyToolDefinition;
|
|
3
|
+
export declare function buildSitesTestTool(pool: ClientPool): ServedToolDefinition;
|
|
47
4
|
//# sourceMappingURL=sites-test.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sites-test.d.ts","sourceRoot":"","sources":["../../../src/sites/tools/sites-test.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sites-test.d.ts","sourceRoot":"","sources":["../../../src/sites/tools/sites-test.ts"],"names":[],"mappings":"AA2CA,OAAO,EAKH,KAAK,oBAAoB,EAC5B,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAkCpD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,UAAU,GAAG,oBAAoB,CA0DzE"}
|
|
@@ -1,39 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* W7 — `yootheme_builder_sites_test` L1 tool.
|
|
3
|
-
*
|
|
4
|
-
* Targeted connectivity probe for ONE site_id: runs `/health` (no auth
|
|
5
|
-
* required) + `/etag` (auth required) in parallel and returns a
|
|
6
|
-
* structured `{plugin_reachable, bearer_valid, platform, ...}` block.
|
|
7
|
-
*
|
|
8
|
-
* Why `site_id` is REQUIRED here (not optional):
|
|
9
|
-
* - Every other tool in the registry treats `site_id` as an optional
|
|
10
|
-
* selector that falls back to the default. `sites_test` is the
|
|
11
|
-
* exception: its raison d'être is to verify ONE specific id, so the
|
|
12
|
-
* schema upgrades from `.optional()` to required. The W5
|
|
13
|
-
* SITE_ID_SCHEMA pin-test in `tests/tools/site-id-schema.test.ts`
|
|
14
|
-
* explicitly skips this tool from its "every tool's site_id is
|
|
15
|
-
* optional" loop — see the SITES_TEST_EXEMPT_FROM_OPTIONAL set there.
|
|
16
|
-
*
|
|
17
|
-
* Why the result wraps `withSiteMeta`:
|
|
18
|
-
* - Once `pool.resolve(site_id)` succeeds we DO have a resolved-site
|
|
19
|
-
* descriptor, so the text-prefix `[<label> @ <host>] ` is the same
|
|
20
|
-
* site-awareness signal a Maria-class user already sees on every
|
|
21
|
-
* other tool. The W6.2 wrapper handles both green AND red results
|
|
22
|
-
* uniformly (it just stamps; no behaviour difference).
|
|
23
|
-
*
|
|
24
|
-
* Failure modes mapped:
|
|
25
|
-
* - `UnknownSiteError` → structured error `code: 'unknown_site'` with
|
|
26
|
-
* `available[]` hint (via `resolveSiteOrError`).
|
|
27
|
-
* - `NoDefaultSiteError` → cannot fire here because site_id is required
|
|
28
|
-
* and validated by Zod before the handler runs; left in the helper
|
|
29
|
-
* for defense-in-depth.
|
|
30
|
-
* - `/health` rejects → `plugin_reachable: false` + error message.
|
|
31
|
-
* - `/etag` 401/403 → `plugin_reachable: true` + `bearer_valid: false`.
|
|
32
|
-
* - `/etag` other reject → `plugin_reachable: true` + `bearer_valid:
|
|
33
|
-
* false` + raw error.
|
|
34
|
-
*
|
|
35
|
-
* @license MIT
|
|
36
|
-
*/
|
|
37
1
|
import { detailResult } from '@getimo/mcp-toolkit';
|
|
38
2
|
import { z } from 'zod';
|
|
39
3
|
import { resolveSiteOrError, } from '../../tools/pool-resolve-helper.js';
|
|
@@ -50,13 +14,6 @@ const SITES_TEST_OUTPUT_SCHEMA = z.object({
|
|
|
50
14
|
bearer_error: z.string().optional(),
|
|
51
15
|
summary: z.string(),
|
|
52
16
|
});
|
|
53
|
-
/**
|
|
54
|
-
* Build the W7 `yootheme_builder_sites_test` tool.
|
|
55
|
-
*
|
|
56
|
-
* Signature accepts the {@link ClientPool} directly (no separate
|
|
57
|
-
* registry param) — `pool.resolve(site_id)` is the single source of
|
|
58
|
-
* truth and carries the registry inside.
|
|
59
|
-
*/
|
|
60
17
|
export function buildSitesTestTool(pool) {
|
|
61
18
|
return defineTool({
|
|
62
19
|
name: 'yootheme_builder_sites_test',
|
|
@@ -79,11 +36,6 @@ export function buildSitesTestTool(pool) {
|
|
|
79
36
|
if (!r.ok)
|
|
80
37
|
return r.error;
|
|
81
38
|
const { client: siteClient, site } = r;
|
|
82
|
-
// W12-R1.2: the parallel /health + /etag probe lives in
|
|
83
|
-
// sites/probe.ts so MCP-tool + CLI surfaces stay byte-for-byte
|
|
84
|
-
// in sync. The handler here only maps the structured probe
|
|
85
|
-
// result into the toolkit detail-card envelope and stamps
|
|
86
|
-
// site-awareness via withSiteMeta.
|
|
87
39
|
const probe = await probeSite(siteClient);
|
|
88
40
|
const checks = {
|
|
89
41
|
site_id: site.id,
|
|
@@ -108,13 +60,6 @@ export function buildSitesTestTool(pool) {
|
|
|
108
60
|
},
|
|
109
61
|
});
|
|
110
62
|
}
|
|
111
|
-
/**
|
|
112
|
-
* Render a 2-group detail-card body from the structured `checks`. Group
|
|
113
|
-
* 1 = identity (site_id/url/platform), Group 2 = probe results
|
|
114
|
-
* (plugin_reachable + bearer_valid + etag_received + summary). Keeps the
|
|
115
|
-
* shape stable across green / partial / red so MCP-host Detail-Card
|
|
116
|
-
* renderers don't need to branch.
|
|
117
|
-
*/
|
|
118
63
|
function buildTestDetail(checks) {
|
|
119
64
|
const identityEntries = [
|
|
120
65
|
{ key: 'site_id', label: 'Site ID', value: checks.site_id, format: 'badge' },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sites-test.js","sourceRoot":"","sources":["../../../src/sites/tools/sites-test.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sites-test.js","sourceRoot":"","sources":["../../../src/sites/tools/sites-test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,47 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* Phase 3 — `yootheme_builder_use_site` L1 tool.
|
|
3
|
-
*
|
|
4
|
-
* Runtime active-site SWITCH. The multi-site analogue of api-mapper's
|
|
5
|
-
* `apimapper_use_profile`: it changes which configured site subsequent
|
|
6
|
-
* tool calls target by default, then (unless `probe: false`) verifies
|
|
7
|
-
* the new site is reachable.
|
|
8
|
-
*
|
|
9
|
-
* Why a tool (and not just the `site_id` param on every call):
|
|
10
|
-
* - Maria-the-Claude-Desktop-user works in long conversations against
|
|
11
|
-
* ONE client site at a time. Re-passing `site_id` on every call is
|
|
12
|
-
* error-prone. `sites_list` + `use_site` mirror the
|
|
13
|
-
* `list_profiles` + `use_profile` flow she already knows from
|
|
14
|
-
* api-mapper: discover, switch once, then work.
|
|
15
|
-
*
|
|
16
|
-
* How it reuses the existing engine (NO new multi-site machinery):
|
|
17
|
-
* - The {@link SiteRegistry} stays immutable; the switch moves the
|
|
18
|
-
* {@link ClientPool}'s in-memory active-site override
|
|
19
|
-
* (`setActiveSite`). `resolve(undefined)` consults that override
|
|
20
|
-
* before the registry default. Unknown id → `UnknownSiteError`,
|
|
21
|
-
* surfaced as a structured `code: 'unknown_site'` error via the
|
|
22
|
-
* shared `resolveSiteOrError` helper (so the wording matches every
|
|
23
|
-
* other site-bound tool). The pointer never moves on a bad switch.
|
|
24
|
-
* - The reachability check reuses {@link probeSite} (/health + /etag),
|
|
25
|
-
* the SAME probe `sites_test` and the CLI run.
|
|
26
|
-
*
|
|
27
|
-
* Soft-vs-hard contract (mirrors `apimapper_use_profile`):
|
|
28
|
-
* - An UNKNOWN site is a HARD error (pointer unchanged).
|
|
29
|
-
* - A reachable-but-degraded site (probe red) is a SOFT warning: the
|
|
30
|
-
* activation still succeeds and the pointer moves, because the user
|
|
31
|
-
* explicitly asked to switch — the probe is diagnostic, not a gate.
|
|
32
|
-
* `probe: false` skips the network round-trip entirely (offline
|
|
33
|
-
* activation).
|
|
34
|
-
*
|
|
35
|
-
* @license MIT
|
|
36
|
-
*/
|
|
37
|
-
import { type AnyToolDefinition } from '../../tools/tool-builder.js';
|
|
1
|
+
import { type ServedToolDefinition } from '../../tools/tool-builder.js';
|
|
38
2
|
import type { ClientPool } from '../client-pool.js';
|
|
39
|
-
|
|
40
|
-
* Build the Phase 3 `yootheme_builder_use_site` tool.
|
|
41
|
-
*
|
|
42
|
-
* Signature accepts the {@link ClientPool} directly — the switch lives
|
|
43
|
-
* on the pool (`setActiveSite`), and `resolveSiteOrError(pool, site_id)`
|
|
44
|
-
* validates the id + yields the `{client, site}` bundle for the probe.
|
|
45
|
-
*/
|
|
46
|
-
export declare function buildUseSiteTool(pool: ClientPool): AnyToolDefinition;
|
|
3
|
+
export declare function buildUseSiteTool(pool: ClientPool): ServedToolDefinition;
|
|
47
4
|
//# sourceMappingURL=use-site.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-site.d.ts","sourceRoot":"","sources":["../../../src/sites/tools/use-site.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"use-site.d.ts","sourceRoot":"","sources":["../../../src/sites/tools/use-site.ts"],"names":[],"mappings":"AAwCA,OAAO,EAKH,KAAK,oBAAoB,EAC5B,MAAM,6BAA6B,CAAC;AAIrC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AA+CpD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,UAAU,GAAG,oBAAoB,CA2HvE"}
|
|
@@ -1,43 +1,9 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Phase 3 — `yootheme_builder_use_site` L1 tool.
|
|
3
|
-
*
|
|
4
|
-
* Runtime active-site SWITCH. The multi-site analogue of api-mapper's
|
|
5
|
-
* `apimapper_use_profile`: it changes which configured site subsequent
|
|
6
|
-
* tool calls target by default, then (unless `probe: false`) verifies
|
|
7
|
-
* the new site is reachable.
|
|
8
|
-
*
|
|
9
|
-
* Why a tool (and not just the `site_id` param on every call):
|
|
10
|
-
* - Maria-the-Claude-Desktop-user works in long conversations against
|
|
11
|
-
* ONE client site at a time. Re-passing `site_id` on every call is
|
|
12
|
-
* error-prone. `sites_list` + `use_site` mirror the
|
|
13
|
-
* `list_profiles` + `use_profile` flow she already knows from
|
|
14
|
-
* api-mapper: discover, switch once, then work.
|
|
15
|
-
*
|
|
16
|
-
* How it reuses the existing engine (NO new multi-site machinery):
|
|
17
|
-
* - The {@link SiteRegistry} stays immutable; the switch moves the
|
|
18
|
-
* {@link ClientPool}'s in-memory active-site override
|
|
19
|
-
* (`setActiveSite`). `resolve(undefined)` consults that override
|
|
20
|
-
* before the registry default. Unknown id → `UnknownSiteError`,
|
|
21
|
-
* surfaced as a structured `code: 'unknown_site'` error via the
|
|
22
|
-
* shared `resolveSiteOrError` helper (so the wording matches every
|
|
23
|
-
* other site-bound tool). The pointer never moves on a bad switch.
|
|
24
|
-
* - The reachability check reuses {@link probeSite} (/health + /etag),
|
|
25
|
-
* the SAME probe `sites_test` and the CLI run.
|
|
26
|
-
*
|
|
27
|
-
* Soft-vs-hard contract (mirrors `apimapper_use_profile`):
|
|
28
|
-
* - An UNKNOWN site is a HARD error (pointer unchanged).
|
|
29
|
-
* - A reachable-but-degraded site (probe red) is a SOFT warning: the
|
|
30
|
-
* activation still succeeds and the pointer moves, because the user
|
|
31
|
-
* explicitly asked to switch — the probe is diagnostic, not a gate.
|
|
32
|
-
* `probe: false` skips the network round-trip entirely (offline
|
|
33
|
-
* activation).
|
|
34
|
-
*
|
|
35
|
-
* @license MIT
|
|
36
|
-
*/
|
|
37
1
|
import { detailResult } from '@getimo/mcp-toolkit';
|
|
38
2
|
import { z } from 'zod';
|
|
39
3
|
import { defineTool, mutating, structuredResult, withSiteMeta, } from '../../tools/tool-builder.js';
|
|
40
4
|
import { resolveSiteOrError } from '../../tools/pool-resolve-helper.js';
|
|
5
|
+
import { pluginFloorError, versionSkewNotice } from '../../compat-floor.js';
|
|
6
|
+
import { PACKAGE_VERSION } from '../../package-version.js';
|
|
41
7
|
import { probeSite } from '../probe.js';
|
|
42
8
|
const USE_SITE_OUTPUT_SCHEMA = z.object({
|
|
43
9
|
activated: z.boolean(),
|
|
@@ -56,42 +22,19 @@ const USE_SITE_OUTPUT_SCHEMA = z.object({
|
|
|
56
22
|
.optional(),
|
|
57
23
|
note: z.string().optional(),
|
|
58
24
|
warnings: z.array(z.string()).optional(),
|
|
59
|
-
// F178: every switch echoes the process-wide-default caveat so the
|
|
60
|
-
// agent is reminded that concurrent clients of the same stdio server
|
|
61
|
-
// share this pointer.
|
|
62
25
|
concurrency_warning: z.string().optional(),
|
|
63
26
|
});
|
|
64
|
-
/**
|
|
65
|
-
* F178 — the constant caveat echoed on every `use_site` switch. The
|
|
66
|
-
* active-site default lives in process memory (`ClientPool.activeOverride`)
|
|
67
|
-
* and a single stdio server process is shared by every MCP client that
|
|
68
|
-
* connected to it. So when client A switches, client B's NEXT call that
|
|
69
|
-
* omits `site_id` silently inherits A's choice. The only isolation
|
|
70
|
-
* guarantee is passing `site_id` explicitly per call.
|
|
71
|
-
*/
|
|
72
27
|
const CONCURRENCY_WARNING = 'This sets a PROCESS-WIDE default: every concurrent client sharing this '
|
|
73
28
|
+ 'MCP server process inherits it on calls that omit `site_id`. For '
|
|
74
29
|
+ 'isolation between parallel agents, pass `site_id` explicitly on each '
|
|
75
30
|
+ 'tool call instead of relying on this shared switch.';
|
|
76
|
-
/**
|
|
77
|
-
* Build the Phase 3 `yootheme_builder_use_site` tool.
|
|
78
|
-
*
|
|
79
|
-
* Signature accepts the {@link ClientPool} directly — the switch lives
|
|
80
|
-
* on the pool (`setActiveSite`), and `resolveSiteOrError(pool, site_id)`
|
|
81
|
-
* validates the id + yields the `{client, site}` bundle for the probe.
|
|
82
|
-
*/
|
|
83
31
|
export function buildUseSiteTool(pool) {
|
|
84
32
|
return defineTool({
|
|
85
33
|
name: 'yootheme_builder_use_site',
|
|
86
|
-
description: 'Switch the ACTIVE site for this
|
|
87
|
-
'
|
|
88
|
-
'
|
|
89
|
-
'
|
|
90
|
-
'Runs a /health + /etag probe by default; pass `probe: false` to switch ' +
|
|
91
|
-
'offline. A degraded site is a soft warning (the switch still happens). ' +
|
|
92
|
-
'`site_id` is REQUIRED. Keywords: switch/change/set active/target site, ' +
|
|
93
|
-
'select installation, use profile. Use yootheme_builder_sites_list first ' +
|
|
94
|
-
'to find IDs.',
|
|
34
|
+
description: 'Switch the ACTIVE site for this session — subsequent calls that omit `site_id` ' +
|
|
35
|
+
'target it. NOTE: this default is PROCESS-WIDE — concurrent clients sharing this ' +
|
|
36
|
+
'MCP server inherit it; pass `site_id` per call for isolation. Runs a /health + ' +
|
|
37
|
+
'/etag probe by default; `probe:false` switches offline. `site_id` is REQUIRED.',
|
|
95
38
|
inputSchema: {
|
|
96
39
|
site_id: z
|
|
97
40
|
.string()
|
|
@@ -110,20 +53,11 @@ export function buildUseSiteTool(pool) {
|
|
|
110
53
|
outputSchema: USE_SITE_OUTPUT_SCHEMA,
|
|
111
54
|
annotations: mutating('Sites — Switch active'),
|
|
112
55
|
handler: async ({ site_id, probe = true }) => {
|
|
113
|
-
// 1. Validate the id through the shared resolver. Unknown /
|
|
114
|
-
// no-default errors come back as structured ToolResults
|
|
115
|
-
// (HARD error). The pointer has NOT moved yet, so a bad id
|
|
116
|
-
// leaves the session on its previous active site.
|
|
117
56
|
const r = await resolveSiteOrError(pool, site_id);
|
|
118
57
|
if (!r.ok)
|
|
119
58
|
return r.error;
|
|
120
59
|
const { client, site } = r;
|
|
121
|
-
// 2. Move the in-memory override. `setActiveSite` re-checks
|
|
122
|
-
// the id exists (defense-in-depth) and throws
|
|
123
|
-
// UnknownSiteError otherwise — but step 1 already
|
|
124
|
-
// guaranteed it, so this is a no-throw in practice.
|
|
125
60
|
pool.setActiveSite(site.id);
|
|
126
|
-
// 3. Offline path — skip the probe entirely.
|
|
127
61
|
if (!probe) {
|
|
128
62
|
const payload = {
|
|
129
63
|
activated: true,
|
|
@@ -137,8 +71,6 @@ export function buildUseSiteTool(pool) {
|
|
|
137
71
|
const detail = detailResult({ ...buildUseSiteDetail(payload), includeMeta: false });
|
|
138
72
|
return withSiteMeta(structuredResult(detail, payload), site);
|
|
139
73
|
}
|
|
140
|
-
// 4. Probe the newly-active site. A failing probe is a SOFT
|
|
141
|
-
// warning — the switch already happened in step 2.
|
|
142
74
|
const probeResult = await probeSite(client);
|
|
143
75
|
const warnings = [];
|
|
144
76
|
if (!(probeResult.plugin_reachable && probeResult.bearer_valid)) {
|
|
@@ -146,6 +78,19 @@ export function buildUseSiteTool(pool) {
|
|
|
146
78
|
`green: ${probeResult.summary} The active site still points here — ` +
|
|
147
79
|
'run yootheme_builder_sites_test for a detailed diagnosis.');
|
|
148
80
|
}
|
|
81
|
+
if (probeResult.plugin_version !== undefined) {
|
|
82
|
+
const pairing = { plugin: probeResult.plugin_version, client: PACKAGE_VERSION };
|
|
83
|
+
const blocking = pluginFloorError(pairing);
|
|
84
|
+
if (blocking !== null) {
|
|
85
|
+
warnings.push(`Switched to "${site.id}". ${blocking.message}`);
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
const skew = versionSkewNotice(pairing);
|
|
89
|
+
if (skew !== null) {
|
|
90
|
+
warnings.push(`Switched to "${site.id}". ${skew.message}`);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
149
94
|
const payload = {
|
|
150
95
|
activated: true,
|
|
151
96
|
active_site_id: site.id,
|
|
@@ -171,10 +116,6 @@ export function buildUseSiteTool(pool) {
|
|
|
171
116
|
},
|
|
172
117
|
});
|
|
173
118
|
}
|
|
174
|
-
/**
|
|
175
|
-
* Render a detail-card body for the switch result. Group 1 = the active
|
|
176
|
-
* site, Group 2 = the probe outcome (omitted when probe was skipped).
|
|
177
|
-
*/
|
|
178
119
|
function buildUseSiteDetail(payload) {
|
|
179
120
|
const activeEntries = [
|
|
180
121
|
{ key: 'active_site_id', label: 'Active site', value: payload.active_site_id, format: 'badge' },
|
|
@@ -198,6 +139,16 @@ function buildUseSiteDetail(payload) {
|
|
|
198
139
|
entries: [{ key: 'note', label: 'Note', value: payload.note }],
|
|
199
140
|
});
|
|
200
141
|
}
|
|
142
|
+
if (payload.warnings !== undefined && payload.warnings.length > 0) {
|
|
143
|
+
groups.push({
|
|
144
|
+
label: 'Warnings',
|
|
145
|
+
entries: payload.warnings.map((w, i) => ({
|
|
146
|
+
key: `warning_${i}`,
|
|
147
|
+
label: `Warning ${i + 1}`,
|
|
148
|
+
value: w,
|
|
149
|
+
})),
|
|
150
|
+
});
|
|
151
|
+
}
|
|
201
152
|
return { title: 'YT Builder MCP — Switch Active Site', groups };
|
|
202
153
|
}
|
|
203
154
|
//# sourceMappingURL=use-site.js.map
|