Deploy a Go API from your AI agent, over MCP
Your AI agent wrote your Go API. Connected to while over MCP, it deploys it too, over HTTPS, with no server to maintain and no nginx to configure.
By Aloïs Oddon, co-founder of Nextmap. Facts checked on November 2, 2026.
Prerequisites
- A Go API, with net/http or your favorite framework.
- An AI agent that works in a terminal: Claude Code, Codex, Cursor or Gemini CLI.
Step 1: Give your agent these instructions
Open your agent in your API’s folder, and paste these instructions into it:
Connect to while with my account (while.sh/agents), then deploy my app.
Without an account, your agent deploys your API as a trial, in one request. To keep it, open the link it gives you and create your account.
With your account, your agent adds while’s MCP server itself. If it asks you to, restart it. On the first call to while, a page opens in your browser. In Claude Code, if it doesn’t open, type /mcp, choose while, then Authenticate. On that page, choose your app, or “A new app”, then click Authorize.
Step 2: Open your API
Your agent gives you your API’s address, for example https://mon-api.while.cloud, over HTTPS.
What your agent does
It writes while.yaml at the root of your API:
apiVersion: while/v1
project: mon-api
services:
- name: web
port: 8080
health:
path: /
Your API reads its port from the PORT variable, and listens on all its addresses2:
port := os.Getenv("PORT")
if port == "" {
port = "8080"
}
log.Fatal(http.ListenAndServe(":"+port, nil))
Google’s helloworld sample deploys on while as is, in under a minute1.
Add a database
You, to your agent: Add a PostgreSQL database.
Your agent declares the database in while.yaml, and its address reaches your code in DATABASE_URL. It’s backed up every day, and can go back to a precise moment if needed.
Go faster with a cache
You, to your agent: Add a cache for the most-read pages.
Your agent declares a Redis-compatible cache, connected to your code with its password.
Restrict your API to your colleagues
You, to your agent: Restrict the API to people in the company.
Your agent adds two lines to the service:
access: internal
email_domains: [acme.com]
Once your Google Workspace or Microsoft 365 is linked to while, on the Pro plan, your colleagues open it with their usual account, and your code receives their name and email address, with no sign-in page to write.
Move to your own domain
You, to your agent: Put the API on api.acme.com.
Your agent declares the domain, you add the DNS records it gives you, and the HTTPS certificate follows.
See a new version before you deploy it
You, to your agent: Show me the new version before you deploy it.
Your agent opens a preview, at its own address, with its own data. You look at it, then your agent puts it into production.
Go back to the previous version
You, to your agent: Go back to the previous version.
In the 30 minutes after a deployment, the previous version comes back in a second. After that, it takes a few seconds. Once the previous version is back, your agent reads what broke in while’s logs, fixes it and deploys again.
In the docs: PostgreSQL databases, Valkey cache (Redis), Scheduled jobs, Internal access, Custom domain and Previews.
Next steps
Sources
- Google Cloud, the Go run/helloworld sample (net/http, PORT and Dockerfile), accessed November 2, 2026
- Go, the net.Listen function (an empty host listens on all addresses), accessed November 2, 2026