إنشاء قوالب ومسارات عمل قابلة لإعادة الاستخدامتُمكّن الـ Prompts الخوادم من تحديد قوالب ومسارات عمل قابلة لإعادة الاستخدام، والتي يمكن للعملاء عرضها بسهولة للمستخدمين و LLMs. إنها توفر طريقة قوية لتوحيد ومشاركة تفاعلات LLM الشائعة.تم تصميم الـ Prompts لتكون مُدارة من قبل المستخدم، مما يعني أنها معروضة من الخوادم إلى العملاء بهدف تمكين المستخدم من اختيارها بشكل صريح للاستخدام.الـ Prompts في MCP هي قوالب محددة مسبقًا يمكنها:الظهور كعناصر واجهة مستخدم (مثل أوامر الشرطة المائلة)
يتم تعريف كل Prompt بما يلي:يمكن للعملاء اكتشاف الـ Prompts المتاحة من خلال نقطة النهاية prompts/list
:لاستخدام Prompt، يقوم العملاء بإجراء طلب prompts/get
:يمكن أن تكون الـ Prompts ديناميكية وتتضمن:{
"name": "analyze-project",
"description": "Analyze project logs and code",
"arguments": [
{
"name": "timeframe",
"description": "Time period to analyze logs",
"required": true
},
{
"name": "fileUri",
"description": "URI of code file to review",
"required": true
}
]
}
عند معالجة طلب prompts/get
:{
"messages": [
{
"role": "user",
"content": {
"type": "text",
"text": "Analyze these system logs and the code file for any issues:"
}
},
{
"role": "user",
"content": {
"type": "resource",
"resource": {
"uri": "logs://recent?timeframe=1h",
"text": "[2024-03-14 15:32:11] ERROR: Connection timeout in network.py:127\n[2024-03-14 15:32:15] WARN: Retrying connection (attempt 2/3)\n[2024-03-14 15:32:20] ERROR: Max retries exceeded",
"mimeType": "text/plain"
}
}
},
{
"role": "user",
"content": {
"type": "resource",
"resource": {
"uri": "file:///path/to/code.py",
"text": "def connect_to_service(timeout=30):\n retries = 3\n for attempt in range(retries):\n try:\n return establish_connection(timeout)\n except TimeoutError:\n if attempt == retries - 1:\n raise\n time.sleep(5)\n\ndef establish_connection(timeout):\n # Connection implementation\n pass",
"mimeType": "text/x-python"
}
}
}
]
}
إليك مثال كامل لتنفيذ الـ Prompts في خادم MCP:1.
استخدم أسماء Prompt واضحة و وصفية
2.
قدم أوصافًا تفصيلية للـ Prompts والوسائط
3.
تحقق من صحة جميع الوسائط المطلوبة
4.
تعامل مع الوسائط المفقودة بأمان
5.
ضع في اعتبارك إدارة الإصدارات لقوالب الـ Prompt
6.
قم بتخزين المحتوى الديناميكي مؤقتًا عند الاقتضاء
8.
وثق تنسيقات الوسائط المتوقعة
9.
ضع في اعتبارك قابلية تركيب الـ Prompt
10.
اختبر الـ Prompts بمدخلات متنوعة
يمكن عرض الـ Prompts في واجهات مستخدم العميل على النحو التالي:يمكن للخوادم إخطار العملاء بتغييرات الـ Prompt:1.
قدرة الخادم: prompts.listChanged
2.
إشعار: notifications/prompts/list_changed
3.
يقوم العميل بإعادة جلب قائمة الـ Prompt
قم بتطهير مدخلات المستخدم
ضع في اعتبارك تحديد المعدل
قم بتنفيذ عناصر التحكم في الوصول
تعامل مع البيانات الحساسة بشكل مناسب
تحقق من صحة المحتوى الذي تم إنشاؤه
ضع في اعتبارك مخاطر حقن الـ Prompt
Modified at 2025-03-12 10:39:23