mcp-hetzner-dns
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| HETZNER_API_TOKEN | Yes | Hetzner Cloud API token (project-scoped) | |
| HETZNER_API_BASE_URL | No | Base URL of the API (default: https://api.hetzner.cloud/v1) | https://api.hetzner.cloud/v1 |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_zonesA | List the DNS zones of the Hetzner Cloud project, including status, mode, default TTL, assigned nameservers and record counts. |
| get_zoneA | Get the full details of a single DNS zone. |
| create_zoneA | Create a new DNS zone. Use mode "primary" for zones managed at Hetzner, or "secondary" with primary_nameservers to transfer the zone from external primaries. A primary zone can optionally be initialized from a zone file. |
| update_zoneA | Update the labels of a DNS zone. The given set replaces all existing labels. (Other zone properties are changed via the dedicated change_zone_* tools.) |
| delete_zoneA | Permanently delete a DNS zone including all its records. This is irreversible. Requires confirm=true. |
| export_zonefileA | Export the full contents of a DNS zone as a zone file (BIND format). |
| import_zonefileA | Import a zone file (BIND format) into an existing primary zone. This REPLACES the current records of the zone. Requires confirm=true. Consider export_zonefile first as a backup. |
| change_zone_ttlA | Change the default Time To Live (TTL) of a DNS zone. Applies to RRSets without an explicit TTL. |
| change_zone_protectionA | Enable or disable the delete protection of a DNS zone. A protected zone cannot be deleted until the protection is removed. |
| change_primary_nameserversA | Replace the primary nameservers of a secondary zone (the servers Hetzner transfers the zone from). Only applicable to zones in secondary mode. |
| list_rrsetsA | List the RRSets (DNS record sets) of a zone, including their records, TTLs and protection status. |
| get_rrsetA | Get a single RRSet (DNS record set) of a zone by name and type. |
| create_rrsetA | Create a new RRSet (DNS record set) in a zone, e.g. an A record for "www". Fails if an RRSet with the same name and type already exists — use set_records or add_records in that case. |
| update_rrsetA | Update the labels of an RRSet. The given set replaces all existing labels. (Records and TTL are changed via set_records/add_records/remove_records and change_rrset_ttl.) |
| delete_rrsetA | Permanently delete an RRSet (DNS record set) with all its records. This is irreversible. Requires confirm=true. |
| set_recordsA | Replace ALL records of an RRSet with the given records. Existing records not listed are removed. Use add_records to append instead. |
| add_recordsA | Add records to an RRSet. Existing records are kept. Creates the RRSet if it does not exist yet. |
| remove_recordsA | Remove specific records (matched by value) from an RRSet. Removing the last record deletes the RRSet. |
| change_rrset_ttlA | Change the Time To Live (TTL) of an RRSet. Pass null to fall back to the zone's default TTL. |
| change_rrset_protectionA | Enable or disable the change protection of an RRSet. A protected RRSet cannot be changed or deleted until the protection is removed. |
| list_zone_actionsA | List actions (asynchronous operations like zone file imports) of all zones, or of a single zone if one is given. |
| get_zone_actionA | Get a single zone action by ID to check its status and result. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ni-c/mcp-hetzner-dns'
If you have feedback or need assistance with the MCP directory API, please join our Discord server