Αυτός ο φάκελος περιέχει πλήρη, λειτουργικά παραδείγματα πελατών MCP σε διάφορες γλώσσες προγραμματισμού. Κάθε πελάτης επιδεικνύει την πλήρη λειτουργικότητα που περιγράφεται στον κύριο οδηγό README.md.
- Μεταφορά: SSE (Server-Sent Events) μέσω HTTP
- Διακομιστής Στόχος:
http://localhost:8080 - Χαρακτηριστικά:
- Δημιουργία σύνδεσης και ping
- Λίστα εργαλείων
- Λειτουργίες αριθμομηχανής (πρόσθεση, αφαίρεση, πολλαπλασιασμός, διαίρεση, βοήθεια)
- Διαχείριση σφαλμάτων και εξαγωγή αποτελεσμάτων
Για εκτέλεση:
# Ensure your MCP server is running on localhost:8080
javac client_example_java.java
java client_example_java- Μεταφορά: Stdio (Τυπική Είσοδος/Έξοδος)
- Διακομιστής Στόχος: Τοπικός διακομιστής MCP .NET μέσω dotnet run
- Χαρακτηριστικά:
- Αυτόματη εκκίνηση διακομιστή μέσω μεταφοράς stdio
- Λίστα εργαλείων και πόρων
- Λειτουργίες αριθμομηχανής
- Ανάλυση αποτελεσμάτων JSON
- Εκτενής διαχείριση σφαλμάτων
Για εκτέλεση:
dotnet run- Μεταφορά: Stdio (Τυπική Είσοδος/Έξοδος)
- Διακομιστής Στόχος: Τοπικός διακομιστής MCP Node.js
- Χαρακτηριστικά:
- Πλήρης υποστήριξη πρωτοκόλλου MCP
- Λειτουργίες εργαλείων, πόρων και προτροπών
- Λειτουργίες αριθμομηχανής
- Ανάγνωση περιεχομένου πόρων και εκτέλεση προτροπών
- Ισχυρή διαχείριση σφαλμάτων
Για εκτέλεση:
# First compile TypeScript (if needed)
npm run build
# Then run the client
npm run client
# or
node client_example_typescript.js- Μεταφορά: Stdio (Τυπική Είσοδος/Έξοδος)
- Διακομιστής Στόχος: Τοπικός διακομιστής MCP Python
- Χαρακτηριστικά:
- Πρότυπο async/await για λειτουργίες
- Ανακάλυψη εργαλείων και πόρων
- Δοκιμή λειτουργιών αριθμομηχανής
- Ανάγνωση περιεχομένου πόρων
- Οργάνωση βασισμένη σε κλάσεις
Για εκτέλεση:
python client_example_python.pyΚάθε υλοποίηση πελάτη επιδεικνύει:
-
Διαχείριση Σύνδεσης
- Δημιουργία σύνδεσης με τον διακομιστή MCP
- Διαχείριση σφαλμάτων σύνδεσης
- Σωστός καθαρισμός και διαχείριση πόρων
-
Ανακάλυψη Διακομιστή
- Λίστα διαθέσιμων εργαλείων
- Λίστα διαθέσιμων πόρων (όπου υποστηρίζεται)
- Λίστα διαθέσιμων προτροπών (όπου υποστηρίζεται)
-
Εκτέλεση Εργαλείων
- Βασικές λειτουργίες αριθμομηχανής (πρόσθεση, αφαίρεση, πολλαπλασιασμός, διαίρεση)
- Εντολή βοήθειας για πληροφορίες διακομιστή
- Σωστή μεταβίβαση επιχειρημάτων και διαχείριση αποτελεσμάτων
-
Διαχείριση Σφαλμάτων
- Σφάλματα σύνδεσης
- Σφάλματα εκτέλεσης εργαλείων
- Ομαλή αποτυχία και ανατροφοδότηση προς τον χρήστη
-
Επεξεργασία Αποτελεσμάτων
- Εξαγωγή περιεχομένου κειμένου από απαντήσεις
- Μορφοποίηση εξόδου για αναγνωσιμότητα
- Διαχείριση διαφορετικών μορφών απαντήσεων
Πριν εκτελέσετε αυτούς τους πελάτες, βεβαιωθείτε ότι έχετε:
- Τον αντίστοιχο διακομιστή MCP σε λειτουργία (από
../01-first-server/) - Εγκατεστημένες τις απαιτούμενες εξαρτήσεις για τη γλώσσα που επιλέξατε
- Κατάλληλη συνδεσιμότητα δικτύου (για μεταφορές μέσω HTTP)
| Γλώσσα | Μεταφορά | Εκκίνηση Διακομιστή | Μοντέλο Async | Κύριες Βιβλιοθήκες |
|---|---|---|---|---|
| Java | SSE/HTTP | Εξωτερική | Sync | WebFlux, MCP SDK |
| C# | Stdio | Αυτόματη | Async/Await | .NET MCP SDK |
| TypeScript | Stdio | Αυτόματη | Async/Await | Node MCP SDK |
| Python | Stdio | Αυτόματη | AsyncIO | Python MCP SDK |
| Rust | Stdio | Αυτόματη | Async/Await | Rust MCP SDK, Tokio |
Αφού εξερευνήσετε αυτά τα παραδείγματα πελατών:
- Τροποποιήστε τους πελάτες για να προσθέσετε νέες λειτουργίες ή ενέργειες
- Δημιουργήστε τον δικό σας διακομιστή και δοκιμάστε τον με αυτούς τους πελάτες
- Πειραματιστείτε με διαφορετικές μεταφορές (SSE έναντι Stdio)
- Δημιουργήστε μια πιο σύνθετη εφαρμογή που ενσωματώνει λειτουργικότητα MCP
- Η σύνδεση απορρίφθηκε: Βεβαιωθείτε ότι ο διακομιστής MCP λειτουργεί στη σωστή θύρα/διαδρομή
- Το module δεν βρέθηκε: Εγκαταστήστε το απαιτούμενο MCP SDK για τη γλώσσα σας
- Άρνηση πρόσβασης: Ελέγξτε τα δικαιώματα αρχείων για τη μεταφορά stdio
- Το εργαλείο δεν βρέθηκε: Επαληθεύστε ότι ο διακομιστής υλοποιεί τα αναμενόμενα εργαλεία
- Ενεργοποιήστε την εκτενή καταγραφή στο MCP SDK σας
- Ελέγξτε τα αρχεία καταγραφής του διακομιστή για μηνύματα σφαλμάτων
- Επαληθεύστε τα ονόματα και τις υπογραφές εργαλείων μεταξύ πελάτη και διακομιστή
- Δοκιμάστε με το MCP Inspector πρώτα για να επαληθεύσετε τη λειτουργικότητα του διακομιστή
Αποποίηση ευθύνης:
Αυτό το έγγραφο έχει μεταφραστεί χρησιμοποιώντας την υπηρεσία αυτόματης μετάφρασης Co-op Translator. Παρόλο που καταβάλλουμε προσπάθειες για ακρίβεια, παρακαλούμε να έχετε υπόψη ότι οι αυτοματοποιημένες μεταφράσεις ενδέχεται να περιέχουν λάθη ή ανακρίβειες. Το πρωτότυπο έγγραφο στη μητρική του γλώσσα θα πρέπει να θεωρείται η αυθεντική πηγή. Για κρίσιμες πληροφορίες, συνιστάται επαγγελματική ανθρώπινη μετάφραση. Δεν φέρουμε ευθύνη για τυχόν παρεξηγήσεις ή εσφαλμένες ερμηνείες που προκύπτουν από τη χρήση αυτής της μετάφρασης.