De meeste demo's waarin een agent een server koopt, stoppen op het moment dat de bestelling rond is. Dat is het minst interessante moment. De server bestaat, de agent heeft een id als 47HZ7YF, en niemand heeft gezegd wat er daarna gebeurt.
Daarna komt alles wat een beheerder zonder nadenken doet: wachten tot SSH echt antwoordt, het wachtwoord vinden, merken dat de schijf volloopt, herstarten na een kernelupdate, verlengen voordat de maand om is, support vragen als er iets vreemd lijkt. Als een agent infrastructuur gaat bezitten, moet hij dat deel ook doen. Zo gaat dat via onze MCP-server. We hebben elke stap in onze testomgeving uitgevoerd voordat we hem opschreven.
Heb je nog geen client verbonden, begin dan met Claude Code en Codex of Claude Desktop en Cursor.
Minuut één: „active” is niet „klaar”
order_vps antwoordt zodra de bestelling uit het saldo is betaald. De server wordt op de achtergrond aangemaakt, meestal in ongeveer een minuut. De volgende aanroep van de agent is get_vps_status, en die mag hij zo vaak herhalen als hij wil: de tool leest alleen.
Twee velden tellen. status wordt active zodra de machine bestaat. In access staat wat de agent nodig heeft om in te loggen: host, poort en een kant-en-klaar SSH-commando. Bij pakketten met een eigen IPv4 is de poort 22. Bij NAT-pakketten is het een persoonlijke doorgestuurde poort, en het antwoord zegt dat expliciet, inclusief de waarschuwing om jezelf niet buiten te sluiten met een firewall die alleen de externe poort toelaat.
Tussen die twee momenten zit een gat waar mensen over struikelen. De eerste boot installeert OS-updates, wat een paar minuten kan duren, en SSH kan in die tijd verbindingen weigeren. Een nette agent wacht op access.ssh_ready in plaats van op poort 22 te blijven hameren.
Had de bestelling geen SSH-sleutel, dan wacht het root-wachtwoord. reveal_password geeft het precies één keer en pas als de VM klaar is met opstarten. Vraag je te vroeg, dan krijg je password_pending zonder dat de eenmalige weergave wordt opgebruikt. We hebben het zo gebouwd nadat agents steeds een wachtwoord ophaalden dat de nog opstartende VM niet had toegepast. Eerlijk gezegd: geef een ssh_key mee met de bestelling en sla deze stap over.
Dag twee: in de gaten houden
get_vps_metrics geeft CPU, geheugen, netwerk en schijf als tijdreeksen voor het laatste uur, de dag, de week of de maand. Een agent die er dagelijks naar kijkt, ziet het patroon dat kleine servers fataal wordt: geheugen dat oploopt tot de OOM-killer een slachtoffer kiest. Van buitenaf kan hij de oorzaak niet oplossen, maar hij kan het jou melden of via SSH gaan kijken.
power_vps doet start, stop en reboot. Een detail uit de tests: als de server niet actief is (nog in aanmaak of opgeschort wegens een onbetaalde verlenging), antwoordt de tool met 409 en de tip om eerst de status te controleren. Een agent die elke niet-200 als „eindeloos opnieuw proberen” behandelt, blijft hier hangen. De foutmelding zegt wat hij moet doen, want onze foutteksten zijn net zo goed voor agents als voor mensen geschreven.
set_hostname hernoemt de machine via de guest agent die erin draait, dus op Linux werkt de wijziging zonder herstart. Verwijder qemu-guest-agent en de tool werkt niet meer: hij geeft agent_unavailable terug en verandert niets.
Dag dertig: geld
Hier sterft infrastructuur van agents meestal. De verlenging staat in iemands agenda, die iemand heeft het druk, de server wordt opgeschort.
Bij ons hangt verlenging niet af van het geheugen van de agent. Elke server verlengt zich maandelijks uit het vooruitbetaalde saldo, en het e-mailadres van het account krijgt herinneringen vóór de datum. De agent hoeft alleen het saldo boven de volgende afschrijving te houden, en get_balance laat zien hoe het ervoor staat.
Er is geen respijtperiode: dekt het saldo de verlenging aan het eind van de termijn niet, dan wordt de server opgeschort en gaat zijn dedicated IP terug naar de pool.
Is het saldo laag, dan maakt topup_balance een crypto-betaallink: USDT, USDC of ETH op Base, Ethereum of Polygon. Dat is de eerste plek waar de agent jou nodig heeft. De factuur kan hij maken, maar een transactie ondertekenen kan hij alleen als je hem een wallet geeft, en daar zouden wij goed over nadenken. In de praktijk waardeert men één keer op voor een paar maanden en laat men de agent daaruit uitgeven. Bleef een bestelling of factuur onbetaald omdat het saldo tekortschoot, dan roept de agent na jouw opwaardering pay_invoice aan en wordt die uit het saldo betaald.
Een eerlijk gat: de MCP-tools verlengen een server niet op verzoek meerdere maanden vooruit. De maandelijkse verlenging gaat automatisch, en 3, 6 of 12 maanden vooruitbetalen doe je in het dashboard of met één REST-aanroep. Wil je vanaf het begin een langere termijn, dan accepteert order_vps bij de bestelling months (1 tot 36).
Groei loopt via get_upgrade_options en change_plan. Het pakket verandert ter plekke, bestanden en OS blijven, de server herstart één keer, en het prijsverschil voor de rest van de periode gaat van het saldo af. De agent moet confirm: true meegeven – onze manier om te zeggen: „je geeft geld uit, weet het zeker.”
Als er iets misgaat
Destructieve acties zijn met opzet onhandig. reinstall_vps en een onmiddellijke cancel_service vragen allebei de exacte hostname van de server in confirm, en hun beschrijvingen zeggen de agent dat hij eerst een mens moet raadplegen. Dat is de tweede plek waar de agent jou nodig heeft, en dat is bewust.
De veilige opzegging, end_of_period, houdt de server aan tot de betaalde tijd op is. undo_cancel draait hem terug, en dat is belangrijker dan je zou denken: agents veranderen halverwege een taak net zo vaak van gedachten als mensen.
Zit de agent vast, dan opent create_ticket een ticket gekoppeld aan de server en zet reply_ticket het gesprek voort. Een mens aan onze kant leest het, geen chatbot die een chatbot antwoordt.
En als een mens moet ingrijpen, nodigt delegate_service hem per e-mail uit als operator van die ene server. Hij krijgt stroom, console, herinstallatie en hostname. Facturatie, verlenging en opzegging krijgt hij niet, en het token van de agent ziet hij nooit.
Wat de agent nog steeds niet kan
Om de grenzen duidelijk te maken:
- Het saldo opwaarderen. Hij kan een opwaardeerfactuur maken en facturen uit het saldo betalen met
pay_invoice. Crypto op het saldo zetten vraagt een wallet, en dat ben normaal gesproken jij. - Via MCP binnen het OS werken. Pakketten, configuratie en deployments gaan via SSH. MCP beheert de machine van buitenaf.
- Zelf een opschorting opheffen. Is een server opgeschort wegens misbruik, dan is dat een gesprek met een mens, en zo hoort het.
Dat maakt de tools niet minder nuttig. Het betekent dat je de loop van de agent eromheen bouwt: status opvragen, het saldo binnen de grenzen houden, escaleren via een ticket en op jou wachten bij alles wat data wist.
Is het werk van de agent kortstondig, dan is een hele server misschien niet de juiste eenheid. VPS of sandbox? legt uit wanneer een microVM die een minuut leeft beter past. Anders vind je de pakketten hier, en de MCP-referentie noemt elke tool met zijn parameters.
Reacties
Nog geen reacties. Wees de eerste.