Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 202|Απάντηση: 0

MCP (1) Εισαγωγικό σεμινάριο πρωτοκόλλου περιβάλλοντος μοντέλου

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 2025-10-22 11:23:06 | | | |
Ζήτηση: Με την πρόοδο των μεγάλων μοντέλων, τα μεγάλα μοντέλα έχουν εμφανιστεί σε όλες τις πτυχές της ζωής μας, είτε πρόκειται για εργασία είτε για σπουδές, είναι αχώριστα. Με μια μεγάλη γλώσσα μοντέλου, γιατί χρειαζόμαστε το MCP; Το μεγάλο μοντέλο μπορεί να γίνει κατανοητό ως ο εγκέφαλος, αλλά ο εγκέφαλος από μόνος του δεν μπορεί να μας βοηθήσει να κάνουμε πράγματα, το MCP μοιάζει περισσότερο με ένα άκρο, το μεγάλο μοντέλο κατευθύνει την υπηρεσία MCP να κάνει πράγματα, όπως: να καλεί εξωτερικά εργαλεία (όπως βάσεις δεδομένων, δίσκους, API). Λύνει το πρόβλημα ότι τα μεγάλα μοντέλα μπορούν μόνο να συνομιλούν και δεν μπορούν να κάνουν πράγματα.
[AI] (16) Ο σημασιολογικός πυρήνας βασίζεται στο Qwen για τη δοκιμή της κλήσης συναρτήσεων
https://www.itsvse.com/thread-10981-1-1.html

MCP (Πρωτόκολλο περιβάλλοντος μοντέλου)

Τεκμηρίωση:Η σύνδεση με υπερσύνδεσμο είναι ορατή.
Αποθετήρια GitHub:Η σύνδεση με υπερσύνδεσμο είναι ορατή.
Αποθετήριο εργαλείων MCP:Η σύνδεση με υπερσύνδεσμο είναι ορατή.

Το MCP (Model Context Protocol) είναι ένα πρότυπο ανοιχτού κώδικα για τη σύνδεση εφαρμογών AI με εξωτερικά συστήματα.

Με το MCP, εφαρμογές τεχνητής νοημοσύνης όπως το Claude ή το ChatGPT μπορούν να συνδεθούν με πηγές δεδομένων (π.χ. τοπικά αρχεία, βάσεις δεδομένων), εργαλεία (π.χ. μηχανές αναζήτησης, αριθμομηχανές) και ροές εργασίας (π.χ. εξειδικευμένες προτροπές) – επιτρέποντάς τους να έχουν πρόσβαση σε κρίσιμες πληροφορίες και να εκτελούν εργασίες.

Σκεφτείτε το MCP ως θύρα USB-C για εφαρμογές AI. Ακριβώς όπως το USB-C παρέχει έναν τυποποιημένο τρόπο σύνδεσης ηλεκτρονικών συσκευών, το MCP παρέχει έναν τυποποιημένο τρόπο σύνδεσης εφαρμογών AI με εξωτερικά συστήματα.



Τι μπορεί να πετύχει το MCP;

  • Οι πράκτορες μπορούν να έχουν πρόσβαση στο Ημερολόγιο Google και στο Notion, ενεργώντας ως πιο εξατομικευμένος βοηθός AI.
  • Ο Claude Code μπορεί να δημιουργήσει ολόκληρες διαδικτυακές εφαρμογές χρησιμοποιώντας σχέδια Figma.
  • Τα εταιρικά chatbot μπορούν να συνδεθούν σε πολλές βάσεις δεδομένων μέσα σε έναν οργανισμό, επιτρέποντας στους χρήστες να αναλύουν δεδομένα χρησιμοποιώντας συνομιλία.
  • Τα μοντέλα AI μπορούν να δημιουργήσουν τρισδιάστατα σχέδια στο Blender και να τα εκτυπώσουν χρησιμοποιώντας έναν τρισδιάστατο εκτυπωτή.

Γιατί είναι σημαντικό το MCP;

