תיקייה זו מכילה דוגמאות מלאות ועובדות של לקוחות MCP בשפות תכנות שונות. כל לקוח מדגים את כל הפונקציונליות המתוארת במדריך README.md הראשי.
- פרוטוקול תקשורת: SSE (אירועים שנשלחים מהשרת) דרך HTTP
- שרת יעד:
http://localhost:8080 - מאפיינים:
- יצירת חיבור ושליחת פינג
- רשימת כלים
- פעולות מחשבון (חיבור, חיסור, כפל, חילוק, עזרה)
- טיפול בשגיאות והפקת תוצאות
להרצה:
# 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)
| שפה | פרוטוקול תקשורת | הפעלת שרת | מודל אסינכרוני | ספריות מפתח |
|---|---|---|---|---|
| Java | SSE/HTTP | חיצוני | סינכרוני | 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 פועל על הפורט/נתיב הצפוי
- מודול לא נמצא: התקן את MCP SDK הנדרש לשפה שלך
- הרשאה נדחתה: בדוק הרשאות קבצים עבור פרוטוקול Stdio
- כלי לא נמצא: ודא שהשרת מיישם את הכלים הצפויים
- הפעל לוגים מפורטים ב-MCP SDK שלך
- בדוק לוגים של השרת להודעות שגיאה
- וודא שמות כלים וחתימות תואמים בין הלקוח לשרת
- בדוק עם MCP Inspector תחילה כדי לוודא את תקינות השרת
כתב ויתור:
מסמך זה תורגם באמצעות שירות תרגום מבוסס בינה מלאכותית Co-op Translator. למרות שאנו שואפים לדיוק, יש להיות מודעים לכך שתרגומים אוטומטיים עשויים להכיל שגיאות או אי דיוקים. המסמך המקורי בשפתו המקורית צריך להיחשב כמקור הסמכותי. עבור מידע קריטי, מומלץ להשתמש בתרגום מקצועי על ידי אדם. איננו נושאים באחריות לאי הבנות או לפרשנויות שגויות הנובעות משימוש בתרגום זה.