{"name":"io.github.lazyants/hetzner","slug":"lazyants-hetzner","title":null,"description":"MCP server for the Hetzner Cloud API — servers, networks, volumes, firewalls, and more.","url":"https://mcp.market/server/lazyants-hetzner","rating":null,"grade":"B","score":83,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":38,"stars":5,"forks":3,"downloads_week":1146,"last_push_at":"2026-10-23T15:30:51.000Z","license":"NOASSERTION"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/lazyants/hetzner-mcp-server","website":null,"version":"4.0.2","remotes":[],"packages":[{"registryType":"npm","identifier":"@lazyants/hetzner-mcp-server","version":"4.0.2","transport":{"type":"stdio"},"environmentVariables":[{"description":"Hetzner Cloud API token.","isRequired":true,"isSecret":true,"name":"HETZNER_API_TOKEN"},{"description":"Storage Box API token; falls back to HETZNER_API_TOKEN when omitted.","isSecret":true,"name":"HETZNER_STORAGE_API_TOKEN"}]}],"tools":[{"name":"hetzner_add_lb_service","description":"Add a service (port listener with forwarding rules) to a load balancer.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_add_lb_target","description":"Add a target (server, label selector, or IP) to a load balancer.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_add_route","description":"Add a route to an existing network.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_add_subnet","description":"Add a subnet to an existing network.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_apply_firewall","description":"Apply a firewall to one or more servers or label selectors.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_assign_floating_ip","description":"Assign a floating IP to a server in the same location.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_assign_primary_ip","description":"Assign a primary IP to a server.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_attach_iso","description":"Attach an ISO image to a server. The server must be rebooted to boot from the ISO.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_attach_lb_to_network","description":"Attach a load balancer to a network.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_change_floating_ip_protection","description":"Enable or disable delete protection on a floating IP to guard against accidental destruction.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_change_floating_ip_rdns","description":"Change the reverse DNS entry for a floating IP. Set dns_ptr to null to reset.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_change_image_protection","description":"Enable or disable delete protection on a snapshot or backup image to guard against accidental destruction.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_change_ip_range","description":"Expand the IP range of an existing network. The new CIDR range must contain the current range; shrinking is not supported.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_change_lb_algorithm","description":"Change the balancing algorithm of a load balancer.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_change_lb_dns_ptr","description":"Change the reverse DNS entry for one of a load balancer's public IP addresses. Set dns_ptr to null to reset to the default.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_change_lb_type","description":"Change the type (plan) of a load balancer.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_change_load_balancer_protection","description":"Enable or disable delete protection on a load balancer to guard against accidental destruction.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_change_network_protection","description":"Enable or disable delete protection on a network to guard against accidental destruction.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_change_primary_ip_protection","description":"Enable or disable delete protection on a primary IP to guard against accidental destruction.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_change_primary_ip_rdns","description":"Change the reverse DNS entry for a primary IP. Set dns_ptr to null to reset.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_create_certificate","description":"Create an uploaded certificate (provide PEM data) or a managed certificate (provide domain names).","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_create_firewall","description":"Create a new firewall with optional rules and resource assignments.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_create_floating_ip","description":"Create a new floating IP. Either home_location or server must be provided.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_create_image","description":"Create a snapshot image from an existing server.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_create_load_balancer","description":"Create a new load balancer with the specified type, location, and optional targets and services.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_create_network","description":"Create a new network with the specified IP range, and optionally subnets and routes.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_create_placement_group","description":"Create a new placement group to control server distribution across hosts.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_create_primary_ip","description":"Create a new primary IP with the specified type, optional location, and optional assignee type.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_create_server","description":"Create a new server with the specified type, image, and configuration options.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_delete_certificate","description":"Delete a certificate. It must not be in use by any load balancer.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_delete_firewall","description":"Delete a firewall. It must be removed from all resources first.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_delete_floating_ip","description":"Delete a floating IP permanently. Since 2026-05-01 the floating IP must be unassigned first; otherwise the API returns the must_be_unassigned error code.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_delete_image","description":"Permanently delete a snapshot or backup image.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_delete_lb_service","description":"Remove a service from a load balancer by its listen port.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_delete_load_balancer","description":"Permanently delete a load balancer.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_delete_network","description":"Delete a network. All subnets and routes within it will also be deleted.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_delete_placement_group","description":"Delete a placement group. All servers must be removed from it first.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_delete_primary_ip","description":"Delete a primary IP permanently. Since 2026-05-01 the primary IP must be unassigned first; otherwise the API returns the must_be_unassigned error code.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_delete_route","description":"Remove a route from an existing network.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_delete_server","description":"Permanently delete a server. This destroys the server and all associated data.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_delete_subnet","description":"Remove a subnet from an existing network by its IP range.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_detach_iso","description":"Detach an ISO image from a server. The server must be rebooted for the change to take effect.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_detach_lb_from_network","description":"Detach a load balancer from a network.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_disable_lb_public_interface","description":"Disable the public network interface of a load balancer, removing its public connectivity.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_enable_lb_public_interface","description":"Enable the public network interface of a load balancer so it can be reached over public IPs.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_get_certificate","description":"Get details of a specific certificate by its ID.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_get_firewall","description":"Get details of a specific firewall by its ID.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_get_floating_ip","description":"Get details of a specific floating IP by ID.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_get_image","description":"Get details of a specific image by ID.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_get_iso","description":"Get details of a specific ISO image by ID.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_get_lb_metrics","description":"Get metrics for a load balancer over a specified time range.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_get_load_balancer","description":"Get details of a specific load balancer by its ID.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_get_location","description":"Get details of a specific location by ID.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_get_network","description":"Get details of a specific network by its ID.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_get_placement_group","description":"Get details of a specific placement group by ID.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_get_pricing","description":"Get current Hetzner Cloud prices, optionally selecting one resource category or traffic prices. Currency and VAT rate are included with filtered results.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_get_primary_ip","description":"Get details of a specific primary IP by ID.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_get_server","description":"Get details of a specific server by ID.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_get_server_type","description":"Get details of a specific server type, including specs and pricing.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_list_certificate_actions","description":"List all actions performed on a specific certificate, such as issuance and renewal retries.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_list_certificates","description":"List all SSL/TLS certificates in the project, with optional filtering.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_list_firewall_actions","description":"List all actions performed on a specific firewall, such as rule and resource attachment changes.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_list_firewalls","description":"List all firewalls in the project, with optional filtering by name or labels.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_list_floating_ip_actions","description":"List all actions performed on a specific floating IP, such as assign, unassign, and rDNS changes.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_list_floating_ips","description":"List all floating IPs in the project, with optional filtering by name or label.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_list_image_actions","description":"List all actions performed on a specific image, such as snapshot creation and protection changes.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_list_images","description":"List all available images, including system, snapshot, and backup images.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_list_isos","description":"List all available ISO images for mounting on servers.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_list_lb_types","description":"List all available load balancer types with pricing and limits.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_list_load_balancer_actions","description":"List all actions performed on a specific load balancer, such as service changes and target attachments.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_list_load_balancers","description":"List all load balancers in the project, with optional filtering by name or labels.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_list_locations","description":"List all available Hetzner Cloud locations (regions).","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_list_network_actions","description":"List all actions performed on a specific network, such as subnet and route changes.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_list_network_members","description":"List resources attached to a network, with their subnet, IP addresses, and attachment status. Filter by resource type, subnet, or status.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_list_networks","description":"List all networks in the project, with optional filtering by name or labels.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_list_placement_groups","description":"List all placement groups in the project.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_list_primary_ip_actions","description":"List all actions performed on a specific primary IP, such as assign, unassign, and rDNS changes.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_list_primary_ips","description":"List all primary IPs in the project, with optional filtering by name, label, or IP address.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_list_server_types","description":"List server types with specs, pricing, and per-location availability and recommendations.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_list_servers","description":"List all servers in the project, with optional filtering by name, label, or status.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_power_off","description":"Force power off a server immediately. This is like pulling the power cord.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_power_on","description":"Start a stopped server by powering it on.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_reboot","description":"Send an ACPI reboot signal to the server for a soft reboot.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_remove_firewall","description":"Remove a firewall from one or more servers or label selectors.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_remove_lb_target","description":"Remove a target from a load balancer.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_retry_certificate","description":"Retry issuance or renewal of a managed certificate that has failed.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_set_firewall_rules","description":"Replace all rules of a firewall with a new set of rules.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_unassign_floating_ip","description":"Unassign a floating IP from the server it is currently assigned to.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_unassign_primary_ip","description":"Unassign a primary IP from the server it is currently assigned to.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hetzner_update_certificate","description":"Update a certificate name or labels.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_update_firewall","description":"Update a firewall name or labels.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_update_floating_ip","description":"Update a floating IP's name, description, or labels.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_update_image","description":"Update an image's description, type, or labels.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_update_lb_service","description":"Update an existing service on a load balancer.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_update_load_balancer","description":"Update a load balancer name or labels.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_update_network","description":"Update properties of a network such as name, labels, or vSwitch route exposure.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_update_placement_group","description":"Update a placement group's name or labels.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_update_primary_ip","description":"Update a primary IP's name, auto_delete setting, or labels.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_update_server","description":"Update a server's name or labels.","write_action":true,"price_micros":0,"input_schema":null},{"name":"hetzner_wait_for_action","description":"Wait for a resource action to reach success or error and return its full details. The timeout includes API requests and rate-limit delays.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":83,"grade":"B","scanned_at":"2026-11-02T06:14:17.445Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-11-02T06:14:17.405Z","components":{"code":{"score":25,"max":25,"notes":["73 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":6,"max":15,"notes":["static API keys via environment variables"]},"maintenance":{"score":15,"max":15,"notes":["last push 10 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"@lazyants/hetzner-mcp-server","version":"4.0.2","found":true,"license":"FSL-1.1-MIT","hasInstallScripts":false,"dependencyCount":3,"publishedAt":"2026-10-23T15:33:01.014Z","repositoryUrl":"git+https://github.com/lazyants/hetzner-mcp-server.git","weeklyDownloads":1146}],"repo":{"found":true,"owner":"lazyants","repo":"hetzner-mcp-server","archived":false,"pushedAt":"2026-10-23T15:30:51Z","stars":5,"forks":3,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/249065?v=4","ownerCreatedAt":"2010-04-21T14:52:18Z","license":"NOASSERTION"},"icon":{"url":"https://avatars.githubusercontent.com/u/249065?v=4&s=128","source":"registry"},"presence":{"stars":5,"forks":3,"downloadsWeek":1146,"license":"NOASSERTION","lastPushAt":"2026-10-23T15:30:51.000Z","score":38}}}},"grade_history":[{"kind":"downgrade","fromGrade":"A","toGrade":"B","reason":"score 83","createdAt":"2026-11-02T06:14:19.467Z"}],"reviews":[]}