About hetzner
hetzner is an MCP server for managing Hetzner Cloud resources through its API. It suits users who want to inspect or operate infrastructure from an MCP client, with commands that can expose all tools or a selected resource group.
Key features
- 01Manage servers, networks, and volumes
- 02Manage firewalls, DNS, and load balancers
- 03Choose resource-specific server commands
- 04Access the API reference as a resource
Use cases
- 01Inspect Hetzner Cloud infrastructure from an MCP client
- 02Create and manage cloud resources using API operations
- 03Load only networking or another resource group
MCP support
Exposes Hetzner Cloud API operations to MCP clients for managing cloud resources. It supports stdio configuration and provides an API reference resource at `reference://hetzner/api`.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
npx -y @lazyants/hetzner-mcp-serverHETZNER_API_TOKENSecretHetzner Cloud API token.HETZNER_STORAGE_API_TOKENSecretStorage Box API token; falls back to HETZNER_API_TOKEN when omitted.Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.
Tools
185Saved tool list · updated 5d ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| name | string | No | Filter by server name |
| page | integer | No | Page number |
| sort | any | No | Sort field, e.g. "id:asc" or "name:desc"; pass an array for multiple sort fields |
| status | enum | No | Filter by server statusrunning | initializing | starting | stopping | off | deleting | migrating | rebuilding | unknown |
| per_page | integer | No | Results per page (max 50) |
| label_selector | string | No | Label filter, e.g. "env=prod,tier=web" |
Details
From the project READMEHetzner MCP Server
Manage Hetzner Cloud servers, networks, storage, DNS and load balancers from an MCP client. Requires Node.js 22.12 or newer.
Setup
Create an API token in the Hetzner Cloud Console. Use a read-only token for inspection; write operations can create billable resources.
For Claude Code:
claude mcp add --env HETZNER_API_TOKEN=your-token --transport stdio \
hetzner -- npx -y @lazyants/hetzner-mcp-server
For Claude Desktop and clients that accept mcpServers JSON:
{
"mcpServers": {
"hetzner": {
"command": "npx",
"args": ["-y", "@lazyants/hetzner-mcp-server"],
"env": { "HETZNER_API_TOKEN": "your-token" }
}
}
}
For a separate Storage Box token, also set HETZNER_STORAGE_API_TOKEN.
Otherwise, Storage Box tools use HETZNER_API_TOKEN.
Smaller servers
The default command exposes all tools. To load only one resource group, run a split command:
npx -y -p @lazyants/hetzner-mcp-server hetzner-mcp-networking
In a client configuration, replace args with:
["-y", "-p", "@lazyants/hetzner-mcp-server", "hetzner-mcp-networking"]
Other groups: servers, load-balancers, ips, storage, storage-boxes, config and dns.
Use the same hetzner-mcp- command prefix and token configuration.
Every server exposes the API reference at reference://hetzner/api.
See CHANGELOG.md for release changes.
Releasing
Maintainer instructions: release guide.
License
FSL-1.1-MIT. Versions 1.1.1 and earlier remain MIT-licensed.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.