Nimbus

For machines

Working with Nimbus from an AI agent

There are three separate things here, and they are for three different moments. Pick the one that matches what your agent is doing.

Operating the box MCP
An assistant that should be able to act — create a site, provision a database, unlock an address, restart a container. Connect it to the panel’s MCP server and it discovers the tools it may call.
Scripting the box HTTP API
The same actions as JSON over HTTP, for a caller that is a shell script or a CI job rather than a model.
Working in a site’s repo AGENTS.md
A coding agent editing an application that is hosted here. It does not need the panel at all — it needs to know how deployment works. Drop the file below into the repository.

Connect

The MCP server

Each box exposes its own endpoint at /mcp on the panel domain. Tools are scoped to the token’s account, so an agent can never do more than the person who issued it.

Claude Code .mcp.json
{
  "mcpServers": {
    "nimbus": {
      "url": "https://panel.example.com/mcp",
      "headers": {
        "Authorization": "Bearer $NIMBUS_TOKEN"
      }
    }
  }
}
Anything else HTTP

The API mirrors the panel’s vocabulary one-to-one, so the guide doubles as its documentation.

$ curl -H "Authorization: Bearer $NIMBUS_TOKEN" \
    https://panel.example.com/api/sites
Scope A token belongs to a panel account and inherits its role. An unlock_user token can unlock an address and nothing else; only an admin token can create or delete a site. Treat one like the password it replaces.

Drop-in

AGENTS.md, for a site’s repository

When a coding agent is asked to add deployment to an app hosted here, it needs facts about this platform that are not in the repository it is looking at. AGENTS.md is those facts, written for a machine to act on.

Save it at the root of the site’s repository, keeping the filename. That name is the convention — coding agents look for AGENTS.md in a repo root the way a person looks for README.md, and renaming it to something more descriptive is what stops it being found.

$ curl -O https://panel.nimbus-online.net/AGENTS.md
Give it the three facts The file tells the agent what to write, but not which site it is writing for. Before you set it going, give it the runner label, the domain and the stack — all three are on the site’s Deployments page in the panel. Guessing the runner label produces a workflow that never runs.

Reading, not acting

This whole site, as text

For an agent that just needs to understand the platform, every page here is published as markdown too, and indexed the standard way.

/llms.txt
The index: one line per page, with a description. Start here — it is small on purpose.
/llms-full.txt
Every page concatenated, for a single fetch.
Any page .md
Append .md to any page URL — /help/sites.html.md is the markdown of /help/sites.html. A URL with no filename takes index.html.md, so /help/ becomes /help/index.html.md. That is the llmstxt.org convention: appended, not substituted.