Claude Code وأدوات سطر الأوامر

تكاملات MCP

4 دقيقة للقراءة

بروتوكول سياق النموذج (MCP) يوسع قدرات Claude Code بربطه بالأدوات الخارجية وقواعد البيانات والخدمات.

ما هو MCP؟

MCP (بروتوكول سياق النموذج) هو معيار لربط مساعدي AI بالموارد الخارجية:

┌─────────────────────────────────────────────────────────────┐
│                      Claude Code                            │
├─────────────────────────────────────────────────────────────┤
│                    طبقة بروتوكول MCP                        │
├──────────┬──────────┬──────────┬──────────┬────────────────┤
│  GitHub  │ قاعدة    │ المتصفح │   Slack  │  APIs مخصصة    │
│  Server  │ البيانات │  Server  │  Server  │    Server      │
└──────────┴──────────┴──────────┴──────────┴────────────────┘

إعداد MCP

ملف الإعداد

أنشئ ~/.claude/mcp.json:

{
  "servers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@anthropic-ai/mcp-server-github"],
      "env": {
        "GITHUB_TOKEN": "your-github-token"
      }
    },
    "postgres": {
      "command": "npx",
      "args": ["-y", "@anthropic-ai/mcp-server-postgres"],
      "env": {
        "DATABASE_URL": "postgresql://localhost:5432/mydb"
      }
    }
  }
}

تمكين MCP في Claude Code

claude config set mcp-enabled true

خوادم MCP الشائعة

خادم GitHub

الاتصال بمستودعات GitHub والمشاكل وطلبات الدمج:

# التثبيت
npx -y @anthropic-ai/mcp-server-github

# الاستخدام في Claude Code
"أدرج جميع المشاكل المفتوحة في anthropics/claude-code المصنفة 'bug'"
"أنشئ PR للفرع الحالي مع ملخص التغييرات"

خادم قاعدة البيانات (PostgreSQL)

استعلام وتعديل قاعدة بياناتك:

# التثبيت
npx -y @anthropic-ai/mcp-server-postgres

# الاستخدام في Claude Code
"أرني جميع المستخدمين الذين سجلوا الأسبوع الماضي"
"أضف فهرس على عمود users.email"

خادم المتصفح

جلب وتحليل محتوى الويب:

# التثبيت
npx -y @anthropic-ai/mcp-server-browser

# الاستخدام في Claude Code
"اجلب توثيق React لـ useEffect"

إنشاء خوادم MCP مخصصة

ابنِ خوادم لاحتياجاتك المحددة:

هيكل الخادم الأساسي

// my-mcp-server.ts
import { Server } from '@anthropic-ai/mcp-sdk';

const server = new Server({
  name: 'my-custom-server',
  version: '1.0.0',
});

// تعريف أداة
server.tool({
  name: 'get_user_data',
  description: 'جلب بيانات المستخدم من API الداخلي',
  parameters: {
    userId: { type: 'string', required: true }
  },
  handler: async ({ userId }) => {
    const response = await fetch(`https://internal-api/users/${userId}`);
    return response.json();
  }
});

server.start();

سير عمل MCP

سير العمل 1: التطوير الكامل

باستخدام اتصالات MCP:
1. استعلم قاعدة البيانات عن مخطط المستخدم الحالي (@postgres)
2. تحقق من GitHub للمشاكل المرتبطة (@github)
3. اجلب أحدث أنماط تصميم API (@browser)
4. أنشئ كود خدمة المستخدم المحدث
5. أنشئ PR مع التغييرات (@github)

سير العمل 2: الاستجابة للحوادث

تم الإبلاغ عن مشكلة في الإنتاج:
1. اجلب سجلات الأخطاء من المراقبة (@custom-monitoring)
2. استعلم قاعدة البيانات عن المستخدمين المتأثرين (@postgres)
3. تحقق من النشرات الأخيرة (@github)
4. انشر تحديث الحالة على Slack (@slack)
5. أنشئ تذكرة حادث (@github)

اعتبارات الأمان

متغيرات البيئة

لا تضع الأسرار في الكود مطلقاً:

{
  "servers": {
    "github": {
      "env": {
        "GITHUB_TOKEN": "${GITHUB_TOKEN}"  // من البيئة
      }
    }
  }
}

نطاقات الأذونات

حدد قدرات خادم MCP:

{
  "servers": {
    "postgres": {
      "permissions": {
        "read": true,
        "write": false,
        "ddl": false  // لا تغييرات في المخطط
      }
    }
  }
}

MCP مقابل استدعاءات API المباشرة

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

قوة التوسيع: MCP يحول Claude Code من مساعد كود إلى منصة أتمتة. اربطه بنظامك البيئي التطويري بالكامل ودعه ينسق سير العمل المعقدة عبر خدمات متعددة.

الآن لديك فهم كامل لـ Claude Code. في الوحدة 4، سنتعلم كيفية كتابة مطالبات فعالة لتوليد الكود. :::

اختبار

الوحدة 3: Claude Code وأدوات سطر الأوامر

خذ الاختبار