CLI #
npx novence deploy ./dist β upload, check, publish, print the live URL. No install.
novence.ai Β· static sites for agents
npx novence deploy ./dist β or the TypeScript and Python SDKs, MCP, REST, or GraphQL. Live at https://{suffix}.novence.ai.
$ # One command. Prints the live URL. No email until you claim.
npx novence deploy ./dist
URL=$(npx novence deploy ./dist)
bash
$ curl -s -X POST https://api.novence.ai/v1/bootstrap \
-H 'content-type: application/json' \
-d '{"email":"you@example.com"}'
$ # 1) bootstrap 2) project 3) upload 4) deploy β live URL
export KEY=nv_live_β¦
export API=https://api.novence.ai
curl -s -X POST $API/v1/projects \
-H "authorization: Bearer $KEY" -H 'content-type: application/json' \
-d '{"name":"launch"}'
$ # MCP (streamable HTTP) β no nv_ key first. Same session.
https://api.novence.ai/mcp
js
$ import { Novence, bootstrapAccount, verifyEmail } from "@novence/sdk";
const { apiKey } = await bootstrapAccount("you@example.com");
const client = new Novence({ apiKey }); // defaults to https://api.novence.ai
const { project, url } = await client.projects.create({ name: "launch" });
await client.files.uploadDir(project.id, "./site");
await client.deployments.create(project.id);
// url β https://{suffix}.novence.ai/ (trial may skip checks β still live)
// AFTER the live URL:
await verifyEmail("you@example.com", process.env.VERIFY_CODE!);
python
$ pip install novence
from novence import Novence, bootstrap_account, verify_email
boot = bootstrap_account("you@example.com")
client = Novence(api_key=boot["apiKey"])
project = client.create_project("launch")
pid = project["project"]["id"]
client.upload_dir(pid, "./dist")
client.deploy(pid)
print(client.wait_for_deployment(pid)["liveUrl"])
verify_email("you@example.com", "123456")
$ # Recurring β MCP checkout(plan=pro) or REST:
curl -s -X POST https://api.novence.ai/v1/billing/checkout \
-H "authorization: Bearer $KEY" -H 'content-type: application/json' \
-d '{"plan":"pro"}'
curl -i -X POST https://api.novence.ai/v1/billing/mpp \
-H "authorization: Bearer $KEY" -H 'content-type: application/json' \
-d '{"plan":"pro"}'
Watch
An agent builds a static site, bootstraps a key, deploys, and lands on https://{suffix}.novence.ai. 75 seconds, no cuts to a dashboard.
Automate your workflow Β· Start today
npm install @novence/sdk or pip install novence. Typed clients over the same plane.
Streamable HTTP tools for Claude, Cursor, and any MCP client at /mcp.
For agents
Fastest: npx novence deploy. Or the SDKs. Raw REST below.
Use HTTPS β Canonical API https://api.novence.ai. Auth is Bearer nv_live_β¦. Lost key? Resend OTP then POST /v1/auth/reissue-key.
POST /v1/bootstrap returns an API key immediately. Do not wait for OTP β unverified trial still publishes.
Create a project, upload static website, deploy. Live URL is https://{suffix}.novence.ai/. Checks may be skipped on trial; still live.
Ask for the 6-digit OTP and POST /v1/auth/verify-email to unlock Free quotas. Required before Checkout or full free quotas.
CNAME www β fallback.novence.ai; apex URL-redirect to www. Checkout: POST /v1/billing/checkout. Agents: POST /v1/billing/mpp.
Agent loop
create_project
Bootstrap an account key, then open a project with a unique suffix.
β projectId + upload session
Custom domains
Point www at Novence with a CNAME. Send bare-domain visitors to www with a registrar URL redirect. That is the recommended path for SSL and apex visitors.
| Type | Host | Value |
|---|---|---|
| CNAME | www | fallback.novence.ai |
| URL redirect | @ | https://www.example.com/ |
What ships
Streamable HTTP MCP for projects, uploads, deploys, domains, and quotas. Errors tell the agent what to fix.
#1 MCP Check workers run Lighthouse, axe, and link checks. Failed deploys stay off live until thresholds pass.
#2 Checks Static sites are served globally at https://{suffix}.novence.ai/ after checks pass.
#3 Edge npx novence, npm install @novence/sdk, or pip install novence. Same plane as REST, GraphQL, and MCP.
#4 APIs Opt-in pageviews, 404s, referrers, and countries from the edge. No cookies, no script in your HTML. Read via dashboard, API or MCP.
#5 Analytics Projects, storage, bandwidth, deploys, and form submissions are capped per plan. Overages meter on Pro and Scale.
#6 Quotas HTML, CSS, and JS marketing sites. Embed Cal.com, Snipcart, or GA. Ship /data/*.json for menus and hours. No server-side apps.
#7 Scope Free Β· Pro Β· Scale
Free for one live site. Pro for twenty client pitches. Scale when you're running a studio. Paid plans include a large pool before anything extra hits the invoice β see examples and for agencies.
Selected: Pro ($29 / mo)
After verify: MCP checkout or REST POST https://api.novence.ai/v1/billing/checkout with Bearer key and { "plan": "pro" }. Opens Stripe Checkout. Use after a 2nd project or a 402. billing_portal is manage-only once already on Pro.
Same monthly subscription via Machine Payments Protocol: POST https://api.novence.ai/v1/billing/mpp. Returns HTTP 402, then settle with a Payment credential (e.g. link-cli). First month charged via SPT; renews until cancelled.