ما هو بروتوكول سياق النموذج (MCP) وأهميته للواجهات البرمجية (APIs)؟

Ashley Innocent

Ashley Innocent

13 مارس 2026

ما هو بروتوكول سياق النموذج (MCP) وأهميته للواجهات البرمجية (APIs)؟

ملخص سريع

بروتوكول سياق النموذج (MCP) هو معيار لربط المساعدين المدعومين بالذكاء الاصطناعي بمصادر البيانات الخارجية وواجهات برمجة التطبيقات (APIs). يسمح لـ Claude Desktop و Cursor وأدوات الذكاء الاصطناعي الأخرى بالوصول إلى واجهة برمجة التطبيقات الخاصة بك بشكل آمن. تُطبّق Modern PetstoreAPI بروتوكول MCP بحيث يمكن للمساعدين المدعومين بالذكاء الاصطناعي البحث عن الحيوانات الأليفة وتقديم الطلبات وإدارة المخزون من خلال اللغة الطبيعية.

مقدمة

تسأل Claude Desktop: "أرني القطط المتاحة بأقل من 300 دولار." يجيب Claude: "ليس لدي وصول إلى بيانات متجر الحيوانات الأليفة." تحتاج إلى النسخ/اللصق من واجهة برمجة التطبيقات الخاصة بك، مما يقطع سير عملك.

باستخدام MCP (بروتوكول سياق النموذج)، يمكن لـ Claude الوصول إلى واجهة برمجة التطبيقات الخاصة بك مباشرةً. تطرح نفس السؤال، ويقوم Claude بالاستعلام من PetstoreAPI، وتصفية النتائج، وعرض القطط المتاحة لك بأقل من 300 دولار.

تُطبّق Modern PetstoreAPI بروتوكول MCP، مما يسمح للمساعدين المدعومين بالذكاء الاصطناعي بالتفاعل مع متجر الحيوانات الأليفة من خلال اللغة الطبيعية.

إذا كنت تقوم ببناء واجهات برمجة تطبيقات لتكامل الذكاء الاصطناعي، فإن Apidog يساعدك على اختبار تطبيقات MCP والتحقق من تفاعلات المساعدين المدعومين بالذكاء الاصطناعي.

زر

ما هو MCP؟

MCP هو بروتوكول أنشأته Anthropic لربط المساعدين المدعومين بالذكاء الاصطناعي بالموارد الخارجية.

المشكلة التي يحلها MCP

المساعدون المدعومون بالذكاء الاصطناعي أقوياء ولكنهم معزولون. لا يمكنهم:

يوفر MCP طريقة قياسية للمساعدين المدعومين بالذكاء الاصطناعي للاتصال بهذه الموارد بشكل آمن.

مكونات MCP

1. خادم MCP (MCP Server) - يعرض الموارد والأدوات للمساعدين المدعومين بالذكاء الاصطناعي

2. عميل MCP (MCP Client) - مساعد ذكاء اصطناعي (Claude Desktop, Cursor, إلخ.)

3. الموارد (Resources) - البيانات التي يمكن للذكاء الاصطناعي قراءتها (ملفات، سجلات قاعدة بيانات، استجابات API)

4. الأدوات (Tools) - الإجراءات التي يمكن للذكاء الاصطناعي تنفيذها (إنشاء طلب، تحديث حيوان أليف، البحث في المخزون)

هيكلية MCP

AI Assistant (Claude Desktop)
    ↓ MCP Protocol
MCP Server (PetstoreAPI MCP Server)
    ↓ Internal APIs
PetstoreAPI Backend
    ↓
Database

كيف يعمل MCP

1. تسجيل الخادم

قم بتهيئة Claude Desktop للاتصال بخادم MCP:

{
  "mcpServers": {
    "petstore": {
      "command": "node",
      "args": ["/path/to/petstore-mcp-server.js"],
      "env": {
        "PETSTORE_API_KEY": "your-api-key"
      }
    }
  }
}

2. اكتشاف الأدوات

يسأل المساعد المدعوم بالذكاء الاصطناعي: "ما هي الأدوات المتاحة؟"

يستجيب خادم MCP:

{
  "tools": [
    {
      "name": "search_pets",
      "description": "Search for pets by species, status, and price",
      "inputSchema": {
        "type": "object",
        "properties": {
          "species": {"type": "string", "enum": ["CAT", "DOG"]},
          "maxPrice": {"type": "number"},
          "status": {"type": "string", "enum": ["AVAILABLE", "ADOPTED"]}
        }
      }
    },
    {
      "name": "create_order",
      "description": "Place an order for a pet",
      "inputSchema": {
        "type": "object",
        "properties": {
          "petId": {"type": "string"},
          "userId": {"type": "string"}
        },
        "required": ["petId", "userId"]
      }
    }
  ]
}

3. تنفيذ الأداة

يسأل المستخدم: "أرني القطط المتاحة بأقل من 300 دولار"

يستدعي المساعد المدعوم بالذكاء الاصطناعي:

{
  "tool": "search_pets",
  "arguments": {
    "species": "CAT",
    "status": "AVAILABLE",
    "maxPrice": 300
  }
}

يقوم خادم MCP بالتنفيذ:

async function search_pets({ species, status, maxPrice }) {
  const response = await fetch(
    `https://petstoreapi.com/v1/pets?species=${species}&status=${status}&maxPrice=${maxPrice}`
  );
  return await response.json();
}

يعيد النتائج إلى الذكاء الاصطناعي، الذي يقوم بتنسيقها للمستخدم.

MCP مقابل واجهات برمجة التطبيقات التقليدية