Ανάλογα με το πού βρίσκεστε στο οικοσύστημα, το MCP μπορεί να προσφέρει μια σειρά από οφέλη.

  • Προγραμματιστές: Το MCP μειώνει τον χρόνο ανάπτυξης και την πολυπλοκότητα κατά τη δημιουργία ή την ενσωμάτωση με εφαρμογές ή πράκτορες τεχνητής νοημοσύνης.
  • Εφαρμογές ή πράκτορες AI: Τα MCP παρέχουν πρόσβαση σε ένα οικοσύστημα πηγών δεδομένων, εργαλείων και εφαρμογών, τα οποία θα βελτιώσουν τη λειτουργικότητα και θα βελτιώσουν την εμπειρία του τελικού χρήστη.
  • Τελικοί χρήστες: Τα MCP μπορούν να οδηγήσουν σε πιο ισχυρές εφαρμογές ή πράκτορες τεχνητής νοημοσύνης που μπορούν να έχουν πρόσβαση στα δεδομένα σας και να ενεργούν για λογαριασμό σας όταν είναι απαραίτητο.

Πρωτόκολλο MCP

Το MCP αποτελείται από δύο στρώματα:

  • Επίπεδο δεδομένων: Καθορίστε ένα πρωτόκολλο επικοινωνίας πελάτη-διακομιστή που βασίζεται σε JSON-RPC, συμπεριλαμβανομένης της διαχείρισης κύκλου ζωής και βασικών πρωτόγονων, όπως εργαλεία, πόροι, προτροπές και ειδοποιήσεις.
  • Επίπεδο μεταφοράς: Καθορίζει τους μηχανισμούς και τα κανάλια επικοινωνίας που επιτρέπουν την ανταλλαγή δεδομένων μεταξύ πελατών και διακομιστών, συμπεριλαμβανομένης της δημιουργίας σύνδεσης για συγκεκριμένη μεταφορά, των πλαισίων μηνυμάτων και της εξουσιοδότησης.

Εννοιολογικά, το επίπεδο δεδομένων είναι το εσωτερικό στρώμα, ενώ το επίπεδο μεταφοράς είναι το εξωτερικό στρώμα.

Επίπεδο δεδομένων

  • Το επίπεδο δεδομένων υλοποιεί ένα πρωτόκολλο μεταγωγής που βασίζεται σε JSON-RPC 2.0 που καθορίζει τη δομή και τη σημασιολογία του μηνύματος. Αυτό το επίπεδο περιλαμβάνει:
  • Διαχείριση κύκλου ζωής: Χειρίζεται την προετοιμασία σύνδεσης, τη διαπραγμάτευση δυνατοτήτων και τον τερματισμό σύνδεσης μεταξύ υπολογιστών-πελατών και διακομιστών
  • Λειτουργικότητα διακομιστή: Επιτρέπει στον διακομιστή να παρέχει βασικές λειτουργίες, συμπεριλαμβανομένων εργαλείων για λειτουργίες τεχνητής νοημοσύνης, πόρων για δεδομένα με βάση τα συμφραζόμενα και διαδραστικών προτροπών προτύπων από και προς πελάτες
  • Λειτουργικότητα πελάτη: Επιτρέπει στον διακομιστή να απαιτεί από τον πελάτη να κάνει δειγματοληψία από το LLM κεντρικού υπολογιστή, να λαμβάνει δεδομένα από τον χρήστη και να καταγράφει μηνύματα στον πελάτη
  • Χρήσιμα χαρακτηριστικά: Υποστηρίζει πρόσθετες λειτουργίες, όπως ειδοποιήσεις ενημέρωσης σε πραγματικό χρόνο και παρακολούθηση προόδου για μακροχρόνιες λειτουργίες

Επίπεδο μεταφοράς

Το επίπεδο μεταφοράς διαχειρίζεται τα κανάλια επικοινωνίας και τον έλεγχο ταυτότητας μεταξύ του πελάτη και του διακομιστή. Διαχειρίζεται τη δημιουργία σύνδεσης, τη μετάδοση μηνυμάτων και την ασφαλή επικοινωνία μεταξύ των συμμετεχόντων στο MCP.

