{"serverInfo":{"name":"golivemcp","title":"GoLive MCP","version":"0.1.0"},"description":"GoLive MCP: your agents build, we help you go live. One MCP server for the last mile of shipping software: check and buy domains inside a budget, manage DNS, set up email, deploy from GitHub, set environment variables and rotate secrets without ever reading them back, provision storage, route a hostname to an app, and run security, privacy and regulation, and patent audits before launch.","instructions":"GoLive MCP takes what an agent built and puts it live: domains, DNS, email, deploys, environment and secrets, storage, routing, and pre-launch audits (security, privacy and regulation, patents). Every tool that changes something accepts dry_run: true and returns the plan first; destructive tools need confirm set to the target; anything that spends money needs an open budget and a reason. Secret values go in and never come back out. Start with check_domain, deploy_status or budget_status.","transport":{"type":"streamable-http","url":"https://golivemcp.com/mcp"},"authentication":{"required":true,"schemes":["oauth2","bearer"],"note":"OAuth 2.1 (dynamic client registration, PKCE) or an API key in x-api-key / Authorization: Bearer. Invite-only beta."},"tools":[{"name":"check_domain","title":"Check a domain","description":"Is a domain available, and what does it cost to register and renew? Free, no side effects.","annotations":{"readOnlyHint":true,"destructiveHint":false}},{"name":"buy_domain","title":"Buy a domain","description":"Registers a domain and creates its Cloudflare zone. Spends money: needs an open golive domains budget AND an open fleet budget, a reason, and confirm equal to the domain. Returns the domain and zone id, never a credential.","annotations":{"readOnlyHint":false,"destructiveHint":true}},{"name":"list_domains","title":"List domains","description":"Domains (Cloudflare zones) golive can manage, with their status.","annotations":{"readOnlyHint":true,"destructiveHint":false}},{"name":"domain_status","title":"Domain status","description":"Whether a domain's Cloudflare zone is active, and the nameservers it should point at.","annotations":{"readOnlyHint":true,"destructiveHint":false}},{"name":"list_records","title":"List DNS records","description":"DNS records of a zone on our Cloudflare account, optionally filtered by name or type.","annotations":{"readOnlyHint":true,"destructiveHint":false}},{"name":"upsert_record","title":"Create or update a DNS record","description":"Creates a record, or updates the one with the same name and type. Zones on our Cloudflare account only.","annotations":{"readOnlyHint":false,"destructiveHint":false}},{"name":"delete_record","title":"Delete a DNS record","description":"Deletes one DNS record by id. Destructive: confirm with the record id.","annotations":{"readOnlyHint":false,"destructiveHint":true}},{"name":"setup_domain_email","title":"Set up email on a domain","description":"Adds the domain to AI Mail MCP and applies its MX, SPF, DKIM and DMARC records (zones on our Cloudflare account), so the domain can send and receive.","annotations":{"readOnlyHint":false,"destructiveHint":false}},{"name":"create_mailbox","title":"Create a mailbox","description":"Creates a mailbox (e.g. hello@example.com) on a domain already set up for email.","annotations":{"readOnlyHint":false,"destructiveHint":false}},{"name":"create_app","title":"Create an app from a repo","description":"Creates a new service that deploys from a GitHub repository branch, and registers it. Provisions a billable resource: needs an open resources budget.","annotations":{"readOnlyHint":false,"destructiveHint":false}},{"name":"deploy","title":"Deploy","description":"Deploys the latest commit of the app's branch (or a given commit).","annotations":{"readOnlyHint":false,"destructiveHint":false}},{"name":"deploy_status","title":"Deploy status","description":"The current and recent deployments of an app: status, commit, and when.","annotations":{"readOnlyHint":true,"destructiveHint":false}},{"name":"logs","title":"Read logs","description":"Recent runtime or build log lines of an app, with secrets scrubbed by imagia.","annotations":{"readOnlyHint":true,"destructiveHint":false}},{"name":"rollback","title":"Roll back","description":"Redeploys the previous successful deployment (or a given one). Destructive: replaces what is live; confirm with the app id.","annotations":{"readOnlyHint":false,"destructiveHint":true}},{"name":"restart","title":"Restart","description":"Restarts the running deployment without rebuilding.","annotations":{"readOnlyHint":false,"destructiveHint":false}},{"name":"set_env","title":"Set an environment variable","description":"Sets one variable on an app and redeploys it. The value goes in and is never echoed: the answer carries its length and last 4 characters only. Confirm with the variable name.","annotations":{"readOnlyHint":false,"destructiveHint":true}},{"name":"list_env","title":"List environment variables","description":"Variable NAMES on an app, each with its length and last 4 characters. Never values.","annotations":{"readOnlyHint":true,"destructiveHint":false}},{"name":"rotate_secret","title":"Rotate a secret","description":"Generates a new random value for a secret, writes it to every service that declares it, redeploys them and verifies. The value is generated server side and never returned. Confirm with the variable name.","annotations":{"readOnlyHint":false,"destructiveHint":true}},{"name":"create_bucket","title":"Create a bucket","description":"Creates an S3-compatible object storage bucket for an app. Provisions a billable resource: needs an open resources budget.","annotations":{"readOnlyHint":false,"destructiveHint":false}},{"name":"bucket_credentials","title":"Give an app bucket access","description":"Issues credentials scoped to one bucket and writes them straight into the app's environment. Returns the variable names only; the credentials never pass through the agent.","annotations":{"readOnlyHint":false,"destructiveHint":false}},{"name":"create_volume","title":"Attach a volume","description":"Creates a persistent disk and mounts it on the app. Provisions a billable resource: needs an open resources budget.","annotations":{"readOnlyHint":false,"destructiveHint":false}},{"name":"attach_domain","title":"Attach a hostname to an app","description":"Routes a hostname on one of our zones to an app: a proxied DNS record plus the edge route to the app's generated hostname. No registrar or DNS change outside our account.","annotations":{"readOnlyHint":false,"destructiveHint":false}},{"name":"ssl_status","title":"SSL status","description":"Whether a hostname serves valid HTTPS right now, plus its zone status.","annotations":{"readOnlyHint":true,"destructiveHint":false}},{"name":"security_audit","title":"Start a security audit","description":"Starts a security audit (dependencies, secrets in code, auth, injection, headers) of an imagia project or a git repository. Returns a report id for get_report.","annotations":{"readOnlyHint":false,"destructiveHint":false}},{"name":"compliance_audit","title":"Start a privacy and compliance audit","description":"Starts a compliance audit: privacy policy and terms, data handling, cookies and consent, and applicable regulation (GDPR, CCPA and similar). Returns a report id for get_report.","annotations":{"readOnlyHint":false,"destructiveHint":false}},{"name":"patent_audit","title":"Start a patent audit","description":"Starts a patent risk review of what the app does against published patents, and flags features worth a lawyer's look. Returns a report id for get_report. Not legal advice.","annotations":{"readOnlyHint":false,"destructiveHint":false}},{"name":"get_report","title":"Get an audit report","description":"Progress and findings of an audit started with security_audit, compliance_audit or patent_audit; or, given project_id without report_id, the recent reports for that project.","annotations":{"readOnlyHint":true,"destructiveHint":false}},{"name":"generate_logo_options","title":"Generate logo options","description":"Designs 1 to 6 distinct logo marks (default 4) for a brand. Each option has an id, a one-line concept note, a clean square SVG (validated: no scripts, fonts or external references) and a 256 px PNG preview as base64. Costs a model call; dry_run shows the price. Pass an id to export_logo_assets for the favicon and app-icon set.","annotations":{"readOnlyHint":false,"destructiveHint":false}},{"name":"export_logo_assets","title":"Export favicon and app icons","description":"Turns one logo option into a full icon set: favicon.svg, favicon.ico (16, 32, 48), PNGs from 16 to 512, apple-touch-icon (180), icon-192 and icon-512, a web manifest, and the <head> tags. Give option_id from generate_logo_options (kept 24 h) or the svg itself. Files come back base64. Free, no side effects.","annotations":{"readOnlyHint":true,"destructiveHint":false}},{"name":"connect_github","title":"Connect GitHub","description":"Returns a one-time link (30 minutes) that installs the GoLive GitHub App, or adds repos to it, and connects the installation to this account. Open it in a browser signed in to GitHub; GitHub asks you to authorize GoLive so it can confirm you can see the installation. Also lists the installations already connected. GoLive gets read access to code and opens PRs; it never pushes.","annotations":{"readOnlyHint":false,"destructiveHint":false}},{"name":"list_repos","title":"List repositories","description":"Repositories this account's GitHub installations cover, refreshed from GitHub, with the GoLive app and deploy branch each one is linked to. Free.","annotations":{"readOnlyHint":true,"destructiveHint":false}},{"name":"link_repo","title":"Link a repo to an app","description":"Binds a repository and its deploy branch to a GoLive app, so deploys and preflight checks use that repo. The repo must be covered by this account's GitHub installation and the branch must exist.","annotations":{"readOnlyHint":false,"destructiveHint":false}},{"name":"read_repo_file","title":"Read a repo file","description":"One text file from a connected repository at a branch, tag or commit (default: the linked deploy branch, else the default branch), with the commit SHA it was read at. Up to 256 KB; binary files are refused. Free.","annotations":{"readOnlyHint":true,"destructiveHint":false}},{"name":"budget_status","title":"Budget status","description":"What golive may still spend or provision: its own open budgets and the fleet domain budget behind them. Budgets are opened by an operator, never by a tool.","annotations":{"readOnlyHint":true,"destructiveHint":false}},{"name":"get_usage","title":"Usage and spend","description":"What this key has used and been charged: calls, charges and pending holds by tool or by day, plus the account's spend limits and what remains. Refusals and dry runs are listed at $0. Free.","annotations":{"readOnlyHint":true,"destructiveHint":false}},{"name":"audit_log","title":"Audit log","description":"Every mutating attempt through golive, newest first: who, what, dry run or real, outcome (including refusals) and cost. Secret values are never stored.","annotations":{"readOnlyHint":true,"destructiveHint":false}}],"documentation":"https://golivemcp.com/#tools","homepage":"https://golivemcp.com","tools_registry":"https://golivemcp.com/tools.json"}