Οι περισσότερες επιδείξεις όπου ένας πράκτορας αγοράζει server σταματούν τη στιγμή που περνά η παραγγελία. Είναι η λιγότερο ενδιαφέρουσα στιγμή. Ο server υπάρχει, ο πράκτορας έχει ένα id όπως 47HZ7YF, και κανείς δεν έχει πει τι γίνεται μετά.
Μετά έρχονται όλα όσα κάνει ένας διαχειριστής χωρίς να το σκεφτεί: να περιμένει μέχρι το SSH να απαντήσει πραγματικά, να βρει τον κωδικό, να προσέξει ότι ο δίσκος γεμίζει, να κάνει επανεκκίνηση μετά από ενημέρωση πυρήνα, να ανανεώσει πριν τελειώσει ο μήνας, να ρωτήσει την υποστήριξη όταν κάτι φαίνεται περίεργο. Αν ένας πράκτορας πρόκειται να έχει δική του υποδομή, πρέπει να κάνει κι αυτό το κομμάτι. Δείτε πώς γίνεται μέσω του MCP server μας. Δοκιμάσαμε κάθε βήμα στο περιβάλλον δοκιμών μας πριν το γράψουμε.
Αν δεν έχετε συνδέσει ακόμη client, ξεκινήστε από Claude Code και Codex ή Claude Desktop και Cursor.
Πρώτο λεπτό: «active» δεν σημαίνει «έτοιμος»
Το order_vps απαντά μόλις η παραγγελία πληρωθεί από το υπόλοιπο. Ο server δημιουργείται στο παρασκήνιο, συνήθως σε περίπου ένα λεπτό. Η επόμενη κλήση του πράκτορα είναι το get_vps_status, και μπορεί να το επαναλαμβάνει όσο θέλει: το εργαλείο μόνο διαβάζει.
Μετράνε δύο πεδία. Το status γίνεται active όταν το μηχάνημα υπάρχει. Το access περιέχει ό,τι χρειάζεται για σύνδεση: host, θύρα και έτοιμη εντολή SSH. Στα πακέτα με δική τους IPv4 η θύρα είναι 22. Στα πακέτα NAT είναι προσωπική προωθημένη θύρα, και η απάντηση το λέει ρητά, μαζί με την προειδοποίηση να μην κλειδωθείτε έξω με firewall που επιτρέπει μόνο την εξωτερική θύρα.
Ανάμεσα σε αυτές τις δύο στιγμές υπάρχει ένα κενό όπου σκοντάφτει ο κόσμος. Η πρώτη εκκίνηση εγκαθιστά ενημερώσεις λειτουργικού, που μπορεί να πάρουν μερικά λεπτά, και το SSH ίσως αρνείται συνδέσεις στο μεταξύ. Ένας προσεκτικός πράκτορας περιμένει το access.ssh_ready αντί να σφυροκοπά τη θύρα 22.
Αν η παραγγελία δεν είχε κλειδί SSH, σας περιμένει ο κωδικός root. Το reveal_password τον δίνει ακριβώς μία φορά και μόνο αφού το VM ολοκληρώσει την εκκίνηση. Αν ρωτήσετε νωρίς, παίρνετε password_pending χωρίς να καταναλωθεί η μοναδική εμφάνιση. Το φτιάξαμε έτσι αφού πράκτορες έπαιρναν ξανά και ξανά κωδικό που το VM, ακόμη σε εκκίνηση, δεν είχε εφαρμόσει. Ειλικρινά όμως: δώστε ένα ssh_key στην παραγγελία και παραλείψτε αυτό το βήμα.
Δεύτερη μέρα: παρακολούθηση
Το get_vps_metrics επιστρέφει CPU, μνήμη, δίκτυο και δίσκο ως χρονοσειρές για την τελευταία ώρα, μέρα, εβδομάδα ή μήνα. Ένας πράκτορας που κοιτάζει μία φορά τη μέρα μπορεί να εντοπίσει το μοτίβο που σκοτώνει τους μικρούς servers: η μνήμη ανεβαίνει σιγά σιγά μέχρι ο OOM killer να διαλέξει θύμα. Απ' έξω δεν διορθώνει την αιτία, αλλά μπορεί να σας ειδοποιήσει ή να μπει με SSH να δει.
Το power_vps κάνει start, stop και reboot. Μια λεπτομέρεια από τις δοκιμές: αν ο server δεν είναι ενεργός (ακόμη δημιουργείται ή έχει ανασταλεί για απλήρωτη ανανέωση), το εργαλείο απαντά 409 με την υπόδειξη να ελεγχθεί πρώτα η κατάσταση. Ένας πράκτορας που αντιμετωπίζει κάθε μη-200 ως «ξαναδοκίμασε για πάντα» θα κολλήσει εδώ σε βρόχο. Το σφάλμα του λέει τι να κάνει, γιατί τα μηνύματα σφάλματός μας είναι γραμμένα για πράκτορες όσο και για ανθρώπους.
Το set_hostname αλλάζει το όνομα μέσω του guest agent που τρέχει μέσα στο μηχάνημα, οπότε σε Linux η αλλαγή εφαρμόζεται χωρίς επανεκκίνηση. Αφαιρέστε το qemu-guest-agent και το εργαλείο σταματά να λειτουργεί: επιστρέφει agent_unavailable και δεν αλλάζει τίποτα.
Τριακοστή μέρα: χρήματα
Εδώ συνήθως πεθαίνει η υποδομή των πρακτόρων. Η ανανέωση είναι υπενθύμιση στο ημερολόγιο κάποιου, αυτός ο κάποιος είναι απασχολημένος, ο server αναστέλλεται.
Σε εμάς η ανανέωση δεν εξαρτάται από τη μνήμη του πράκτορα. Κάθε server ανανεώνεται κάθε μήνα από το προπληρωμένο υπόλοιπο, και το email του λογαριασμού λαμβάνει υπενθυμίσεις πριν από την ημερομηνία. Ο πράκτορας αρκεί να κρατά το υπόλοιπο πάνω από την επόμενη χρέωση, και το get_balance του δείχνει πώς πάει.
Περίοδος χάριτος δεν υπάρχει: αν στο τέλος της περιόδου το υπόλοιπο δεν καλύπτει την ανανέωση, ο server αναστέλλεται και η αποκλειστική του IP επιστρέφει στο pool.
Όταν το υπόλοιπο είναι χαμηλό, το topup_balance δημιουργεί σύνδεσμο πληρωμής με κρυπτό: USDT, USDC ή ETH σε Base, Ethereum ή Polygon. Αυτό είναι το πρώτο σημείο όπου ο πράκτορας σας χρειάζεται. Μπορεί να φτιάξει το τιμολόγιο, αλλά δεν μπορεί να υπογράψει συναλλαγή αν δεν του δώσετε πορτοφόλι, και εμείς θα το σκεφτόμασταν πολύ. Στην πράξη ο κόσμος φορτίζει μία φορά για αρκετούς μήνες και αφήνει τον πράκτορα να ξοδεύει από εκεί. Αν μια παραγγελία ή ένα τιμολόγιο έμεινε απλήρωτο επειδή δεν έφτανε το υπόλοιπο, μετά τη φόρτισή σας ο πράκτορας καλεί το pay_invoice και πληρώνεται από το υπόλοιπο.
Ένα ειλικρινές κενό: τα εργαλεία MCP δεν ανανεώνουν έναν server αρκετούς μήνες μπροστά κατ' απαίτηση. Η μηνιαία ανανέωση είναι αυτόματη, και η πληρωμή για 3, 6 ή 12 μήνες προκαταβολικά γίνεται από τον πίνακα ελέγχου ή με μία κλήση REST. Αν θέλετε μεγαλύτερη διάρκεια από την αρχή, το order_vps δέχεται months (από 1 έως 36) κατά την παραγγελία.
Την ανάπτυξη καλύπτουν τα get_upgrade_options και change_plan. Το πακέτο αλλάζει επί τόπου, τα αρχεία και το λειτουργικό μένουν, ο server κάνει μία επανεκκίνηση και η διαφορά τιμής για το υπόλοιπο της περιόδου αφαιρείται από το υπόλοιπο. Ο πράκτορας πρέπει να περάσει confirm: true — ο δικός μας τρόπος να πούμε «ξοδεύεις χρήματα, να είσαι σίγουρος».
Όταν κάτι στραβώνει
Οι καταστροφικές ενέργειες είναι σκόπιμα άβολες. Το reinstall_vps και ένα άμεσο cancel_service απαιτούν και τα δύο το ακριβές hostname του server στο confirm, και οι περιγραφές τους λένε στον πράκτορα να συμβουλευτεί πρώτα άνθρωπο. Αυτό είναι το δεύτερο σημείο όπου ο πράκτορας σας χρειάζεται, και είναι σκόπιμο.
Η ασφαλής ακύρωση, end_of_period, κρατά τον server μέχρι να λήξει ο πληρωμένος χρόνος. Το undo_cancel την αναιρεί, και αυτό μετράει περισσότερο απ' όσο νομίζετε: οι πράκτορες αλλάζουν γνώμη στη μέση μιας εργασίας τόσο συχνά όσο και οι άνθρωποι.
Όταν ο πράκτορας κολλήσει, το create_ticket ανοίγει ticket συνδεδεμένο με τον server και το reply_ticket συνεχίζει τη συζήτηση. Το διαβάζει άνθρωπος από τη μεριά μας, όχι chatbot που απαντά σε chatbot.
Κι όταν πρέπει να παρέμβει άνθρωπος, το delegate_service τον προσκαλεί μέσω email ως χειριστή αυτού του ενός server. Παίρνει τροφοδοσία, κονσόλα, επανεγκατάσταση και hostname. Δεν παίρνει χρέωση, ανανέωση ή ακύρωση, και δεν βλέπει ποτέ το token του πράκτορα.
Τι ακόμη δεν μπορεί ο πράκτορας
Για να είναι σαφή τα όρια:
- Να φορτίσει το υπόλοιπο. Μπορεί να φτιάξει τιμολόγιο φόρτισης και να πληρώσει τιμολόγια από το υπόλοιπο με το
pay_invoice. Για να μπει κρυπτό στο υπόλοιπο χρειάζεται πορτοφόλι, δηλαδή συνήθως εσείς. - Να δουλέψει μέσα στο λειτουργικό μέσω MCP. Πακέτα, ρυθμίσεις και deploy περνούν από SSH. Το MCP διαχειρίζεται το μηχάνημα απ' έξω.
- Να άρει μόνος του μια αναστολή. Αν ένας server ανασταλεί για κατάχρηση, αυτό είναι συζήτηση με άνθρωπο, και έτσι πρέπει.
Τίποτα από αυτά δεν κάνει τα εργαλεία λιγότερο χρήσιμα. Σημαίνει ότι ο βρόχος του πράκτορα πρέπει να χτιστεί γύρω τους: να ελέγχει την κατάσταση, να κρατά το υπόλοιπο στα σωστά όρια, να κλιμακώνει με ticket και να σας περιμένει πριν από οτιδήποτε σβήνει δεδομένα.
Αν η δουλειά του πράκτορα είναι σύντομη, ένας ολόκληρος server ίσως δεν είναι η σωστή μονάδα. Το VPS ή sandbox; εξηγεί πότε ταιριάζει καλύτερα ένα microVM που ζει ένα λεπτό. Διαφορετικά, τα πακέτα είναι εδώ, και η τεκμηρίωση MCP απαριθμεί κάθε εργαλείο με τις παραμέτρους του.
Σχόλια
Δεν υπάρχουν ακόμη σχόλια. Γίνετε ο πρώτος.