الميزة واجهة برمجة تطبيقات تقليدية MCP
الوصول HTTP مباشر عبر مساعد الذكاء الاصطناعي
الواجهة REST/GraphQL اللغة الطبيعية
المصادقة مفاتيح API، OAuth خادم MCP يعالج المصادقة
الاكتشاف وثائق OpenAPI مخططات الأدوات
الاستخدام رمز/curl محادثة
معالجة الأخطاء رموز حالة HTTP الذكاء الاصطناعي يفسر الأخطاء

مثال للمقارنة

واجهة برمجة تطبيقات تقليدية:

curl -H "Authorization: Bearer token" \
  "https://petstoreapi.com/v1/pets?species=CAT&maxPrice=300"

MCP:

User: "Show me available cats under $300"
AI: [Calls search_pets tool, formats results]
"Here are 5 available cats under $300:
1. Fluffy - $250
2. Whiskers - $280
..."

كيف تُطبّق Modern PetstoreAPI بروتوكول MCP

توفر Modern PetstoreAPI خادم MCP.

الأدوات المتاحة

1. search_pets - البحث عن الحيوانات الأليفة حسب المعايير 2. get_pet - الحصول على تفاصيل الحيوان الأليف 3. create_order - تقديم طلب 4. get_inventory - التحقق من المخزون 5. update_pet_status - تحديث توفر الحيوان الأليف

مثال: البحث والطلب

المستخدم: "ابحث لي عن كلب بأقل من 500 دولار وقدم طلبًا"

سير عمل الذكاء الاصطناعي:

1. Call search_pets({species: "DOG", maxPrice: 500})
2. Show results to user
3. User confirms: "Order the Labrador"
4. Call create_order({petId: "019b4132", userId: "user-456"})
5. Confirm order placed

كود خادم MCP

import { Server } from '@modelcontextprotocol/sdk/server/index.js';
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';

const server = new Server({
  name: 'petstore-mcp',
  version: '1.0.0'
}, {
  capabilities: {
    tools: {}
  }
});

server.setRequestHandler('tools/list', async () => ({
  tools: [
    {
      "name": "search_pets",
      "description": "Search for pets",
      "inputSchema": {
        "type": "object",
        "properties": {
          "species": { "type": "string" },
          "maxPrice": { "type": "number" }
        }
      }
    }
  ]
}));

server.setRequestHandler('tools/call', async (request) => {
  const { name, arguments: args } = request.params;

  if (name === 'search_pets') {
    const response = await fetch(
      `https://petstoreapi.com/v1/pets?${new URLSearchParams(args)}`
    );
    return { content: [{ type: 'text', text: JSON.stringify(await response.json()) }] };
  }
});

const transport = new StdioServerTransport();
await server.connect(transport);

اختبار MCP باستخدام Apidog

يساعد Apidog في اختبار تطبيقات MCP:

  1. اختبار عمل واجهات برمجة التطبيقات الأساسية بشكل صحيح
  2. التحقق من تطابق مخططات الأدوات مع عقود API
  3. اختبار معالجة الأخطاء
  4. التحقق من تدفقات المصادقة

لماذا يهم MCP

1. واجهات برمجة تطبيقات (APIs) متوافقة مع الذكاء الاصطناعي

تصبح واجهات برمجة التطبيقات قابلة للوصول من خلال اللغة الطبيعية. يمكن للمستخدمين غير التقنيين التفاعل مع واجهة برمجة التطبيقات الخاصة بك عبر المساعدين المدعومين بالذكاء الاصطناعي.

2. التوحيد القياسي

يصبح MCP هو المعيار لتكامل الذكاء الاصطناعي مع واجهات برمجة التطبيقات. ادعمه مرة واحدة، واعمل مع جميع عملاء MCP.

3. الأمان

تتعامل خوادم MCP مع المصادقة. لا يحتاج المساعدون المدعومون بالذكاء الاصطناعي إلى وصول مباشر إلى واجهة برمجة التطبيقات.

4. قابلية التركيب

يمكن للمساعدين المدعومين بالذكاء الاصطناعي دمج خوادم MCP متعددة، لإنشاء سير عمل عبر الخدمات.

الخاتمة

يربط MCP بين المساعدين المدعومين بالذكاء الاصطناعي وواجهات برمجة التطبيقات. تُطبّق Modern PetstoreAPI بروتوكول MCP، مما يسمح لـ Claude Desktop وأدوات الذكاء الاصطناعي الأخرى بالتفاعل مع متجر الحيوانات الأليفة من خلال اللغة الطبيعية.

نقاط رئيسية:

الأسئلة الشائعة

ما هي المساعدات المدعومة بالذكاء الاصطناعي التي تدعم MCP؟

Claude Desktop، Cursor، وغيرها من الأدوات المدعومة من Anthropic. الدعم يتزايد.

هل MCP آمن؟

نعم. تتعامل خوادم MCP مع المصادقة. لا يرى المساعدون المدعومون بالذكاء الاصطناعي مفاتيح API.

هل يمكنني استخدام MCP مع واجهات برمجة التطبيقات الموجودة؟

نعم. قم ببناء خادم MCP يغلف واجهة برمجة التطبيقات الموجودة لديك.

هل يحل MCP محل واجهات برمجة تطبيقات REST؟

لا. MCP مخصص لوصول المساعد المدعوم بالذكاء الاصطناعي. تظل واجهات برمجة تطبيقات REST مخصصة للوصول البرمجي المباشر.

كيف أقوم باختبار أدوات MCP؟

استخدم Apidog لاختبار واجهات برمجة التطبيقات الأساسية، ثم اختبر أدوات MCP باستخدام Claude Desktop.

ممارسة تصميم API في Apidog

اكتشف طريقة أسهل لبناء واستخدام واجهات برمجة التطبيقات