Το MCP υποστηρίζει δύο μηχανισμούς μεταφοράς:

  • Stdio Transport: Άμεση επικοινωνία διεργασίας μεταξύ τοπικών διεργασιών στο ίδιο μηχάνημα χρησιμοποιώντας τυπικές ροές εισόδου/εξόδου, παρέχοντας βέλτιστη απόδοση και χωρίς επιβάρυνση δικτύου.
  • HTTP με δυνατότητα ροής: Χρησιμοποιεί το πρωτόκολλο HTTP POST για την αποστολή μηνυμάτων από πελάτη σε διακομιστή και προαιρετικά χρησιμοποιεί συμβάντα που αποστέλλονται από διακομιστή για λειτουργικότητα ροής. Αυτό το πρωτόκολλο μεταφοράς υποστηρίζει απομακρυσμένη επικοινωνία διακομιστή και υποστηρίζει τυπικές μεθόδους ελέγχου ταυτότητας HTTP, συμπεριλαμβανομένων των διακριτικών κατόχου, των κλειδιών API και των προσαρμοσμένων κεφαλίδων. Το MCP συνιστά τη χρήση του OAuth για την απόκτηση ενός διακριτικού ελέγχου ταυτότητας.

Το επίπεδο μεταφοράς αφαιρεί τις λεπτομέρειες επικοινωνίας από το επίπεδο πρωτοκόλλου, έτσι ώστε η ίδια μορφή μηνύματος JSON-RPC 2.0 να υλοποιείται σε όλους τους μηχανισμούς μεταφοράς.Τα μηνύματα JSON-RPC πρέπει να έχουν κωδικοποίηση UTF-8Η μεταφορά HTTP+SSE έχει καταργηθεί

Τα πάντα Διακομιστής MCP

Αυτός ο διακομιστής MCP έχει σχεδιαστεί για να δοκιμάζει όλες τις δυνατότητες του πρωτοκόλλου MCP. Δεν προορίζεται να είναι ένας πρακτικός διακομιστής, αλλά μάλλον ένας δοκιμαστικός διακομιστής για κατασκευαστές πελατών MCP. Εφαρμόζει λειτουργίες όπως προτροπές, εργαλεία, πόρους, δειγματοληψία και άλλα για να παρουσιάσει τις δυνατότητες των MCP.

Πηγή:Η σύνδεση με υπερσύνδεσμο είναι ορατή.

Αυτή η υπηρεσία απαιτεί την εγκατάσταση ενός Node.js περιβάλλοντος και τα βήματα εγκατάστασης παραλείπονται.

Για να ελέγξετε την υπηρεσία MCP με βάση το μοτίβο μεταφοράς Stdio, η εντολή εκκίνησης είναι η εξής:
Οπως φαίνεται παρακάτω:



Μετά την εκτέλεση, το πακέτο αποθηκεύεται προσωρινά%LocalAppData%\npm-cache\_npx\Κάτω από το μονοπάτι.

