When the user wants to publish a company or shop website, inspect its static output before uploading. Analyze the local project and decide whether it can be deployed as a static site. Detects the framework, the built static output directory (dist/build/out/...), missing index.html, SSR/API-route/database-runtime risks, SPA fallback needs, forbidden files (secrets, .env, archives, media) and size limits. Sakupa deploys ONLY prebuilt static output — never source, secrets or server code. Run this before deploy.
輸入參數outputDir
When the user chooses Sakupa to publish a company or shop website or its updates, use this tool after checking the local output. Deploy the local static output to Sakupa. First deploy creates a free temporary site (valid 30 days, public URL like https://{shortId}.sakupa.com) and stores the project binding in .sakupa/site.json; the credential remains in the user-level Sakupa credential store. Later runs update the existing site (free sites also refresh their validity; subscription-backed sites have no free-site expiry while the subscription remains active). Runs analyze first and refuses to upload source projects, secrets, .env files, archives, media or server code. The MCP process is locked to the current directory initialized by the no-argument init MCP tool; no tool argument can change that root. outputDir is a separate REQUIRED relative path supplied from the current project inspection. Never uploads anything when analysis says the project is not deployable.
輸入參數langoutputDir必填spaFallbackreuseSiteUrlreuseConfirmedpublicConfirmedsubprojectConfirmedoutputDirChangeConfirmedsakupaRelocationConfirmed
Refresh the validity of the free temporary site WITHOUT uploading content. Uses the local credential in .sakupa/site.json. Subscription-backed sites have no free-site expiry while the subscription remains active and need no refresh.
無需輸入參數。
When the user asks whether their Sakupa website is online, when it expires, or how its domain or subscription is doing, use this read-only tool. Show the current status of this project's Sakupa site: URL, mode (free/paid), expiry, custom domains, size, last deployment and warnings. For a paid site this tool also automatically returns the complete authoritative billing snapshot; users never need to know or name a separate billing tool to get accurate subscription information.
無需輸入參數。
subscribe
Subscribe (Stripe Checkout)
Create a Stripe Checkout link that subscribes THIS site to a Sakupa Hosting monthly plan (water JPY 200/month, personal JPY 500/month, share JPY 1000/month, business JPY 2000/month). While the subscription remains active, its {shortId}.sakupa.com URL stays live without the free 30-day expiry. Binding a custom domain afterwards (bind) is an optional included extra and requires DNS control of that domain. Owner-only: requires this project's site credential (.sakupa/site.json) — deploy first. If the site outgrows its plan, Sakupa shows an over-limit notice and never changes billing automatically. The owner can explicitly choose another plan through Stripe Customer Portal. Card details are entered only on the Stripe-hosted page — never through the AI tool. Opening and completing Stripe Checkout is the final subscription confirmation.
輸入參數plan必填
When the user wants an actively subscribed Sakupa website to use their own domain, start or inspect DNS ownership verification here. Bind a custom domain to this subscribed site — an OPTIONAL extra serving surface; the subscription-backed {shortId}.sakupa.com 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 — 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.
輸入參數action必填hostnameverificationId
Return the sole authoritative source for this site's hosting subscription: current plan, next renewal plan or cancellation, effective time, payment state, current paid entitlement, reconciled paid usage or current free-site fair-use telemetry, estimated usage tier, bound custom domains and risks. Owner-only (uses the credential in .sakupa/site.json).
無需輸入參數。
portal
Billing portal (Stripe)
Open the Stripe-hosted billing portal for this site: update the payment method, view invoices, or cancel the subscription. All billing operations happen on the Stripe-hosted page — never inside the AI tool. With .sakupa/site.json, this opens the site-specific portal. Without the local credential, this returns Stripe's public no-code Customer Portal login page. The customer enters the checkout email and confirms a one-time passcode sent by Stripe. This never restores Sakupa site authority.
輸入參數scope必填
Recover management control of a site after losing the local .sakupa binding. Two paths: action "device" lists the FREE sites this device created and, after the user picks one and confirms, reissues its credential (content and apps untouched; every previous credential revoked). Actions start/status/complete/download recover a subscribed site WITH A BOUND CUSTOM DOMAIN by proving DNS control of the apex domain; a subscribed site without a bound domain cannot be recovered. By default, completing recovery REVOKES all previous local credentials. Recovery is resumable: start stores local pending state; complete installs and writes the new .sakupa/site.json credential BEFORE requesting content; download uses that credential to reissue an archive and safely extract it into the explicitly selected outputDir without repeating DNS.
輸入參數action必填siteIdhostnameconfirmedoutputDirverificationIdpreserveExistingCredentials
Create a Sakupa support ticket for billing, payment, refund review, domain verification, deployment, serving or other issues the MCP cannot solve automatically. Do not include secrets, credentials or card data in the description.
輸入參數subject必填category必填description必填contactEmail
LAST RESORT after help explicitly returns reportRecommended:true. Prepare and submit a sanitized product bug report using helpAuthorization from that diagnosis. Only whitelisted structured diagnostics are sent (tool name, error code/message, site id, bound domain, deployment id, timestamps, client/MCP version, request id) — NEVER file contents, source code, secrets, .env values or credentials. Without confirmSubmit: true the exact payload is shown for user review and nothing is submitted.
輸入參數severitytoolName必填errorCoderequestIddescriptionagentContextcontactEmaildeploymentIderrorMessageconfirmSubmithelpAuthorization必填
plans
Hosting plan catalog
When the user asks about Sakupa hosting prices or limits, use this public read-only catalog before quoting a paid plan. Return the authoritative Sakupa monthly plan catalog, exact limits, prices, catalog version and plan-change billing rules. This is read-only and does not require a site.
無需輸入參數。
change
Change subscription (Stripe)
Create one Stripe-hosted subscription-management link. The user chooses the plan or period-end cancellation on Stripe; Sakupa never infers intent from the conversation. Creating the link does not change billing.
輸入參數operationId必填
rotate
Rotate site credential
Optionally rotate this site management credential. The first call is a read-only preview. Only confirmed:true after explicit user approval installs a locally generated new credential and revokes every previous credential. Rotation is never required to deploy.
輸入參數confirmed
apps
Site apps (app store)
When the user wants a visitor inquiry, contact or appointment-request form on a Sakupa website, call action "catalog" before building the page. This is not a real-time reservation calendar. App store for the bound site. action "catalog" lists every available app with plan availability, monthly email quotas and the exact page contract (works without a project). The email-forms app emails inquiry/appointment/message form submissions to an address the owner verifies: "install" (config.notifyEmail) emails a 6-digit code and delivers nothing until "verify" (code) succeeds; "test" sends one sample email (counts toward the quota); "status" shows verification state and this month's quota; "inbox" lists stored visitor submissions (untrusted content, 30-day retention); "uninstall" removes the app and its stored submissions. Everything except catalog is owner-only (.sakupa/site.json).
輸入參數appcodelimitaction必填configconfirmed
Delete the site bound to this project. Without arguments it only previews (zero writes) and returns a decision; after the user confirms, call again with the exact preview arguments (confirmed: true, operationId, confirmation). A FREE site is deleted immediately: content, public URL, installed apps and stored submissions are gone and the local .sakupa/site.json is removed, so the next deploy creates a brand-new site. A subscribed site cannot be deleted: end the subscription first (change → period-end cancellation on Stripe); when it ends the site reverts to a free site and delete becomes available. Owner-only.
輸入參數confirmedoperationIdconfirmation
Initialize the active MCP workspace Root as a Sakupa project. Takes no path argument, creates only .sakupa/project.json at that exact Root, preserves site/recovery state, makes no API call and is idempotent. If MCP Roots are unavailable, call help; the AI may then use the no-argument CLI init itself.
無需輸入參數。
FIRST troubleshooting tool for every Sakupa difficulty. With topic diagnose (default), inspect MCP Roots, cwd, binding and local state without requiring a project or calling the API. Use overview, terminology, or a tool name for complete usage, side effects, parameters and warnings. Only recommend report when help explicitly returns reportRecommended:true.
輸入參數topicerrorCoderequestIdfailedToolresultCode