Horizontal

WorksCode and developmentDatabases and data

Novence

Hosted MCP for creating, checking, deploying, and hosting static sites for AI agents.

Addresshttps://api.novence.ai/mcp
Claude Codeclaude mcp add --transport http mcp https://api.novence.ai/mcp
For Cursor and other clients
{
  "mcpServers": {
    "mcp": {
      "type": "http",
      "url": "https://api.novence.ai/mcp"
    }
  }
}

It asks for: Authorization

Watch out

Has tools that change things: 7 of them

The server itself marks these tools as deleting or overwriting data (destructiveHint): have the agent ask you before it calls them.

Test
Works: Handshake succeeded
Tools
52 tools
Handshake
1.4 s
Transport
streamable-http · 2025-06-18
Tested
6 November 2026
Registry name
ai.novence/mcp v0.1.3
Listed
5 September 2026
Updated
5 September 2026
Website
novence.ai/mcp
Source
github.com/Novence-ai/mcp
The last 1 tests
WhenResultTime
2026-11-06 12:10 UTCHandshake succeeded1.4 s

The 52 tools it listed

"Read only" and "Changes data" are the server's own marks. Underlined parameters are required.

  1. accept_project_invite

    Accept project invite

    Accept an invite token (from email or invite_project_member in local/dev). Unverified invitees must pass otp. Returns a project-scoped nv_ key once — never email it. Collaborating uses this project_id; create_project still bills the caller.

    token otp

  2. billing_portal

    Billing portal

    Stripe Customer Portal URL for an existing subscriber (manage/cancel). Not first-time subscribe — use checkout or mpp_upgrade for that.

    return_url

  3. bootstrap

    Bootstrap account

    Create an account + nv_ API key from an email. No Bearer key required. Unverified trial still publishes; OTP/verify_email is AFTER the live URL. Returns apiKey immediately — do not wait for OTP. If the human message includes a Signup attribution object, pass it as attribution unchanged.

    email attribution

  4. checkout

    Stripe Checkout

    Return a Stripe Checkout URL for Pro ($29) or Scale. Requires nv_ + verified email. Use after a 2nd project or a 402 — never after the first live URL.

    plan success_url cancel_url

  5. configure_custom_domain

    Configure custom domain

    Attach a custom domain. For site domains, enables apex+www. Default primary=www. Required DNS: CNAME www → fallback.novence.ai. Then do exactly one apex option: ALIAS/ANAME/CNAME-flattening @ → fallback.novence.ai, or registrar URL-redirect @ → https://www.{domain}/. Pass primary=apex only when the apex must serve (ALIAS required; URL-redirect would loop).

    project_id hostname primary redirect

  6. confirm_upload

    Confirm upload

    Record one staged file after the client PUT to the presigned URL from get_upload_url. Use confirm_uploads_batch when several files were uploaded. Does not publish the site — call deploy after confirms. Re-confirming the same path updates metadata.

    project_id path content_type

  7. confirm_uploads_batch

    Confirm uploads (batch)

    Confirm many uploads after get_upload_urls_batch PUTs. 200 body is { files, errors }. errors is always an array (empty on full success); retry only failed paths. Use confirm_upload for a single file. Does not deploy.

    project_id files

  8. create_account_session

    Create account session

    Mint a short-lived mgmt_ token for a local HTML console (account:read, billing:portal, project:members). Never put nv_ keys in HTML.

  9. create_api_key

    Create named API key

    Mint an extra labelled nv_ key (e.g. ci, laptop) that keeps working when reissue_key replaces the primary key. Max 10 named keys; cannot exceed the calling key's permissions; the owner is emailed. The key is shown once — tell the user to save it.

    name project_id

  10. create_form

    Create form

    Create a Novence form on a project (optional — sites may use Formspree/Web3forms instead). Returns submit URLs for edge + public API.

    project_id name slug fields notify_email honeypot_field

  11. create_project

    Create project

    Create a new hosting project on the caller's account (counts against the caller's project quota). To edit a shared site, pass that project's project_id to upload/deploy tools instead.

    name description

  12. delete_fileChanges data

    Delete file

    Remove one path from staging. Does not change the already-live deploy until the next deploy. Irreversible for that staged path; re-upload to restore. Use delete_form_submission for form PII, not this.

    project_id path

  13. delete_form_submissionChanges data

    Delete form submission

    Permanently delete one form submission (PII). Does not disable the form — use update_form status=disabled. Irreversible.

    project_id form_id submission_id

  14. delete_projectChanges data

    Delete project

    IRREVERSIBLE. Permanently delete a hosting project: the live site, preview URLs, and custom domain stop serving (HTTP 410), every deployed and staged file is erased, forms stop accepting submissions, site MCP and owner-edit go away, and project-scoped API keys and pending invites are revoked. There is no undo and no restore. Owner only. Only call this when the human has explicitly asked to delete this specific project; never to clean up after a failed deploy or to start over (redeploy instead). confirm must equal the project's exact name or suffix — get it from get_project and read it back to the human first. Calling again on a deleted project returns alreadyDeleted=true.

    project_id confirm

  15. deploy

    Deploy site

    Publish the site. Verified accounts run quality checks; unverified accounts skip checks (checkRuns: 0) and still go live. POST returns quickly — poll get_deployment_status until live or failed. Do not retry POST while status is queued, checking, or promoting.

    project_id force

  16. get_accountRead only

    Get account

    Full account snapshot: profile, subscription, quotas, usage, projects. Use get_quotas_and_usage for limits only; use get_account_console_kit to render a local HTML console. Read-only.

  17. get_account_console_kitRead only

    Get account console kit

    JSON kit to write a local novence-console.html: snapshot, HTML template (replace the /*NOVENCE_INJECT*/ marker), and session. With an nv_ key, session.token is a fresh 30-minute mgmt_ token — do not log it. Humans can instead run `npx novence dashboard`. Serve on the first free 127.0.0.1 port (never assume 8765). Use get_account for JSON without the kit.

  18. get_checks_resultsRead only

    Get check results

    Read Lighthouse, a11y, and link results for a deployment. Omit deployment_id for the latest. Use run_checks to trigger a new cycle; use get_deployment_status for publish/promote state, not scores.

    project_id deployment_id

  19. get_deployment_statusRead only

    Get deployment status

    Poll publish state after deploy (queued, checking, promoting, live, failed). queued = waiting for a check runner (queuePosition shows your place); wait recommendedPollSeconds between polls. Omit deployment_id for the latest. Use get_checks_results for Lighthouse/a11y scores and get_preview_url once live. Read-only; do not retry deploy while queued, checking, or promoting.

    project_id deployment_id

  20. get_domain_statusRead only

    Get domain status

    Read DNS for the project's custom hostname after configure_custom_domain. Returns dns.www, dns.apex, and dns.next (a single next DNS step, or null when www CNAME is in place and apex has records). customDomainStatus stays pending after attach — poll dns.next until null. Do not use this to attach a domain. Read-only.

    project_id

  21. get_fileRead only

    Get file

    Return metadata for one staged path (not file bytes). Use list_files to discover paths; use get_upload_url to replace content. Read-only.

    project_id path

  22. get_preview_urlRead only

    Get preview URL

    Return the public site URL. On Pro/Scale this is the per-deploy https://{suffix}--{ref}.novence.ai alias (last 5 successful deploys stay). On Free it is the live https://{suffix}.novence.ai host. Use get_deployment_status to know if live yet; use configure_custom_domain for a custom hostname. Read-only.

    project_id

  23. get_projectRead only

    Get project

    Return one hosting project (name, suffix, settings, membership). Use list_projects to discover IDs. Use get_preview_url for the public URL (alias on Pro/Scale), and get_project_usage for quotas on that site. Read-only; does not mutate.

    project_id

  24. get_project_analyticsRead only

    Get project analytics

    Cookieless edge analytics for a hosted site: pageviews, 404s, top pages, referrers, and countries. Off by default. Enable with update_project_settings analytics_enabled=true. Default last 7 days (max 90). If disabled, returns enabled=false and empty totals.

    project_id from to

  25. get_project_usageRead only

    Get project usage

    Per-project usage (storage, deploys, check minutes, bandwidth, forms). Bandwidth is live from edge-served bytes. Use get_quotas_and_usage for account totals; use get_project_analytics for pageviews. Read-only.

    project_id

  26. get_quotas_and_usageRead only

    Get quotas and usage

    Account-level plan limits and current consumption (projects, storage, deploys, bandwidth). Use get_project_usage for one site; use get_account for profile plus quotas together. Read-only snapshot, not a live meter stream.

  27. get_site_briefRead only

    Get site brief

    Private webmaster brief for this project (Pro/Scale). Markdown or JSON, max 64 KB. Not on the live origin. On session start call this then list_site_events. Empty is brief: null. Read-only.

    project_id

  28. get_upload_url

    Get upload URL

    Get a presigned PUT URL for one site file. content_type is optional (inferred from extension). Use get_upload_urls_batch for multi-file sites, then confirm_upload after the PUT.

    project_id path content_type

  29. get_upload_urls_batch

    Get upload URLs (batch)

    Presign many site files at once (max 100). Prefer this over get_upload_url for multi-file sites. After PUTs, call confirm_uploads_batch, not confirm_upload.

    project_id files

  30. invite_project_member

    Invite project member

    Invite a collaborator by email. Requires Pro/Scale on the project owner. Only the owner can invite as admin. Creates a new project on the caller's account if you use create_project instead — pass project_id here. Do not share the owner's nv_ key.

    project_id email role

  31. leave_projectChanges data

    Leave project

    Leave a project you were invited to. Owners cannot leave — transfer or stay. Revokes your project keys. Use remove_project_member if you are the owner removing someone else.

    project_id

  32. list_filesRead only

    List files

    List staged site files for a project (paths, types, sizes). Use get_file for one path's metadata; use delete_file to remove a path. Read-only; does not deploy.

    project_id

  33. list_form_submissionsRead only

    List form submissions

    List visitor submissions for one Novence form (paginated). Use delete_form_submission to remove PII. Not for update_form schema changes. Read-only.

    project_id form_id limit offset

  34. list_formsRead only

    List forms

    List Novence forms on a project (ids, slugs, status). Use update_form to change one; use list_form_submissions to read leads. Not for third-party widgets. Read-only.

    project_id

  35. list_project_membersRead only

    List project members

    List members and pending invites for a project. Use invite_project_member to add; use revoke_project_invite for pending tokens; use remove_project_member for accepted collaborators. Read-only.

    project_id

  36. list_projectsRead only

    List projects

    List hosting projects the caller owns or is invited to (ids, names, suffixes). Use get_project for one project's settings; use get_preview_url for the public URL (per-deploy alias on Pro/Scale, live host on Free). Read-only; does not create a project.

  37. list_site_eventsRead only

    List site events

    Webmaster inbox (Pro/Scale): form.submitted, collection.updated (agent vs owner_edit), check.completed, deploy.live. Default last 7 days, max 100. Pass since from the last session. Forms still email the owner. Read-only.

    project_id since limit

  38. mpp_upgrade

    MPP upgrade

    Start or complete Pro/Scale via Machine Payments Protocol. Requires nv_ + verified email. First call returns a 402 Payment challenge; retry with payment_authorization (Payment credential) or _meta org.paymentauth/credential. Use after a 2nd project or a 402 — never after the first live URL.

    plan payment_authorization

  39. publish_html

    Publish HTML

    Publish one HTML document (report, dashboard, Claude-style artifact) as index.html and deploy. Omit project_id to create a project. Hosted MCP cannot read local files — pass the HTML string (read the file first). Returns url, project_id, and deployment. Poll get_deployment_status until live or failed. For multi-file sites use the upload + deploy loop instead. Re-call with the same project_id to replace the live page.

    html title project_id force

  40. put_site_brief

    Put site brief

    Write the private webmaster brief (Pro/Scale, max 64 KB). What the site is, which /data files matter, form ids, owner email, what not to touch. Empty string clears it. Survives deploys.

    project_id brief

  41. put_site_data

    Put live site JSON

    Write /data/{name}.json on the live site without a deploy (Pro/Scale). Page JS keeps fetch("/data/{name}.json"). JSON must be an object or array, max 256 KB. Include the file in the next deploy or a repo upload that omits it can wipe it. Do not store secrets — the URL is public. Free: upload the JSON and call deploy instead.

    project_id name json

  42. reissue_keyChanges data

    Reissue API key

    Mint a new primary account nv_ key from email OTP. No Bearer key required. WARNING: revokes the previous primary account key; named keys (create_api_key) keep working unless revoke_all is true. Also verifies email if needed.

    email code revoke_all

  43. remove_project_memberChanges data

    Remove project member

    Remove an accepted collaborator and revoke their project API keys. Owner-only for admins. For a pending invite, use revoke_project_invite instead. Irreversible; they must be invited again.

    project_id account_id

  44. resend_verification

    Resend verification

    Email a new OTP (also used for reissue_key). No Bearer key required. Works when already verified.

    email

  45. revoke_project_inviteChanges data

    Revoke project invite

    Cancel a pending invite so the token no longer works. Does not remove someone who already accepted — use remove_project_member for that. Irreversible for that invite_id; send a new invite_project_member if needed.

    project_id invite_id

  46. rollback

    Rollback live site

    Re-promote a previous successful snapshot to https://{suffix}.novence.ai without a new upload. Pro/Scale only (HTTP 402 on Free). Omit deployment_id to restore the version live immediately before the current one (a second rollback undoes the first). The 5 most recently live versions are retained. HTML and unhashed CSS/JS use Cache-Control max-age=60 — hard-refresh or wait. Fingerprinted filenames stay cached. Does not run Lighthouse or increment deploys_count.

    project_id deployment_id

  47. run_checks

    Run quality checks

    Start a Lighthouse, a11y, and link check cycle on the latest deployment. Does not publish a new deploy — use deploy for that. Then poll get_checks_results (not get_deployment_status) until scores appear. Unverified accounts skip checks on deploy; this still queues a cycle when allowed.

    project_id

  48. set_redirects

    Set redirects

    Write /_redirects (Netlify subset) into staging. Call deploy afterwards to publish. SPA History routing: /* /index.html 200. Exact files always win. Optional custom 404 is a separate /404.html upload. Does not write the live prefix.

    project_id body

  49. update_form

    Update form

    Patch an existing Novence form (name, slug, fields, notify_email, honeypot, active|disabled). Partial update: omitted fields stay unchanged. Use create_form for a new form; use list_forms to get form_id. Does not delete submissions.

    project_id form_id name slug fields notify_email honeypot_field status

  50. update_project_member

    Update project member role

    Change a collaborator's role. Only the owner can grant or demote admin. Use remove_project_member to revoke access entirely. Does not affect pending invites — use revoke_project_invite for those.

    project_id account_id role

  51. update_project_settings

    Update project settings

    Update project name, description, check thresholds, analyticsEnabled (cookieless edge traffic; off by default), shareGateEmails (optional OTP gate on platform hosts only; empty = public), siteMcp (off | read | forms visitor MCP on Pro/Scale), or owner-edit (data_edit_emails + data_edit_names, optional data_edit_path; Pro/Scale, off by default).

    project_id name description check_thresholds analytics_enabled share_gate_emails site_mcp data_edit_emails data_edit_names data_edit_path

  52. verify_email

    Verify email

    Confirm the email OTP (15 min TTL). No Bearer key required. Call after the first live URL, before checkout/mpp_upgrade.

    email code

Is this yours?

Claim it to hear the moment it breaks, correct this page and add your own ways to use it.

A test is the handshake and the tool list: no tool was called. Names and descriptions are as listed by whoever registered the server; we haven't checked them.

Back to Tested MCP Servers