@sakupa/mcp 0.7.54 → 1.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/dist/bin.js +13 -5
- package/dist/index.js +13 -5
- package/package.json +1 -1
package/dist/bin.js
CHANGED
|
@@ -402,7 +402,7 @@ function isFreeSiteAllowanceNetworkReference(value) {
|
|
|
402
402
|
}
|
|
403
403
|
|
|
404
404
|
// ../core/dist/domain/version.js
|
|
405
|
-
var SAKUPA_MCP_VERSION = "0.
|
|
405
|
+
var SAKUPA_MCP_VERSION = "1.0.0";
|
|
406
406
|
|
|
407
407
|
// ../core/dist/domain/errors.js
|
|
408
408
|
var HTTP_STATUS = {
|
|
@@ -4820,7 +4820,7 @@ Once Stripe confirms payment and Sakupa synchronizes the subscription, the curre
|
|
|
4820
4820
|
server.registerTool(
|
|
4821
4821
|
"bind",
|
|
4822
4822
|
{
|
|
4823
|
-
description: `Bind a custom domain to this subscribed site \u2014 an OPTIONAL extra serving surface; the subscription-backed ${previewHostPattern} URL keeps working alongside it while the subscription is active. The binding unit is the APEX domain: binding example.com reserves routes for example.com and www.example.com, but ONLY www is required and judged for activation; the naked apex is optional because many DNS providers cannot point it. One apex TXT verification covers both
|
|
4823
|
+
description: `Bind a custom domain to this subscribed site \u2014 an OPTIONAL extra serving surface; the subscription-backed ${previewHostPattern} URL keeps working alongside it while the subscription is active. The binding unit is the APEX domain: binding example.com reserves routes for example.com and www.example.com, but ONLY www is required and judged for activation; the naked apex is optional because many DNS providers cannot point it. One apex TXT verification covers both. A site has one FINAL apex domain; starting a different apex begins a zero-downtime switch and the previous domain remains until the new www is live. The www CNAME must remain while bound. Requires an ACTIVE subscription (subscribe). Ownership is proven ONLY by DNS control of the apex \u2014 payment never grants ownership, and bindings are ALWAYS challengeable: whoever proves CURRENT DNS control takes the domain, even from an existing binding (the displaced site keeps its subscription, content and subscription-backed Sakupa URL). Unverified requests expire after 72 hours. Call again with action "status" to check progress.`,
|
|
4824
4824
|
outputSchema: STRUCTURED_TOOL_OUTPUT_SCHEMA,
|
|
4825
4825
|
annotations: { readOnlyHint: false, destructiveHint: true, openWorldHint: true },
|
|
4826
4826
|
inputSchema: {
|
|
@@ -4855,7 +4855,8 @@ Once Stripe confirms payment and Sakupa synchronizes the subscription, the curre
|
|
|
4855
4855
|
return text(
|
|
4856
4856
|
res2.bindingStatus === "active" ? "domain_binding_active" : res2.bindingStatus === "provisioning" ? "domain_binding_provisioning" : "domain_verification_pending",
|
|
4857
4857
|
`Domain binding status for ${apex2}: ${res2.status}
|
|
4858
|
-
${res2.message}
|
|
4858
|
+
${res2.message}
|
|
4859
|
+
The serving CNAME www.${apex2} \u2192 ${res2.servingTarget} must remain for as long as this domain is bound.` + (manualProviderRecheckRequired ? `
|
|
4859
4860
|
|
|
4860
4861
|
${customerRecheckInstruction}` : "") + "\n\n" + renderChecklistBlock(
|
|
4861
4862
|
diag,
|
|
@@ -4873,6 +4874,7 @@ ${customerRecheckInstruction}` : "") + "\n\n" + renderChecklistBlock(
|
|
|
4873
4874
|
apexResolves,
|
|
4874
4875
|
apexRequired: false,
|
|
4875
4876
|
requiredServingHostname: `www.${apex2}`,
|
|
4877
|
+
requiredCnameMustRemainWhileBound: true,
|
|
4876
4878
|
optionalApexHostname: apex2,
|
|
4877
4879
|
automaticRetries: 0,
|
|
4878
4880
|
manualRecheckOnly: true,
|
|
@@ -4924,13 +4926,14 @@ STEP 1 of 2 \u2014 prove ownership. Add ONE record:
|
|
|
4924
4926
|
|
|
4925
4927
|
Host is the SHORT form: most panels append the domain automatically (the saved record must NOT show ${apex} twice in one name). Ownership comes ONLY from DNS control; paying never grants it. The first verified request wins and this challenge expires after 72 hours.
|
|
4926
4928
|
|
|
4927
|
-
When the user says the TXT is set, run bind "status". It verifies ownership and then hands back STEP 2 \u2014 a SINGLE www CNAME (there are NO certificate TXT records; HTTPS validates automatically over that CNAME). Each "status" checks the previous step and, unless something is misconfigured, advances to the next \u2014 so run it whenever the user reports a step done, NOT on a timer. Any later session can resume with action "status" alone; the verificationId is optional.`,
|
|
4929
|
+
When the user says the TXT is set, run bind "status". It verifies ownership and then hands back STEP 2 \u2014 a SINGLE www CNAME (there are NO certificate TXT records; HTTPS validates automatically over that CNAME). That CNAME must remain for as long as the domain stays bound to Sakupa. Each "status" checks the previous step and, unless something is misconfigured, advances to the next \u2014 so run it whenever the user reports a step done, NOT on a timer. Any later session can resume with action "status" alone; the verificationId is optional.`,
|
|
4928
4930
|
{
|
|
4929
4931
|
verificationId: res.verificationId,
|
|
4930
4932
|
apexDomain: apex,
|
|
4931
4933
|
includedHostnames: res.includedHostnames,
|
|
4932
4934
|
apexRequired: false,
|
|
4933
4935
|
requiredServingHostname: `www.${apex}`,
|
|
4936
|
+
requiredCnameMustRemainWhileBound: true,
|
|
4934
4937
|
optionalApexHostname: apex,
|
|
4935
4938
|
verificationRecord: res.verificationRecord,
|
|
4936
4939
|
servingTarget: res.servingTarget,
|
|
@@ -5768,7 +5771,12 @@ var TOOL_MANUALS = {
|
|
|
5768
5771
|
preconditions: "A subscribed site and DNS control.",
|
|
5769
5772
|
parameterNames: ["action", "hostname", "verificationId"],
|
|
5770
5773
|
parameters: "Action plus hostname or verificationId as returned by the prior step.",
|
|
5771
|
-
warnings: [
|
|
5774
|
+
warnings: [
|
|
5775
|
+
"www is mandatory; the apex is optional.",
|
|
5776
|
+
"Copy DNS values verbatim.",
|
|
5777
|
+
"The www CNAME must remain for as long as the domain stays bound; only the ownership TXT is temporary.",
|
|
5778
|
+
"If the domain already belongs to this site, use bind status instead of starting a new challenge."
|
|
5779
|
+
],
|
|
5772
5780
|
nextStep: "Follow the returned DNS checklist and call bind status/check."
|
|
5773
5781
|
},
|
|
5774
5782
|
billing: {
|
package/dist/index.js
CHANGED
|
@@ -147,7 +147,7 @@ function isFreeSiteAllowanceNetworkReference(value) {
|
|
|
147
147
|
}
|
|
148
148
|
|
|
149
149
|
// ../core/dist/domain/version.js
|
|
150
|
-
var SAKUPA_MCP_VERSION = "0.
|
|
150
|
+
var SAKUPA_MCP_VERSION = "1.0.0";
|
|
151
151
|
|
|
152
152
|
// ../core/dist/domain/errors.js
|
|
153
153
|
var HTTP_STATUS = {
|
|
@@ -4936,7 +4936,7 @@ Once Stripe confirms payment and Sakupa synchronizes the subscription, the curre
|
|
|
4936
4936
|
server.registerTool(
|
|
4937
4937
|
"bind",
|
|
4938
4938
|
{
|
|
4939
|
-
description: `Bind a custom domain to this subscribed site \u2014 an OPTIONAL extra serving surface; the subscription-backed ${previewHostPattern} URL keeps working alongside it while the subscription is active. The binding unit is the APEX domain: binding example.com reserves routes for example.com and www.example.com, but ONLY www is required and judged for activation; the naked apex is optional because many DNS providers cannot point it. One apex TXT verification covers both
|
|
4939
|
+
description: `Bind a custom domain to this subscribed site \u2014 an OPTIONAL extra serving surface; the subscription-backed ${previewHostPattern} URL keeps working alongside it while the subscription is active. The binding unit is the APEX domain: binding example.com reserves routes for example.com and www.example.com, but ONLY www is required and judged for activation; the naked apex is optional because many DNS providers cannot point it. One apex TXT verification covers both. A site has one FINAL apex domain; starting a different apex begins a zero-downtime switch and the previous domain remains until the new www is live. The www CNAME must remain while bound. Requires an ACTIVE subscription (subscribe). Ownership is proven ONLY by DNS control of the apex \u2014 payment never grants ownership, and bindings are ALWAYS challengeable: whoever proves CURRENT DNS control takes the domain, even from an existing binding (the displaced site keeps its subscription, content and subscription-backed Sakupa URL). Unverified requests expire after 72 hours. Call again with action "status" to check progress.`,
|
|
4940
4940
|
outputSchema: STRUCTURED_TOOL_OUTPUT_SCHEMA,
|
|
4941
4941
|
annotations: { readOnlyHint: false, destructiveHint: true, openWorldHint: true },
|
|
4942
4942
|
inputSchema: {
|
|
@@ -4971,7 +4971,8 @@ Once Stripe confirms payment and Sakupa synchronizes the subscription, the curre
|
|
|
4971
4971
|
return text(
|
|
4972
4972
|
res2.bindingStatus === "active" ? "domain_binding_active" : res2.bindingStatus === "provisioning" ? "domain_binding_provisioning" : "domain_verification_pending",
|
|
4973
4973
|
`Domain binding status for ${apex2}: ${res2.status}
|
|
4974
|
-
${res2.message}
|
|
4974
|
+
${res2.message}
|
|
4975
|
+
The serving CNAME www.${apex2} \u2192 ${res2.servingTarget} must remain for as long as this domain is bound.` + (manualProviderRecheckRequired ? `
|
|
4975
4976
|
|
|
4976
4977
|
${customerRecheckInstruction}` : "") + "\n\n" + renderChecklistBlock(
|
|
4977
4978
|
diag,
|
|
@@ -4989,6 +4990,7 @@ ${customerRecheckInstruction}` : "") + "\n\n" + renderChecklistBlock(
|
|
|
4989
4990
|
apexResolves,
|
|
4990
4991
|
apexRequired: false,
|
|
4991
4992
|
requiredServingHostname: `www.${apex2}`,
|
|
4993
|
+
requiredCnameMustRemainWhileBound: true,
|
|
4992
4994
|
optionalApexHostname: apex2,
|
|
4993
4995
|
automaticRetries: 0,
|
|
4994
4996
|
manualRecheckOnly: true,
|
|
@@ -5040,13 +5042,14 @@ STEP 1 of 2 \u2014 prove ownership. Add ONE record:
|
|
|
5040
5042
|
|
|
5041
5043
|
Host is the SHORT form: most panels append the domain automatically (the saved record must NOT show ${apex} twice in one name). Ownership comes ONLY from DNS control; paying never grants it. The first verified request wins and this challenge expires after 72 hours.
|
|
5042
5044
|
|
|
5043
|
-
When the user says the TXT is set, run bind "status". It verifies ownership and then hands back STEP 2 \u2014 a SINGLE www CNAME (there are NO certificate TXT records; HTTPS validates automatically over that CNAME). Each "status" checks the previous step and, unless something is misconfigured, advances to the next \u2014 so run it whenever the user reports a step done, NOT on a timer. Any later session can resume with action "status" alone; the verificationId is optional.`,
|
|
5045
|
+
When the user says the TXT is set, run bind "status". It verifies ownership and then hands back STEP 2 \u2014 a SINGLE www CNAME (there are NO certificate TXT records; HTTPS validates automatically over that CNAME). That CNAME must remain for as long as the domain stays bound to Sakupa. Each "status" checks the previous step and, unless something is misconfigured, advances to the next \u2014 so run it whenever the user reports a step done, NOT on a timer. Any later session can resume with action "status" alone; the verificationId is optional.`,
|
|
5044
5046
|
{
|
|
5045
5047
|
verificationId: res.verificationId,
|
|
5046
5048
|
apexDomain: apex,
|
|
5047
5049
|
includedHostnames: res.includedHostnames,
|
|
5048
5050
|
apexRequired: false,
|
|
5049
5051
|
requiredServingHostname: `www.${apex}`,
|
|
5052
|
+
requiredCnameMustRemainWhileBound: true,
|
|
5050
5053
|
optionalApexHostname: apex,
|
|
5051
5054
|
verificationRecord: res.verificationRecord,
|
|
5052
5055
|
servingTarget: res.servingTarget,
|
|
@@ -5887,7 +5890,12 @@ var TOOL_MANUALS = {
|
|
|
5887
5890
|
preconditions: "A subscribed site and DNS control.",
|
|
5888
5891
|
parameterNames: ["action", "hostname", "verificationId"],
|
|
5889
5892
|
parameters: "Action plus hostname or verificationId as returned by the prior step.",
|
|
5890
|
-
warnings: [
|
|
5893
|
+
warnings: [
|
|
5894
|
+
"www is mandatory; the apex is optional.",
|
|
5895
|
+
"Copy DNS values verbatim.",
|
|
5896
|
+
"The www CNAME must remain for as long as the domain stays bound; only the ownership TXT is temporary.",
|
|
5897
|
+
"If the domain already belongs to this site, use bind status instead of starting a new challenge."
|
|
5898
|
+
],
|
|
5891
5899
|
nextStep: "Follow the returned DNS checklist and call bind status/check."
|
|
5892
5900
|
},
|
|
5893
5901
|
billing: {
|