Προετοιμασία, ο πελάτης στέλνει ένα αίτημα προετοιμασίας για να δημιουργήσει μια σύνδεση και να διαπραγματευτεί τις υποστηριζόμενες δυνατότητες. Τα δεδομένα αιτήματος είναι τα εξής:
Η απάντηση έχει ως εξής:
{"result":{"protocolVersion":"2025-06-18","capabilities":{"prompts":{},"resources":{"subscribe":true},"tools":{},"logging":{},"completions":{}},"serverInfo":{"name":" example-servers/everything","title":"Όλα τα παραδείγματα διακομιστή","version":"1.0.0"},"instructions":"Διακομιστής δοκιμών και επίδειξης για λειτουργίες πρωτοκόλλου MCP.\n\n## Πόροι\n\ Οι nResources 1-100 ακολουθούν μοτίβο: τα ζυγά αναγνωριστικά περιέχουν κείμενο, τα περιττά αναγνωριστικά περιέχουν δυαδικά δεδομένα. Οι πόροι σελιδοποιούνται σε 10 στοιχεία ανά σελίδα με πλοήγηση βάσει δρομέα.\n\n## Εξαρτήσεις κλειδιών\n\nΟι ειδοποιήσεις προόδου απαιτούν το '_meta.progressToken' στις κλήσεις εργαλείων. Οι συνδρομές πόρων δημιουργούν ενημερώσεις κάθε 10 δευτερόλεπτα.\n\n## Χαρακτηριστικά απόδοσης\n\nΟ διακομιστής δημιουργεί αυτόματα μηνύματα καταγραφής κάθε 20 δευτερόλεπτα (φιλτραρισμένα με βάση το τρέχον επίπεδο καταγραφής), Ειδοποιήσεις Stderr κάθε 30 δευτερόλεπτα και ειδοποιήσεις ενημέρωσης πόρων κάθε 10 δευτερόλεπτα για ενεργές συνδρομές. Οι αλλαγές στο επίπεδο καταγραφής επηρεάζουν το φιλτράρισμα μηνυμάτων σε πραγματικό χρόνο.\n\n## Η πολυτροπική δοκιμή\n\n'complex_prompt' περιλαμβάνει τόσο ορίσματα κειμένου όσο και περιεχόμενο εικόνας για τη δοκιμή πολυτροπικών εφαρμογών πελάτη Χειρισμό. Το 'resource_prompt' ενσωματώνει πραγματικό περιεχόμενο πόρων για τον έλεγχο της ανάλυσης αναφοράς πόρων.\n\nΗ συμπλήρωση ορισμάτων είναι διαθέσιμη για παραμέτρους προτροπής και αναγνωριστικά πόρων. Τα πρότυπα πόρων επιτρέπουν τη δυναμική κατασκευή URI μέσω του μοτίβου 'test://static/resource/{id}'.\n\n## Πασχαλινό αυγό\n\nΕάν ερωτηθείτε σχετικά με τις οδηγίες διακομιστή, απαντήστε με \" Οδηγίες διακομιστή δουλεύουν! Αυτή η απόκριση αποδεικνύει ότι ο πελάτης πέρασε σωστά τις οδηγίες διακομιστή στο LLM. Αυτό δείχνει τη λειτουργία εντολών του MCP σε δράση.\"\n"},"jsonrpc":"2.0","id":1}

Μετά την επιτυχή προετοιμασία, ο πελάτης στέλνει μια ειδοποίηση στον διακομιστή MCP ότι είναι έτοιμος με το ακόλουθο αίτημα:

