@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
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetch-public-url.d.ts","sourceRoot":"","sources":["../../../src/sites/tools/fetch-public-url.ts"],"names":[],"mappings":"AAkDA,OAAO,EAKH,KAAK,oBAAoB,EAE5B,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAuFpD,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,UAAU,GAAG,oBAAoB,CA2N9E"}
|
|
@@ -0,0 +1,231 @@
|
|
|
1
|
+
import { detailResult } from '@getimo/mcp-toolkit';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { DEFAULT_EXCERPT_CHARS, MAX_EXCERPT_CHARS, fetchPublicPage, } from '../../net/public-fetch.js';
|
|
4
|
+
import { resolveSiteOrError } from '../../tools/pool-resolve-helper.js';
|
|
5
|
+
import { SITE_ID_SCHEMA } from '../../tools/shared-schemas.js';
|
|
6
|
+
import { defineTool, readOnly, structuredResult, withSiteMeta, } from '../../tools/tool-builder.js';
|
|
7
|
+
const OUTPUT_SCHEMA = z.object({
|
|
8
|
+
site_id: z.string(),
|
|
9
|
+
site_origin: z.string().nullable(),
|
|
10
|
+
requested_url: z.string(),
|
|
11
|
+
fetched_as: z.literal('anonymous_visitor'),
|
|
12
|
+
delivered: z.boolean(),
|
|
13
|
+
http_status: z.number().optional(),
|
|
14
|
+
http_ok: z.boolean().optional(),
|
|
15
|
+
content_type: z.string().nullable().optional(),
|
|
16
|
+
page_title: z.string().nullable().optional(),
|
|
17
|
+
html_bytes: z.number().optional(),
|
|
18
|
+
html_complete: z.boolean().optional(),
|
|
19
|
+
excerpt: z.string().optional(),
|
|
20
|
+
excerpt_chars: z.number().optional(),
|
|
21
|
+
excerpt_from: z.enum(['match', 'start']).optional(),
|
|
22
|
+
excerpt_is_partial: z.boolean().optional(),
|
|
23
|
+
expect: z.string().nullable().optional(),
|
|
24
|
+
expect_found: z.boolean().nullable().optional(),
|
|
25
|
+
expect_occurrences: z.number().nullable().optional(),
|
|
26
|
+
cache_verdict: z.enum(['hit', 'miss', 'bypass', 'unknown']).optional(),
|
|
27
|
+
cache_headers: z.record(z.string(), z.string()).optional(),
|
|
28
|
+
cache_note: z.string().optional(),
|
|
29
|
+
elapsed_ms: z.number().optional(),
|
|
30
|
+
code: z.string().optional(),
|
|
31
|
+
error: z.string().optional(),
|
|
32
|
+
redirect_target: z.string().optional(),
|
|
33
|
+
verdict: z.string(),
|
|
34
|
+
});
|
|
35
|
+
function verdictLine(args) {
|
|
36
|
+
if (!args.ok) {
|
|
37
|
+
return `An anonymous visitor gets HTTP ${String(args.status)} — this page is NOT being served to the public.`;
|
|
38
|
+
}
|
|
39
|
+
const cacheSuffix = args.cacheVerdict === 'hit'
|
|
40
|
+
? ' A cache served this answer, so it may predate the change — purge and re-check.'
|
|
41
|
+
: '';
|
|
42
|
+
if (args.expect === null) {
|
|
43
|
+
return `An anonymous visitor gets HTTP 200.${cacheSuffix} No expected text was given, so nothing about the CONTENT was checked.`;
|
|
44
|
+
}
|
|
45
|
+
return args.expectFound === true
|
|
46
|
+
? `An anonymous visitor gets HTTP 200 and the expected text IS in the delivered HTML.${cacheSuffix}`
|
|
47
|
+
: `An anonymous visitor gets HTTP 200 but the expected text is NOT in the delivered HTML — the change has not reached visitors.${cacheSuffix}`;
|
|
48
|
+
}
|
|
49
|
+
function detailFor(title, groups) {
|
|
50
|
+
return { title, groups };
|
|
51
|
+
}
|
|
52
|
+
export function buildFetchPublicUrlTool(pool) {
|
|
53
|
+
return defineTool({
|
|
54
|
+
name: 'yootheme_builder_fetch_public_url',
|
|
55
|
+
description: 'The independent proof a publish reached visitors: fetches a page of the CONFIGURED ' +
|
|
56
|
+
'site over the public network as an ANONYMOUS visitor — no login/cookies/Bearer — and ' +
|
|
57
|
+
'reports http_status, page_title, an EXCERPT (never the whole document), html_bytes, ' +
|
|
58
|
+
'and whether a cache served it (cache_verdict; "unknown" means no header said, NOT ' +
|
|
59
|
+
'that nothing cached, and no re-fetch settles it — purge the cache instead). With ' +
|
|
60
|
+
'`expect` it answers expect_found true/false. Refuses any address outside the ' +
|
|
61
|
+
'configured site and never follows a redirect off it — an unrestricted fetcher is an ' +
|
|
62
|
+
'open proxy. Get the url from `frontend_url` (pages_list / page_publish). Searches the ' +
|
|
63
|
+
'WHOLE page (header, menu, footer too); a hit is no proof of THIS layout. ' +
|
|
64
|
+
'render_preview renders ONLY that layout tree, never the theme wrapper.',
|
|
65
|
+
inputSchema: {
|
|
66
|
+
site_id: SITE_ID_SCHEMA,
|
|
67
|
+
url: z
|
|
68
|
+
.string()
|
|
69
|
+
.min(1)
|
|
70
|
+
.describe('Absolute public URL to fetch (e.g. "https://example.com/about/"). MUST be on ' +
|
|
71
|
+
'the configured site — any other origin is refused. Take it verbatim from ' +
|
|
72
|
+
'`frontend_url` (pages_list, pages_create, page_publish).'),
|
|
73
|
+
expect: z
|
|
74
|
+
.string()
|
|
75
|
+
.min(1)
|
|
76
|
+
.optional()
|
|
77
|
+
.describe('Optional text the delivered HTML must contain. Matched CASE-SENSITIVELY ' +
|
|
78
|
+
'against the RAW, un-decoded markup — pass raw HTML, not escaped text ' +
|
|
79
|
+
'(search for "<h1", not "<h1"). Adds expect_found + expect_occurrences, ' +
|
|
80
|
+
'and centres the excerpt on the first hit.'),
|
|
81
|
+
max_excerpt_chars: z
|
|
82
|
+
.number()
|
|
83
|
+
.int()
|
|
84
|
+
.min(100)
|
|
85
|
+
.max(MAX_EXCERPT_CHARS)
|
|
86
|
+
.optional()
|
|
87
|
+
.describe(`Excerpt size in characters (100-${String(MAX_EXCERPT_CHARS)}, default ` +
|
|
88
|
+
`${String(DEFAULT_EXCERPT_CHARS)}). The full delivered size is always ` +
|
|
89
|
+
'reported as html_bytes; a page runs well over 100 000 bytes, so the ' +
|
|
90
|
+
'document itself is never returned.'),
|
|
91
|
+
},
|
|
92
|
+
outputSchema: OUTPUT_SCHEMA,
|
|
93
|
+
annotations: { ...readOnly('Fetch the public page'), openWorldHint: true },
|
|
94
|
+
handler: async ({ site_id, url, expect, max_excerpt_chars }) => {
|
|
95
|
+
const r = await resolveSiteOrError(pool, site_id);
|
|
96
|
+
if (!r.ok)
|
|
97
|
+
return r.error;
|
|
98
|
+
const { site } = r;
|
|
99
|
+
const result = await fetchPublicPage({
|
|
100
|
+
requestedUrl: url,
|
|
101
|
+
configuredSiteUrl: site.url,
|
|
102
|
+
expect,
|
|
103
|
+
excerptChars: max_excerpt_chars,
|
|
104
|
+
});
|
|
105
|
+
if (result.outcome === 'refused') {
|
|
106
|
+
const verdict = `Refused before any request was sent: ${result.message}`;
|
|
107
|
+
return withSiteMeta({
|
|
108
|
+
...structuredResult(detailResult({
|
|
109
|
+
...detailFor('Public page — address refused', [
|
|
110
|
+
{
|
|
111
|
+
label: 'Refusal',
|
|
112
|
+
entries: [
|
|
113
|
+
{ key: 'requested_url', label: 'Requested URL', value: url, format: 'code' },
|
|
114
|
+
{ key: 'site_origin', label: 'Allowed origin', value: result.siteOrigin ?? '(unparseable)', format: 'code' },
|
|
115
|
+
{ key: 'code', label: 'Reason', value: result.code, format: 'badge' },
|
|
116
|
+
{ key: 'error', label: 'Detail', value: result.message },
|
|
117
|
+
],
|
|
118
|
+
},
|
|
119
|
+
]),
|
|
120
|
+
includeMeta: false,
|
|
121
|
+
}), {
|
|
122
|
+
site_id: site.id,
|
|
123
|
+
site_origin: result.siteOrigin,
|
|
124
|
+
requested_url: url,
|
|
125
|
+
fetched_as: 'anonymous_visitor',
|
|
126
|
+
delivered: false,
|
|
127
|
+
code: result.code,
|
|
128
|
+
error: result.message,
|
|
129
|
+
verdict,
|
|
130
|
+
}),
|
|
131
|
+
isError: true,
|
|
132
|
+
}, site);
|
|
133
|
+
}
|
|
134
|
+
if (result.outcome === 'failed') {
|
|
135
|
+
const verdict = `No answer was obtained: ${result.message}`;
|
|
136
|
+
return withSiteMeta({
|
|
137
|
+
...structuredResult(detailResult({
|
|
138
|
+
...detailFor('Public page — not fetched', [
|
|
139
|
+
{
|
|
140
|
+
label: 'Failure',
|
|
141
|
+
entries: [
|
|
142
|
+
{ key: 'requested_url', label: 'Requested URL', value: url, format: 'code' },
|
|
143
|
+
{ key: 'code', label: 'Reason', value: result.code, format: 'badge' },
|
|
144
|
+
{ key: 'error', label: 'Detail', value: result.message },
|
|
145
|
+
],
|
|
146
|
+
},
|
|
147
|
+
]),
|
|
148
|
+
includeMeta: false,
|
|
149
|
+
}), {
|
|
150
|
+
site_id: site.id,
|
|
151
|
+
site_origin: result.siteOrigin,
|
|
152
|
+
requested_url: url,
|
|
153
|
+
fetched_as: 'anonymous_visitor',
|
|
154
|
+
delivered: false,
|
|
155
|
+
code: result.code,
|
|
156
|
+
error: result.message,
|
|
157
|
+
...(result.redirectTarget !== undefined ? { redirect_target: result.redirectTarget } : {}),
|
|
158
|
+
verdict,
|
|
159
|
+
}),
|
|
160
|
+
isError: true,
|
|
161
|
+
}, site);
|
|
162
|
+
}
|
|
163
|
+
const verdict = verdictLine({
|
|
164
|
+
status: result.httpStatus,
|
|
165
|
+
ok: result.ok,
|
|
166
|
+
expect: expect ?? null,
|
|
167
|
+
expectFound: result.expectFound,
|
|
168
|
+
cacheVerdict: result.cache.verdict,
|
|
169
|
+
});
|
|
170
|
+
const structured = {
|
|
171
|
+
site_id: site.id,
|
|
172
|
+
site_origin: result.siteOrigin,
|
|
173
|
+
requested_url: url,
|
|
174
|
+
fetched_as: 'anonymous_visitor',
|
|
175
|
+
delivered: true,
|
|
176
|
+
http_status: result.httpStatus,
|
|
177
|
+
http_ok: result.ok,
|
|
178
|
+
content_type: result.contentType,
|
|
179
|
+
page_title: result.title,
|
|
180
|
+
html_bytes: result.htmlBytes,
|
|
181
|
+
html_complete: result.bodyComplete,
|
|
182
|
+
excerpt: result.excerpt.text,
|
|
183
|
+
excerpt_chars: result.excerpt.text.length,
|
|
184
|
+
excerpt_from: result.excerpt.from,
|
|
185
|
+
excerpt_is_partial: result.excerpt.truncated,
|
|
186
|
+
expect: expect ?? null,
|
|
187
|
+
expect_found: result.expectFound,
|
|
188
|
+
expect_occurrences: result.expectOccurrences,
|
|
189
|
+
cache_verdict: result.cache.verdict,
|
|
190
|
+
cache_headers: result.cache.headers,
|
|
191
|
+
cache_note: result.cache.note,
|
|
192
|
+
elapsed_ms: result.elapsedMs,
|
|
193
|
+
verdict,
|
|
194
|
+
};
|
|
195
|
+
const entries = [
|
|
196
|
+
{ key: 'verdict', label: 'Verdict', value: verdict },
|
|
197
|
+
{ key: 'http_status', label: 'HTTP status', value: result.httpStatus, format: 'badge' },
|
|
198
|
+
{ key: 'page_title', label: 'Page title', value: result.title ?? '(none)' },
|
|
199
|
+
{ key: 'html_bytes', label: 'Delivered bytes', value: result.htmlBytes },
|
|
200
|
+
{ key: 'cache_verdict', label: 'Cache', value: result.cache.verdict, format: 'badge' },
|
|
201
|
+
{ key: 'cache_note', label: 'Cache note', value: result.cache.note },
|
|
202
|
+
];
|
|
203
|
+
if (expect !== undefined) {
|
|
204
|
+
entries.push({
|
|
205
|
+
key: 'expect_found',
|
|
206
|
+
label: `Expected text found (${String(result.expectOccurrences ?? 0)}×)`,
|
|
207
|
+
value: result.expectFound === true,
|
|
208
|
+
format: 'boolean',
|
|
209
|
+
});
|
|
210
|
+
}
|
|
211
|
+
return withSiteMeta(structuredResult(detailResult({
|
|
212
|
+
...detailFor('Public page — as an anonymous visitor', [
|
|
213
|
+
{ label: 'Answer', entries },
|
|
214
|
+
{
|
|
215
|
+
label: 'Excerpt',
|
|
216
|
+
entries: [
|
|
217
|
+
{
|
|
218
|
+
key: 'excerpt',
|
|
219
|
+
label: `Excerpt (${result.excerpt.from}, ${String(result.excerpt.text.length)} chars${result.excerpt.truncated ? ', partial' : ''})`,
|
|
220
|
+
value: result.excerpt.text,
|
|
221
|
+
format: 'code',
|
|
222
|
+
},
|
|
223
|
+
],
|
|
224
|
+
},
|
|
225
|
+
]),
|
|
226
|
+
includeMeta: false,
|
|
227
|
+
}), structured), site);
|
|
228
|
+
},
|
|
229
|
+
});
|
|
230
|
+
}
|
|
231
|
+
//# sourceMappingURL=fetch-public-url.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetch-public-url.js","sourceRoot":"","sources":["../../../src/sites/tools/fetch-public-url.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,28 +1,4 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* W7 — sites/tools/ aggregator.
|
|
3
|
-
*
|
|
4
|
-
* Returns the two L1 platform-agnostic site-management tools:
|
|
5
|
-
* - `yootheme_builder_sites_list` (registry inspection — no REST)
|
|
6
|
-
* - `yootheme_builder_sites_test` (per-site connectivity probe)
|
|
7
|
-
*
|
|
8
|
-
* Wired into `buildAllTools(pool)` — the aggregator pulls the
|
|
9
|
-
* read-only `SiteRegistry` off the pool internally so callers thread
|
|
10
|
-
* only the pool through, never the registry separately.
|
|
11
|
-
*
|
|
12
|
-
* @license MIT
|
|
13
|
-
*/
|
|
14
1
|
import type { ClientPool } from '../client-pool.js';
|
|
15
|
-
import type {
|
|
16
|
-
|
|
17
|
-
* Build the W7 sites-management tool pair. The pool's read-only
|
|
18
|
-
* `registry` accessor feeds `buildSitesListTool` (which never resolves
|
|
19
|
-
* a bearer); the pool itself feeds `buildSitesTestTool` (which calls
|
|
20
|
-
* `pool.resolve(site_id)` to obtain a `RestClient`).
|
|
21
|
-
*
|
|
22
|
-
* W12-R1.3 (A1-L-01): single-arg signature — reading the registry off
|
|
23
|
-
* the pool inside this aggregator removes the only call-site that
|
|
24
|
-
* needed the pool's `registry` getter, so the getter can stay
|
|
25
|
-
* `@internal`.
|
|
26
|
-
*/
|
|
27
|
-
export declare function buildSitesTools(pool: ClientPool): readonly AnyToolDefinition[];
|
|
2
|
+
import type { ServedToolDefinition } from '../../tools/tool-builder.js';
|
|
3
|
+
export declare function buildSitesTools(pool: ClientPool): readonly ServedToolDefinition[];
|
|
28
4
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sites/tools/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sites/tools/index.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAmBxE,wBAAgB,eAAe,CAC3B,IAAI,EAAE,UAAU,GACjB,SAAS,oBAAoB,EAAE,CA4BjC"}
|
|
@@ -1,38 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
* W7 — sites/tools/ aggregator.
|
|
3
|
-
*
|
|
4
|
-
* Returns the two L1 platform-agnostic site-management tools:
|
|
5
|
-
* - `yootheme_builder_sites_list` (registry inspection — no REST)
|
|
6
|
-
* - `yootheme_builder_sites_test` (per-site connectivity probe)
|
|
7
|
-
*
|
|
8
|
-
* Wired into `buildAllTools(pool)` — the aggregator pulls the
|
|
9
|
-
* read-only `SiteRegistry` off the pool internally so callers thread
|
|
10
|
-
* only the pool through, never the registry separately.
|
|
11
|
-
*
|
|
12
|
-
* @license MIT
|
|
13
|
-
*/
|
|
1
|
+
import { buildFetchPublicUrlTool } from './fetch-public-url.js';
|
|
14
2
|
import { buildSitesListTool } from './sites-list.js';
|
|
3
|
+
import { buildSitesOverviewTool } from './sites-overview.js';
|
|
15
4
|
import { buildSitesTestTool } from './sites-test.js';
|
|
16
5
|
import { buildUseSiteTool } from './use-site.js';
|
|
17
|
-
/**
|
|
18
|
-
* Build the W7 sites-management tool pair. The pool's read-only
|
|
19
|
-
* `registry` accessor feeds `buildSitesListTool` (which never resolves
|
|
20
|
-
* a bearer); the pool itself feeds `buildSitesTestTool` (which calls
|
|
21
|
-
* `pool.resolve(site_id)` to obtain a `RestClient`).
|
|
22
|
-
*
|
|
23
|
-
* W12-R1.3 (A1-L-01): single-arg signature — reading the registry off
|
|
24
|
-
* the pool inside this aggregator removes the only call-site that
|
|
25
|
-
* needed the pool's `registry` getter, so the getter can stay
|
|
26
|
-
* `@internal`.
|
|
27
|
-
*/
|
|
28
6
|
export function buildSitesTools(pool) {
|
|
29
7
|
return [
|
|
30
|
-
buildSitesListTool(pool
|
|
8
|
+
buildSitesListTool(pool),
|
|
31
9
|
buildSitesTestTool(pool),
|
|
32
|
-
// Phase 3 — runtime active-site switch (mirrors api-mapper's
|
|
33
|
-
// `apimapper_use_profile`). Reuses the pool's in-memory active-
|
|
34
|
-
// site override; never rebuilds the multi-site engine.
|
|
35
10
|
buildUseSiteTool(pool),
|
|
11
|
+
buildSitesOverviewTool(pool),
|
|
12
|
+
buildFetchPublicUrlTool(pool),
|
|
36
13
|
];
|
|
37
14
|
}
|
|
38
15
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/sites/tools/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/sites/tools/index.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAajD,MAAM,UAAU,eAAe,CAC3B,IAAgB;IAEhB,OAAO;QACH,kBAAkB,CAAC,IAAI,CAAC;QACxB,kBAAkB,CAAC,IAAI,CAAC;QAIxB,gBAAgB,CAAC,IAAI,CAAC;QAKtB,sBAAsB,CAAC,IAAI,CAAC;QAc5B,uBAAuB,CAAC,IAAI,CAAC;KAChC,CAAC;AACN,CAAC"}
|
|
@@ -1,48 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
* Platform-agnostic registry inspection: lists the in-process
|
|
5
|
-
* {@link SiteRegistry} as a tabular result so an agent (or a Maria-class
|
|
6
|
-
* Claude-Desktop user) can discover which site_ids are wired into this
|
|
7
|
-
* MCP server WITHOUT a network round-trip.
|
|
8
|
-
*
|
|
9
|
-
* Why it does NOT call `pool.resolve()`:
|
|
10
|
-
* - The tool reads the registry verbatim and never touches bearers, the
|
|
11
|
-
* secret-resolver, or any HTTP endpoint. Resolving through the pool
|
|
12
|
-
* would force a default-site requirement that is exactly the
|
|
13
|
-
* bootstrap failure-mode the tool is meant to diagnose ("I added
|
|
14
|
-
* sites but forgot to mark a default"). For the same reason the
|
|
15
|
-
* handler intentionally skips `withSiteMeta` — there is no resolved
|
|
16
|
-
* site to stamp; instead we emit a `structuredContent._meta.tool_kind
|
|
17
|
-
* = 'registry'` marker so MCP hosts can route the result through a
|
|
18
|
-
* registry-aware UI if/when they grow one.
|
|
19
|
-
*
|
|
20
|
-
* Why `site_id` is exposed but unused:
|
|
21
|
-
* - The W5 SITE_ID_SCHEMA pin requires EVERY tool to expose the
|
|
22
|
-
* optional `site_id` field so legacy/scripted callers never trip a
|
|
23
|
-
* Zod parse on an extra-property. The W12-R1.3 DESCRIPTION_SUFFIX_EXEMPT
|
|
24
|
-
* list opts this tool out of the canonical description suffix
|
|
25
|
-
* because "operates on the default site" would imply per-row
|
|
26
|
-
* filtering that the handler does not perform.
|
|
27
|
-
*
|
|
28
|
-
* W12-R1.3 (A2-L4): `bearer_source` was previously projected into the
|
|
29
|
-
* output row + table column. Even though it carried only the literal
|
|
30
|
-
* `'plain'` / `'op'`, the `sites://current` resource already omits
|
|
31
|
-
* this field (see ADR rationale in server.ts) and the tool surface
|
|
32
|
-
* should match for cross-surface consistency. The field is dropped
|
|
33
|
-
* from both the structured row AND the table column.
|
|
34
|
-
*
|
|
35
|
-
* @license MIT
|
|
36
|
-
*/
|
|
37
|
-
import type { SiteRegistry } from '../registry.js';
|
|
38
|
-
import { type AnyToolDefinition } from '../../tools/tool-builder.js';
|
|
39
|
-
/**
|
|
40
|
-
* Build the W7 `yootheme_builder_sites_list` tool.
|
|
41
|
-
*
|
|
42
|
-
* Signature accepts the {@link SiteRegistry} directly — unlike other
|
|
43
|
-
* tool-builders, it does NOT need the {@link ClientPool} because it
|
|
44
|
-
* never resolves a site. Callers wire `buildSitesListTool(pool.registry)`
|
|
45
|
-
* from the W7 aggregator (`src/sites/tools/index.ts`).
|
|
46
|
-
*/
|
|
47
|
-
export declare function buildSitesListTool(registry: SiteRegistry): AnyToolDefinition;
|
|
1
|
+
import type { ClientPool } from '../client-pool.js';
|
|
2
|
+
import { type ServedToolDefinition } from '../../tools/tool-builder.js';
|
|
3
|
+
export declare function buildSitesListTool(pool: ClientPool): ServedToolDefinition;
|
|
48
4
|
//# sourceMappingURL=sites-list.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sites-list.d.ts","sourceRoot":"","sources":["../../../src/sites/tools/sites-list.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sites-list.d.ts","sourceRoot":"","sources":["../../../src/sites/tools/sites-list.ts"],"names":[],"mappings":"AAwCA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAIH,KAAK,oBAAoB,EAC5B,MAAM,6BAA6B,CAAC;AAqGrC,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,UAAU,GAAG,oBAAoB,CA0JzE"}
|
|
@@ -1,51 +1,13 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* W7 — `yootheme_builder_sites_list` L1 tool.
|
|
3
|
-
*
|
|
4
|
-
* Platform-agnostic registry inspection: lists the in-process
|
|
5
|
-
* {@link SiteRegistry} as a tabular result so an agent (or a Maria-class
|
|
6
|
-
* Claude-Desktop user) can discover which site_ids are wired into this
|
|
7
|
-
* MCP server WITHOUT a network round-trip.
|
|
8
|
-
*
|
|
9
|
-
* Why it does NOT call `pool.resolve()`:
|
|
10
|
-
* - The tool reads the registry verbatim and never touches bearers, the
|
|
11
|
-
* secret-resolver, or any HTTP endpoint. Resolving through the pool
|
|
12
|
-
* would force a default-site requirement that is exactly the
|
|
13
|
-
* bootstrap failure-mode the tool is meant to diagnose ("I added
|
|
14
|
-
* sites but forgot to mark a default"). For the same reason the
|
|
15
|
-
* handler intentionally skips `withSiteMeta` — there is no resolved
|
|
16
|
-
* site to stamp; instead we emit a `structuredContent._meta.tool_kind
|
|
17
|
-
* = 'registry'` marker so MCP hosts can route the result through a
|
|
18
|
-
* registry-aware UI if/when they grow one.
|
|
19
|
-
*
|
|
20
|
-
* Why `site_id` is exposed but unused:
|
|
21
|
-
* - The W5 SITE_ID_SCHEMA pin requires EVERY tool to expose the
|
|
22
|
-
* optional `site_id` field so legacy/scripted callers never trip a
|
|
23
|
-
* Zod parse on an extra-property. The W12-R1.3 DESCRIPTION_SUFFIX_EXEMPT
|
|
24
|
-
* list opts this tool out of the canonical description suffix
|
|
25
|
-
* because "operates on the default site" would imply per-row
|
|
26
|
-
* filtering that the handler does not perform.
|
|
27
|
-
*
|
|
28
|
-
* W12-R1.3 (A2-L4): `bearer_source` was previously projected into the
|
|
29
|
-
* output row + table column. Even though it carried only the literal
|
|
30
|
-
* `'plain'` / `'op'`, the `sites://current` resource already omits
|
|
31
|
-
* this field (see ADR rationale in server.ts) and the tool surface
|
|
32
|
-
* should match for cross-surface consistency. The field is dropped
|
|
33
|
-
* from both the structured row AND the table column.
|
|
34
|
-
*
|
|
35
|
-
* @license MIT
|
|
36
|
-
*/
|
|
37
1
|
import { tableResult } from '@getimo/mcp-toolkit';
|
|
38
2
|
import { z } from 'zod';
|
|
39
3
|
import { INCLUDE_META_SCHEMA, SITE_ID_SCHEMA } from '../../tools/shared-schemas.js';
|
|
40
4
|
import { defineTool, readOnly, structuredResult, } from '../../tools/tool-builder.js';
|
|
5
|
+
import { unknownNameResult } from '../unknown-name-result.js';
|
|
41
6
|
const SITES_LIST_OUTPUT_SCHEMA = z.object({
|
|
42
7
|
items: z.array(z.object({
|
|
43
8
|
site_id: z.string(),
|
|
44
9
|
url: z.string(),
|
|
45
10
|
platform_hint: z.enum(['wordpress', 'joomla', 'auto']),
|
|
46
|
-
// ELEMENT_WRITE-24: platform_resolved is the platform CONFIRMED by a
|
|
47
|
-
// successful resolve — ABSENT until the site has resolved at least
|
|
48
|
-
// once (until then only platform_hint, the pre-resolve guess, exists).
|
|
49
11
|
platform_resolved: z
|
|
50
12
|
.enum(['wordpress', 'joomla'])
|
|
51
13
|
.optional()
|
|
@@ -53,14 +15,17 @@ const SITES_LIST_OUTPUT_SCHEMA = z.object({
|
|
|
53
15
|
'resolves at least once — "not yet probed", not "unknown". Before ' +
|
|
54
16
|
'that only `platform_hint` (the pre-resolve guess) is present.'),
|
|
55
17
|
is_default: z.boolean(),
|
|
18
|
+
is_active: z.boolean(),
|
|
56
19
|
label: z.string().optional(),
|
|
57
20
|
})),
|
|
58
21
|
total: z.number(),
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
22
|
+
active_site_id: z
|
|
23
|
+
.string()
|
|
24
|
+
.nullable()
|
|
25
|
+
.describe('The site a call that omits site_id targets RIGHT NOW because ' +
|
|
26
|
+
'yootheme_builder_use_site switched this server process to it. null when ' +
|
|
27
|
+
'no switch happened, in which case default_site_id is the target. ' +
|
|
28
|
+
'PROCESS-WIDE: every client sharing this MCP server inherits it.'),
|
|
64
29
|
default_site_id: z
|
|
65
30
|
.string()
|
|
66
31
|
.nullable()
|
|
@@ -68,6 +33,13 @@ const SITES_LIST_OUTPUT_SCHEMA = z.object({
|
|
|
68
33
|
'omits site_id. Distinct from diagnose\'s `process_default_site_id` ' +
|
|
69
34
|
'(the resolved active default): this is the configured default, that ' +
|
|
70
35
|
'is what a call resolved to. null when none is configured.'),
|
|
36
|
+
config_problem: z
|
|
37
|
+
.string()
|
|
38
|
+
.optional()
|
|
39
|
+
.describe('Present only when a configured source (a sites file, or the ' +
|
|
40
|
+
'YTB_MCP_SITE_URL/YTB_MCP_BEARER_TOKEN pair) EXISTED but was rejected at ' +
|
|
41
|
+
'startup — as opposed to nothing being configured yet. Names the exact ' +
|
|
42
|
+
'rejection reason. Absent in every other case.'),
|
|
71
43
|
_meta: z
|
|
72
44
|
.object({
|
|
73
45
|
tool_kind: z.string(),
|
|
@@ -80,40 +52,46 @@ const TABLE_COLUMNS = [
|
|
|
80
52
|
{ key: 'url', label: 'URL', width: 36 },
|
|
81
53
|
{ key: 'platform', label: 'PLATFORM', width: 11 },
|
|
82
54
|
{ key: 'is_default', label: 'DEFAULT', width: 9 },
|
|
55
|
+
{ key: 'is_active', label: 'ACTIVE', width: 8 },
|
|
83
56
|
{ key: 'label', label: 'LABEL', width: 24 },
|
|
84
57
|
];
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
*
|
|
88
|
-
* Signature accepts the {@link SiteRegistry} directly — unlike other
|
|
89
|
-
* tool-builders, it does NOT need the {@link ClientPool} because it
|
|
90
|
-
* never resolves a site. Callers wire `buildSitesListTool(pool.registry)`
|
|
91
|
-
* from the W7 aggregator (`src/sites/tools/index.ts`).
|
|
92
|
-
*/
|
|
93
|
-
export function buildSitesListTool(registry) {
|
|
58
|
+
export function buildSitesListTool(pool) {
|
|
59
|
+
const registry = pool.registry;
|
|
94
60
|
return defineTool({
|
|
95
61
|
name: 'yootheme_builder_sites_list',
|
|
96
|
-
description: 'List all sites configured in this multi-site MCP installation
|
|
97
|
-
'
|
|
98
|
-
'
|
|
99
|
-
'
|
|
100
|
-
'
|
|
101
|
-
'
|
|
102
|
-
'
|
|
103
|
-
'(site_id is accepted for schema-uniformity but ignored by this tool.)',
|
|
62
|
+
description: 'List all sites configured in this multi-site MCP installation — site_id, URL, ' +
|
|
63
|
+
'platform, DEFAULT + ACTIVE flag per row. Call first to discover site_ids. ' +
|
|
64
|
+
'A call omitting site_id goes to `active_site_id` (set by use_site, process-wide) ' +
|
|
65
|
+
'else to `default_site_id`. Pass `site_id` to FILTER to one site; omit it for all. ' +
|
|
66
|
+
'IDs from any tool (layout_id, element ids, …) are PER-SITE, never global: the ' +
|
|
67
|
+
'same id can exist on a different site naming something else entirely. Always keep ' +
|
|
68
|
+
'an id paired with the site_id it came from.',
|
|
104
69
|
inputSchema: {
|
|
105
70
|
site_id: SITE_ID_SCHEMA,
|
|
106
71
|
include_meta: INCLUDE_META_SCHEMA,
|
|
107
72
|
},
|
|
108
73
|
outputSchema: SITES_LIST_OUTPUT_SCHEMA,
|
|
109
74
|
annotations: readOnly('Sites — List configured'),
|
|
110
|
-
handler: async ({ include_meta }) => {
|
|
111
|
-
const
|
|
75
|
+
handler: async ({ site_id, include_meta }) => {
|
|
76
|
+
const allRows = registry.listForDisplay();
|
|
112
77
|
const defaultSiteId = registry.defaultSiteId();
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
78
|
+
const activeSiteId = pool.activeSiteId();
|
|
79
|
+
const configProblem = registry.configProblem;
|
|
80
|
+
const substituted = registry.sitesAreSubstituted && configProblem !== null;
|
|
81
|
+
const rows = site_id === undefined
|
|
82
|
+
? allRows
|
|
83
|
+
: allRows.filter((row) => row.site_id === site_id);
|
|
84
|
+
if (site_id !== undefined && rows.length === 0) {
|
|
85
|
+
return unknownNameResult({
|
|
86
|
+
argument: 'site_id',
|
|
87
|
+
value: site_id,
|
|
88
|
+
available: allRows.map((row) => row.site_id),
|
|
89
|
+
code: 'unknown_site',
|
|
90
|
+
error: `No site is configured under site_id "${site_id}".`,
|
|
91
|
+
hint: 'Call yootheme_builder_sites_list with no arguments to see every configured '
|
|
92
|
+
+ 'site_id, or run the setup CLI to add this one.',
|
|
93
|
+
});
|
|
94
|
+
}
|
|
117
95
|
const items = rows.map((row) => ({
|
|
118
96
|
site_id: row.site_id,
|
|
119
97
|
url: row.url,
|
|
@@ -122,35 +100,43 @@ export function buildSitesListTool(registry) {
|
|
|
122
100
|
? { platform_resolved: row.platform_resolved }
|
|
123
101
|
: {}),
|
|
124
102
|
is_default: row.is_default,
|
|
103
|
+
is_active: activeSiteId !== null && row.site_id === activeSiteId,
|
|
125
104
|
...(row.label !== undefined ? { label: row.label } : {}),
|
|
126
105
|
}));
|
|
127
|
-
// Table-side projection: humans see one `platform` column
|
|
128
|
-
// (resolved if known, hint otherwise) and a yes/no on
|
|
129
|
-
// is_default for legibility.
|
|
130
106
|
const tableRows = rows.map((row) => ({
|
|
131
107
|
site_id: row.site_id,
|
|
132
108
|
url: row.url,
|
|
133
109
|
platform: row.platform_resolved ?? row.platform_hint,
|
|
134
110
|
is_default: row.is_default ? 'yes' : 'no',
|
|
111
|
+
is_active: activeSiteId !== null && row.site_id === activeSiteId ? 'yes' : 'no',
|
|
135
112
|
label: row.label ?? '',
|
|
136
113
|
}));
|
|
137
114
|
const toolkitResult = tableResult(tableRows, {
|
|
138
115
|
columns: TABLE_COLUMNS,
|
|
139
|
-
header: (count) =>
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
116
|
+
header: (count) => count === 0 && configProblem !== null
|
|
117
|
+
? '0 configured sites — a configured source was rejected at startup (see config_problem)'
|
|
118
|
+
: `${String(count)} configured site${count === 1 ? '' : 's'}` +
|
|
119
|
+
(defaultSiteId !== null ? ` (default: ${defaultSiteId})` : ' (no default configured)') +
|
|
120
|
+
(activeSiteId !== null && activeSiteId !== defaultSiteId
|
|
121
|
+
? ` — ACTIVE: ${activeSiteId}, set by use_site; calls without site_id go THERE, not to the default`
|
|
122
|
+
: '')
|
|
123
|
+
+ (configProblem !== null
|
|
124
|
+
? ' — a configured source was rejected at startup and is NOT in this list (see config_problem)'
|
|
125
|
+
: ''),
|
|
126
|
+
footer: substituted
|
|
127
|
+
? 'These names are a SUBSTITUTE while the configured registry is rejected: '
|
|
128
|
+
+ 'a call that names one is refused. Call tools WITHOUT `site_id` — they '
|
|
129
|
+
+ 'run against the site listed above.'
|
|
130
|
+
: 'Verify one: yootheme_builder_sites_test({site_id: "<SITE_ID column>"}). ' +
|
|
131
|
+
'Pass `site_id: "<SITE_ID column>"` on any tool call to target a specific site.',
|
|
143
132
|
includeMeta: include_meta,
|
|
144
133
|
});
|
|
145
|
-
// The W6 `withSiteMeta` wrapper is intentionally NOT used —
|
|
146
|
-
// see the file header for rationale. We emit a stable
|
|
147
|
-
// `_meta.tool_kind: "registry"` marker so MCP hosts can
|
|
148
|
-
// distinguish registry tools from site-bound tools without
|
|
149
|
-
// string-matching the tool name.
|
|
150
134
|
return structuredResult(toolkitResult, {
|
|
151
135
|
items,
|
|
152
136
|
total: items.length,
|
|
153
137
|
default_site_id: defaultSiteId,
|
|
138
|
+
active_site_id: activeSiteId,
|
|
139
|
+
...(configProblem !== null ? { config_problem: configProblem } : {}),
|
|
154
140
|
_meta: { tool_kind: 'registry' },
|
|
155
141
|
});
|
|
156
142
|
},
|