
دليل تطوير خوادم MCP
تعلّم كيفية بناء ونشر خادم بروتوكول سياق النماذج (MCP) لربط نماذج الذكاء الاصطناعي مع الأدوات ومصادر البيانات الخارجية. دليل خطوة بخطوة للمبتدئين والمطورين المت...
يوحد MCP وصول LLM الآمن إلى البيانات الخارجية والأدوات والإضافات، مما يتيح تكامل الذكاء الاصطناعي بشكل مرن وقوي وقابل للتشغيل البيني.
بروتوكول سياق النماذج (MCP) هو واجهة معيارية مفتوحة تُمكّن نماذج اللغة الكبيرة (LLMs) من الوصول الآمن والمتسق إلى مصادر البيانات الخارجية، والأدوات، والقدرات. يضع طبقة تواصل موحدة بين تطبيقات الذكاء الاصطناعي ومزودي السياق المختلفين، ليعمل بمثابة “USB-C” لأنظمة الذكاء الاصطناعي.
يتبع MCP بنية خادم-عميل:
يحدد MCP ثلاث عناصر أساسية تعتبر حجر الأساس للبروتوكول:
تمثل الموارد البيانات والمحتوى الذي تتيحه خوادم MCP لنماذج اللغة الكبيرة.
مثال استخدام: خادم MCP يعرض ملف سجلات كـ"مورد" بمعرف file:///logs/app.log
المحفزات هي قوالب أو سير عمل معدة مسبقاً تقدمها الخوادم لتوجيه تفاعل النماذج اللغوية.
مثال استخدام: محفز مولد رسائل git commit يقبل تغييرات الكود كمدخلات
الأدوات تعرض وظائف قابلة للتنفيذ يمكن للنماذج اللغوية استدعاؤها (عادةً بموافقة المستخدم) لأداء مهام معينة.
مثال استخدام: أداة آلة حاسبة تنفذ عمليات حسابية على مدخلات يقدمها النموذج
// خادم يعرض ملف سجلات واحد كمورد
const server = new Server({ /* config */ }, { capabilities: { resources: {} } });
// قائمة الموارد المتاحة
server.setRequestHandler(ListResourcesRequestSchema, async () => {
return {
resources: [
{
uri: "file:///logs/app.log",
name: "سجلات التطبيق",
mimeType: "text/plain"
}
]
};
});
// توفير محتوى المورد
server.setRequestHandler(ReadResourceRequestSchema, async (request) => {
if (request.params.uri === "file:///logs/app.log") {
const logContents = await readLogFile();
return {
contents: [{
uri: request.params.uri,
mimeType: "text/plain",
text: logContents
}]
};
}
throw new Error("Resource not found");
});
const server = new Server({ /* config */ }, { capabilities: { tools: {} } });
// قائمة الأدوات المتاحة
server.setRequestHandler(ListToolsRequestSchema, async () => {
return {
tools: [{
name: "calculate_sum",
description: "جمع رقمين معاً",
inputSchema: {
type: "object",
properties: {
a: { type: "number", description: "الرقم الأول" },
b: { type: "number", description: "الرقم الثاني" }
},
required: ["a", "b"]
},
annotations: {
title: "حساب المجموع",
readOnlyHint: true,
openWorldHint: false
}
}]
};
});
// تنفيذ الأداة
server.setRequestHandler(CallToolRequestSchema, async (request) => {
if (request.params.name === "calculate_sum") {
try {
const { a, b } = request.params.arguments;
if (typeof a !== 'number' || typeof b !== 'number') {
throw new Error("Invalid input: 'a' and 'b' must be numbers.");
}
const sum = a + b;
return {
content: [{ type: "text", text: String(sum) }]
};
} catch (error: any) {
return {
isError: true,
content: [{ type: "text", text: `Error calculating sum: ${error.message}` }]
};
}
}
throw new Error("Tool not found");
});
MCP هو واجهة معيارية مفتوحة تتيح لنماذج اللغة الكبيرة الوصول الآمن والمتسق إلى مصادر البيانات الخارجية والأدوات والقدرات، مما يخلق طبقة تواصل موحدة بين تطبيقات الذكاء الاصطناعي ومزودي السياق.
يتكون MCP من المضيفين والعملاء والخوادم ومصادر البيانات. ويستخدم عناصر أساسية — الموارد والمحفزات والأدوات — لتمكين تفاعل مرن وآمن بين نماذج اللغة الكبيرة والأنظمة الخارجية.
يبسط MCP تكامل الذكاء الاصطناعي، ويعزز الأمان، ويقلل من الاعتماد على مورد معين، ويتيح الوصول السلس إلى مصادر معلومات وأدوات متنوعة للمطورين والمؤسسات.
يمكن تنفيذ MCP من خلال خوادم تعرض الموارد أو الأدوات (مثل الوصول إلى ملفات السجلات، أو أدوات الآلة الحاسبة) باستخدام واجهة موحدة، مما يبسط الاتصال مع نماذج الذكاء الاصطناعي.
يقوم MCP بتوحيد عملية استدعاء النماذج اللغوية للوظائف أو الأدوات الخارجية، بطريقة مشابهة لكيفية توسيع الإضافات لقدرات المتصفحات أو البرمجيات.
ابدأ في بناء أنظمة ذكاء اصطناعي قوية من خلال تكاملات معيارية، ووصول بيانات آمن، وربط مرن للأدوات باستخدام FlowHunt.
تعلّم كيفية بناء ونشر خادم بروتوكول سياق النماذج (MCP) لربط نماذج الذكاء الاصطناعي مع الأدوات ومصادر البيانات الخارجية. دليل خطوة بخطوة للمبتدئين والمطورين المت...
مثال سريع حول كيفية تطوير خادم MCP خاص بك باستخدام بايثون.
الذكاء الاصطناعي العامل يعيد تعريف أتمتة سير العمل من خلال بروتوكول سياق النماذج (MCP)، مما يمكّن من تكامل ديناميكي وقابل للتوسع لوكلاء الذكاء الاصطناعي مع موار...