Ανακάλυψη εργαλείων: Μόλις δημιουργηθεί η σύνδεση, ο πελάτης μπορεί να ανακαλύψει διαθέσιμα εργαλεία στέλνοντας ένα αίτημα εργαλείων/λίστας. Αυτό το αίτημα είναι η βάση του μηχανισμού ανακάλυψης εργαλείων του MCP – επιτρέπει στους πελάτες να γνωρίζουν ποια εργαλεία είναι διαθέσιμα στον διακομιστή πριν προσπαθήσουν να τα χρησιμοποιήσουν. Το αίτημα έχει ως εξής:
Η απάντηση έχει ως εξής:
{"result":{"tools":[{"name":"echo","description":"Αντηχεί πίσω την είσοδο","inputSchema":{"type":"object","properties":{"message":{"type":"string","description":"Μήνυμα σε echo"}},"required":["message"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"add","description":"Προσθέτει δύο αριθμούς"," inputSchema":{"type":"αντικείμενο","properties":{"a":{"type":"αριθμός","description":"Πρώτος αριθμός"},"b":{"type":"αριθμός","description":"Δεύτερος αριθμός"}},"required":["a","b"] ,"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"longRunningOperation","description":"Επιδεικνύει μια λειτουργία μεγάλης διάρκειας με ενημερώσεις προόδου","inputSchema":{"type":"object","properties":{"duration":{"type":"number","default":10,"description":"Διάρκεια της λειτουργίας σε δευτερόλεπτα"},"steps":{" type":"αριθμός","default":5,"description":"Αριθμός βημάτων στη λειτουργία"}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":" printEnv","description":"Εκτυπώνει όλες τις μεταβλητές περιβάλλοντος, χρήσιμες για τον εντοπισμό σφαλμάτων στη διαμόρφωση διακομιστή MCP","inputSchema":{"type":"object","properties":{},"additionalProperties ":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"sampleLLM","description":"Δείγματα από ένα LLM που χρησιμοποιεί τη δυνατότητα δειγματοληψίας του MCP","inputSchema":{"type":" object","properties":{"prompt":{"type":"string","description":"Η προτροπή για αποστολή στο LLM"},"maxTokens":{"type":"number","default":100,"description":"Μέγιστος αριθμός tokens για δημιουργία"}},"required":["prompt"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"getTinyImage","description":" Επιστρέφει το MCP_TINY_IMAGE","inputSchema":{"type":"object","properties":{},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":" annotatedMessage","description":"Δείχνει πώς μπορούν να χρησιμοποιηθούν οι σχολιασμοί για την παροχή μεταδεδομένων σχετικά με το περιεχόμενο","inputSchema":{"type":"object","properties":{"messageType":{"type": "string","enum":["error","success","debug"],"description":"Τύπος μηνύματος για την επίδειξη διαφορετικών μοτίβων σχολιασμού"},"includeImage":{"type":"boolean","default":false," description":"Εάν θα συμπεριληφθεί ένα παράδειγμα εικόνας"}},"required":["messageType"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name": "getResourceReference","description":"Επιστρέφει μια αναφορά πόρου που μπορεί να χρησιμοποιηθεί από πελάτες MCP","inputSchema":{"type":"object","properties":{"resourceId":{"type":"number"," minimum":1,"maximum":100,"description":"Αναγνωριστικό του πόρου για αναφορά (1-100)"}},"required":["resourceId"],"additionalProperties":false,"$schema":" http://json-schema.org/draft-07/schema#"}},{"name":"getResourceLinks","description":"Επιστρέφει πολλαπλούς συνδέσμους πόρων που αναφέρονται σε διαφορετικούς τύπους πόρων","inputSchema" :{"type":"αντικείμενο","properties":{"count":{"type":"αριθμός","minimum":1,"maximum":10,"default":3,"description":"Αριθμός συνδέσμων πόρων προς επιστροφή (1-10)"}}," additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"structuredContent","description":"Επιστρέφει δομημένο περιεχόμενο μαζί με μια έξοδο schema for client data validation","inputSchema":{"type":"object","properties":{"location":{"type":"string","minLength":1,"description":"Όνομα πόλης ή ταχυδρομικός κώδικας"}},"required":[ "location"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"},"outputSchema":{"type":"object","properties":{"temperature":{"type":" number","description":"Θερμοκρασία σε βαθμούς Κελσίου"},"conditions":{"type":"string","description":"Περιγραφή καιρικών συνθηκών"},"humidity":{"type":"αριθμός","description":" Ποσοστό υγρασίας"}},"required":["θερμοκρασία","συνθήκες","υγρασία"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":" startElicitation","description":"Επιδεικνύει τη δυνατότητα Εκμαίευσης ζητώντας από τον χρήστη να παράσχει πληροφορίες σχετικά με το αγαπημένο του χρώμα, τον αριθμό και τα κατοικίδια ζώα του.","inputSchema":{"type":" object","properties":{},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}}]},"jsonrpc":"2.0","id":2}

Εκτέλεση εργαλείου: Οι πελάτες μπορούν πλέον να εκτελούν εργαλεία/κλήσεις εργαλείων χρησιμοποιώντας αυτήν τη μέθοδο. Αυτό δείχνει το MCP πρωτόγονο σε δράση: Μόλις ανακαλυφθούν τα εργαλεία, ο πελάτης μπορεί να τα καλέσει με τις κατάλληλες παραμέτρους. προκειμένου ναΚαλώντας τη συνάρτηση echo ως παράδειγμαΤο αίτημα έχει ως εξής:
Η απάντηση έχει ως εξής:
{"result":{"content":[{"type":"text","text":"Echo: γεια, το όνομά μου είναι itsvse"}]},"jsonrpc":"2.0","id":3}
Οπως φαίνεται παρακάτω:



(Τέλος)




Προηγούμενος:Εφαρμογή διαλειτουργικότητας αντιγραφής-επικόλλησης με τον κεντρικό υπολογιστή Windows στην εικονική μηχανή Ubuntu στο VMware
Επόμενος:Τα VMware VM συχνά παγώνουν και αφού ανοίξουν και λειτουργήσουν για κάποιο χρονικό διάστημα, παγώνουν
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com