"fra1-web-03 son bir haftada ne kadar CPU yedi?"
Hetzner'in tuttuğu CPU, disk ve ağ metriklerini çeker. Yük dengeleyici sorduysanız bağlantı sayısı, istek sayısı ve bant genişliği gelir.
Sunucularımızın durumuna bakmak için panele girip tıklamaktan sıkıldık. Artık soruyu zaten açık olan istemcide soruyoruz, cevap oradan geliyor. Aracı MIT lisansıyla açtık: ücretsiz, kaynak kodu herkese açık.
Bir sunucunun durumunu merak ettiğinizde yapılan iş hep aynıydı: tarayıcıyı aç, Hetzner Console'a gir, doğru projeyi seç, makineyi bul, metrik sekmesine tıkla. Tek bir soru için beş adım. hetzner-mcp, o soruyu zaten açık olan yapay zekâ istemcisinde sorup cevabı orada almanızı sağlıyor. Ekipte Claude Code, Claude Desktop ve Cursor kullanıyoruz; araç bunların hepsiyle konuşan bir MCP sunucusu.
Kendi altyapımız için yazdık, her gün kullanıyoruz, sonra MIT lisansıyla açtık. Ücretli sürümü yok, buna bağlı bir hizmet de satmıyoruz. İndirin, kendi makinenizde çalıştırın.
Aşağıdakiler uydurma örnek değil; günlük olarak yazdığımız cümleler.
"fra1-web-03 son bir haftada ne kadar CPU yedi?"
Hetzner'in tuttuğu CPU, disk ve ağ metriklerini çeker. Yük dengeleyici sorduysanız bağlantı sayısı, istek sayısı ve bant genişliği gelir.
"proxy projesinde kaç makine var, hangileri kapalı?"
Kaynak araması adla, tipe göre listeleyerek ya da etiket seçiciyle çalışır. Tek bir aramayla yapılandırdığınız bütün bağlantıları birden tarayabilirsiniz.
"şu alan adının A kaydı nereyi gösteriyor?"
DNS bölgeleri ve kayıt kümeleri kendi aracında duruyor. Okumak için ek bir bayrağa gerek yok; değiştirmek için var.
"cpx31 aylık kaça geliyor, KDV dahil mi?"
Hetzner'in yayınladığı fiyatı, para birimi ve KDV oranıyla birlikte döndürür. Tahmin etmez, listeyi okur.
Hetzner'de en çok kafa karıştıran şey bu. Bir Cloud API jetonu, hangi projenin içinde üretildiyse yalnızca onu görür — API'de "proje" diye bir parametre yoktur, dolayısıyla jetonu başka bir projeye çeviremezsiniz. Üç hesapta on projeniz varsa elinizde on jeton vardır. Kiraladığınız fiziksel sunucular ise apayrı bir API'nin arkasındadır; Storage Box'lar da öyle.
Araç bunu gizlemeye çalışmıyor, görünür kılıyor: her jeton adlandırılmış bir bağlantı oluyor, her çağrı bağlantıyı adıyla alıyor, arama tek seferde hepsini birden tarayabiliyor. Yüzey de her zaman görünür duruyor, çünkü Cloud tarafındaki bir sunucu saatlik faturalanan bir sanal makine, Robot tarafındaki bir sunucu ise aylık sözleşmeli ve fesih süresi olan kiralık donanım. İkisini aynı kelimeye sıkıştırmak, "sunucuyu yeniden başlat" cümlesini kimsenin güvenle cevaplayamayacağı bir soruya çevirir.
Tek bir proje
Sanal sunucular, diskler, ağlar, güvenlik duvarları, yük dengeleyiciler ve DNS. Bir Cloud jetonu hangi projenin içinde üretildiyse yalnızca onu görür.
Hesabın tamamı
Storage Box'lar bu ayrı API'nin arkasında duruyor. Cloud jetonunuz buraya ulaşmaz; hesap jetonu ayrı üretilir.
Hesabın tamamı
Kiraladığınız fiziksel sunucular. Bambaşka bir adres, bambaşka bir kimlik doğrulama. Bu yüzey v0.3 için planlandı, henüz yayında değil.
Hetzner'in API'lerinde 220 canlı operasyon var. Hepsini ayrı birer araç olarak yayımlamak kolaydı, ama istemci açılırken bütün şemaları okur; model hiç çağırmayacağı tanımlara bağlam bütçesi harcar. Bu yüzden 13 araç yayımlanıyor: kaynak arama, tek kaynağı tam okuma, bir Action'ı sonuna kadar takip etme, metrik okuma, fiyat okuma, sunucu açma, güç ve yaşam döngüsü kontrolü, DNS ve etiket. Yani operatörün gerçekten tekrarladığı döngü.
Geri kalan her şey aranabilir bir katalogdan geçiyor: önce operasyon aranıyor, sonra şeması okunuyor, sonra çalıştırılıyor. Katalog Hetzner'in kendi OpenAPI tanımlarından üretiliyor ve depoya işleniyor — her istemci bu süreci sıfırdan başlattığı için 3,4 MB spesifikasyonu her açılışta ayrıştırmak dosyadan okumaktan kötü olurdu.
Bir ayrıntı: 220 operasyonun 143'ü sonuç değil bir Action döndürüyor, iş çağrıdan sonra oluyor. O yüzden beklemek burada kolaylık değil varsayılan, ve her yanıt işin gerçekten bitip bitmediğini ayrı bir alanda söylüyor. Koşan bir Action'ı bitmiş gibi raporlayan bir araç, hiç beklemeyenden kötüdür — çünkü ayırt edemezsiniz.
Bir dil modeline API anahtarı vermek ciddi bir karar. Tasarımın en çok uğraştığımız kısmı burası.
Silme, yeniden kurma ve üzerine yazma işlemleri tek bir araçta toplanıyor ve o araç HETZNER_ALLOW_DESTRUCTIVE=true verilmeden hiç kaydedilmiyor. Listelenip reddeden bir araç değil — istemcinin araç listesinde yok. Yıkıcı olmayan araçları otomatik onaylayan bir istemci, gerçekten yıkıcı olmayan bir şeyi onaylamış oluyor.
HETZNER_READ_ONLY=true ya da tek bir bağlantıda readOnly açıkken GET dışındaki her çağrı, soket açılmadan HTTP istemcisinde reddedilir. Bağlantı bu tavanın altından çıkamaz; kendi ayarıyla geri açamaz.
baseUrl, url, host ya da kimlik bilgisi diye bir parametre yok. connection parametresi, sizin adlandırdığınız bağlantılar üzerinde kapalı bir liste. Bir kaynak adına ya da DNS kaydına saklanmış "şu adrese istek at" talimatının inecek yeri kalmıyor.
Yazma yetkisi verilmiş bir bağlantıda sunucu açmak fazladan bayrak istemez — bunu saklamak yerine görünür kılıyoruz. Katalog o işlemleri costly diye işaretler, bir şey oluşturan çağrının yanıtı Hetzner'in yayınladığı fiyatı meta.billing alanına yazar. Bu, iyi niyetle akıl yürüten bir model için gerçek bir önlem; istem enjeksiyonuna karşı değil. Sizin için doğru takas değilse salt okunur bir jeton kullanın ve yazmayı adını açıkça yazdığınız ayrı bir bağlantıda tutun.
Depoyu klonlayıp npm install && npm run build çalıştırın, sonra node dist/cli.js install deyin. Kurucu makinenizdeki MCP istemcilerini bulur — Claude Code, Claude Desktop, Codex, Cursor, Zed, opencode, Kimi, MiniMax. Ne yazacağını önce gösterir, sadece onayladığınızı yazar. node dist/cli.js install --dry-run farkı gösterir ve hiçbir şeye dokunmaz.
Yazdığı şey bir işaretçi: bir komut ve en fazla bir bağlantı adı. Jeton oraya hiç uğramaz. Anahtar üç yerden okunabilir — bir ortam değişkeni, bir komutun çıktısı (örneğin parola yöneticiniz), ya da işletim sisteminin kimlik deposu.
HETZNER_TOKEN_PROD ve HETZNER_TOKEN_STAGING iki bağlantı demektir; araçlar bağlantıyı adıyla alır. Tek bağlantı yapılandırdıysanız o parametre hiç var olmaz — seçilecek bir şey yoktur. Bağlantı başına ayar isterseniz (salt okunur bir üretim bağlantısı, daha uzun bir zaman aşımı) bir yapılandırma dosyası kullanılır.
Varsayılan kurulum okur. HETZNER_ALLOW_DESTRUCTIVE yıkıcı kapıyı kaydeder, HETZNER_READ_ONLY her yazmayı sunucu genelinde reddeder. doctor komutu neyin yapılandırıldığını ve nesinin bozuk olduğunu söyler.
Bazı işler için başka bir araç daha iyi. Bunu yazmamak size vakit kaybettirir.
Bu bir SSH aracı değil. Hetzner'in API'siyle konuşur, işletim sistemiyle değil. df -h çıktısı, çalışan süreçler ve log dosyaları buradan görünmez; disk metriği hipervizörün gördüğü şeydir.
Altyapınızın istenen halini sürüm kontrolünde, gözden geçirilebilir ve tekrarlanabilir biçimde tutmak istiyorsanız doğru araç OpenTofu ya da Terraform'un hcloud sağlayıcısı. Bu araç soru sormak ve tek seferlik işler için.
Robot yüzeyi v0.3 için planlandı. Bugün kiraladığınız donanımı buradan göremezsiniz; Cloud ve hesap yüzeyleri çalışıyor.
Otuz makineyi aynı anda etiketleyecekseniz ya da uzun bir taşıma planı yürütüyorsanız Hetzner Console'da tıklamak veya hcloud CLI ile betik yazmak daha az sürer. Bu araç tek bir soruya tek bir cevap almak için hızlı.
Üç hesap ve on proje, on ayrı jeton demek. Hepsini tek yerden aratabilmek burada asıl kazancı yaratan şey.
Kod yazarken tarayıcıya geçmeden "bu makine hâlâ ayakta mı" sorusunu sorabilmek, akışı bölmemek demek.
Metrik ve Action geçmişi okumak için ayrı bir panele girmek gerekmiyor. Yıkıcı araçlar kayıtlı olmadığı için gece yarısı kaza riski dar.
Kaynak açık. Araç şemalarının neden adres taşımadığını ve tavanın nerede uygulandığını okuyup kendi sunucunuzda aynısını yapabilirsiniz.
Evet. MIT lisanslı, kaynak kodu GitHub'da açık. Ücretli bir sürümü, kurumsal planı ya da bu araca bağlı bir hizmet paketi yok. Hetzner'e ödediğiniz bedel size ait; bu araç arada durmuyor.
İstemci başlarken bütün araç şemalarını okur. 220 şema, modelin bağlam bütçesinin ciddi bir kısmını hiç çağırmayacağı tanımlara harcaması demek. Bu yüzden on üç araç yayımlanıyor: operatörün gerçekten tekrarladığı döngü. Geri kalanına search_operations ile arama yapıp describe_operation ile şemasını okuyarak ulaşılıyor.
Hetzner'in tasarımı böyle. Jeton bir projenin içinde üretilir ve API'de proje parametresi diye bir şey yoktur. Dolayısıyla on proje on bağlantıdır. Araç bunu gizlemek yerine görünür kılıyor: her çağrı bağlantıyı adıyla alıyor, arama hepsini birden tarayabiliyor.
Varsayılan kurulumda silme aracı istemciye hiç kaydedilmiyor, dolayısıyla çağrılabilecek bir şey yok. Bayrağı açarsanız kapı açılır. Ayrıca silme olmadan da yıkıcı olan dört işlem var — sunucu yeniden kurma, bölge dosyası içe aktarma, kayıt kümesi değiştirme ve Storage Box'ı anlık görüntüye geri alma — ve bunlardan biri eşleşmeyi bırakırsa derleme hata veriyor.
Hayır. Done Dynamics Hetzner'in müşterisi; bu araç bizim yazdığımız bir istemci. Hetzner tarafından onaylanmış, desteklenen ya da yayımlanmış bir yazılım değil.
macOS'ta login keychain, Linux'ta libsecret kullanılıyor; ikisinde de öğe başına erişim denetimi var. Windows tarafında bunun tam dengi yok, bu yüzden %LOCALAPPDATA% altında DPAPI ile şifrelenmiş bir dosya kullanılıyor: sadece sizin kullanıcınız, sadece o makine — ama öğe başına ACL ve kilit açma sorusu olmadan. İstemci yapılandırmasına jeton yazmaktan iyi, keychain'den zayıf. Belgelerde bunu açıkça yazıyoruz.
İlgili sayfalar
Aynı fikrin Coolify tarafı: dağıtım tetikleme, dağıtım durumu, log okuma. O da MIT lisanslı.
İki MCP sunucusu ve Hugging Face üzerinde yayımladığımız model sürümleri tek sayfada.
Sunucu kurulumu, taşıma ve işletme tarafında destek isterseniz burası.
Barındırma ve bakım hizmetlerimiz. Araçla ilgisi yok, sadece komşu kapı.
Kendi altyapınızda benzer bir şey kurmak isterseniz bize yazın — ama aracı kullanmak için bize ihtiyacınız yok, deposu açık.
Ekibimizle 30 dakikalık ücretsiz bir keşif görüşmesi planlayın.
Ağ ve siber güvenlik işlerini, uluslararası geçerli Cisco sertifikasyonuna sahip ekiple yürütüyoruz.
Veren kurum: Cisco · Sahibi: Devrim Tunçer
Güvenlik operasyon merkezi (SOC) yetkinliğini belgeleyen sertifika: güvenlik izleme, olay müdahalesi ve ağ saldırılarının analizi. Sızma tespiti, log korelasyonu ve olay sonrası müdahale gerektiren işlerde dayandığımız temel budur.
Cisco eğitim sertifikası · Ocak 2023'te tamamlandı
Ağ temellerini kapsar: yönlendirme, anahtarlama, IP adresleme ve ağ güvenliği. Kurumsal ağ kurulumu ile segmentasyon işlerinde kullandığımız bilgi tabanı.