Claude Code: MCP (بروتوكول سياق النموذج)
آخر تحديث: 2026-08-31
MCP يتيح لـ Claude Code تجاوز قراءة/كتابة الملفات المحلية — عبر خوادم MCP، يمكنه الاتصال بقواعد البيانات وتشغيل المتصفحات واستدعاء APIs، بتوسع قدرات غير محدود.
💡 نصيحة: MCP (بروتوكول سياق النموذج) هو بروتوكول مفتوح من Anthropic يتيح لنماذج الذكاء الاصطناعي الاتصال الآمن بمصادر البيانات والأدوات الخارجية. Claude Code يدعم MCP أصلاً.
📋 المتطلبات المسبقة: الفصل 11 - إعداد الصلاحيات
1. ما ستتعلمه
- مفاهيم MCP الأساسية والبنية
- إعداد خادم MCP
- ممارسات خوادم MCP الشائعة
- خوادم MCP مخصصة
- أمان وصلاحيات MCP
2. مفاهيم MCP الأساسية
(1) نظرة عامة على البنية
graph LR
CC[Claude Code] <--> MCP[MCP Client]
MCP <--> S1[Filesystem Server]
MCP <--> S2[Database Server]
MCP <--> S3[GitHub Server]
MCP <--> S4[Browser Server]
| المفهوم | الوصف | التشبيه |
|---|---|---|
| مضيف MCP | البرنامج الذي يشغل نموذج الذكاء الاصطناعي | المتصفح |
| عميل MCP | يتواصل مع الخادم | عميل HTTP |
| خادم MCP | يوفر أدوات وبيانات | خادم HTTP |
| أداة | عملية يكشفها الخادم | نقطة نهاية API |
| مورد | بيانات يكشفها الخادم | مورد API |
(2) قدرات MCP
| القدرة | بدون MCP | مع MCP |
|---|---|---|
| قراءة الملفات المحلية | ✅ مدمج | ✅ مدمج |
| كتابة الملفات المحلية | ✅ مدمج | ✅ مدمج |
| تنفيذ شل | ✅ مدمج | ✅ مدمج |
| استعلام قاعدة البيانات | ❌ | ✅ PostgreSQL MCP |
| تشغيل GitHub | ❌ (CLI فقط) | ✅ GitHub MCP |
| أتمتة المتصفح | ❌ | ✅ Browser MCP |
| البحث في الويب | ❌ | ✅ Search MCP |
▶ مثال 1: سير عمل MCP
TEXT
📖 للعرض فقط
# Without MCP: Manual database query
> Check how many records are in the users table
Claude Code: I can't access the database directly. Run:
psql -c "SELECT COUNT(*) FROM users"
# With MCP (PostgreSQL Server): Direct query
> Check how many records are in the users table
Claude Code: [Query via PostgreSQL MCP]
users table has 12,450 records.
Active users: 8,920 (71.6%),
Registered in last 7 days: 342.
3. إعداد خادم MCP
(1) الإعداد العام
JSON
// ~/.claude/mcp_settings.json
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@anthropic/mcp-filesystem", "/home/user/projects"]
},
"postgres": {
"command": "npx",
"args": ["-y", "@anthropic/mcp-postgres"],
"env": {
"DATABASE_URL": "postgresql://user:pass@localhost:5432/mydb"
}
}
}
}
(2) إعداد على مستوى المشروع
JSON
// .claude/mcp_settings.json
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@anthropic/mcp-github"],
"env": {
"GITHUB_TOKEN": "ghp_xxxxx"
}
}
}
}
4. خوادم MCP الشائعة
(1) خوادم MCP الرسمية
| الخادم | الوظيفة | أمر التثبيت |
|---|---|---|
| Filesystem | عمليات ملفات محسّنة | npx -y @anthropic/mcp-filesystem |
| PostgreSQL | استعلامات قاعدة البيانات | npx -y @anthropic/mcp-postgres |
| GitHub | عمليات GitHub API | npx -y @anthropic/mcp-github |
| GitLab | عمليات GitLab API | npx -y @anthropic/mcp-gitlab |
| Browser | أتمتة المتصفح | npx -y @anthropic/mcp-browser |
| Brave Search | بحث الويب | npx -y @anthropic/mcp-brave-search |
▶ مثال 2: ممارسة PostgreSQL MCP
TEXT
📖 للعرض فقط
> Query user registrations in the last 7 days, grouped by day
Claude Code: [Using PostgreSQL MCP]
→ Executing SQL query...
Results: 7-day breakdown with daily counts
5. خادم MCP مخصص
▶ مثال 3: إنشاء خادم MCP بسيط
TYPESCRIPT
import { Server } from "@anthropic/mcp";
const server = new Server({
name: "weather",
version: "1.0.0",
});
server.tool("get_weather", "Get current weather for a city", {
city: { type: "string", description: "City name" },
}, async ({ city }) => {
const response = await fetch(
`https://api.weather.com/current?city=${city}`
);
const data = await response.json();
return {
content: [{
type: "text",
text: `${city}: ${data.temperature}°C, ${data.condition}`
}]
};
});
server.start();
6. أمان وصلاحيات MCP
| الممارسة | الوصف |
|---|---|
| أقل صلاحية | فقط اضبط خوادم MCP الضرورية |
| متغيرات البيئة | الرموز/كلمات المرور عبر متغيرات بيئة، لا تُشفّر ثابتة |
| القراءة فقط أولاً | اتصال MCP لقاعدة البيانات يفضل القراءة فقط |
| سجلات التدقيق | سجّل سجل استدعاء أدوات MCP |
| عزل الشبكة | لا تعرّض قواعد بيانات الإنتاج لـ MCP |
❓ أسئلة شائعة
س ما الفرق بين MCP واستدعاءات API؟
ج MCP بروتوكول معياري يوفر اكتشاف واستدعاء أدوات موحد. استدعاءات API تحتاج كوداً مشفراً؛ MCP يتيح لـ Claude Code اكتشاف واستخدام الأدوات ديناميكياً.
س هل خوادم MCP تبطئ Claude Code؟
ج أبطأ قليلاً عند الإطلاق (تحميل إعداد MCP)، لكن فقط استدعاءات أدوات MCP تستغرق وقتاً أثناء التشغيل. العمليات العادية غير متأثرة.
س كيف أتحقق من مشاكل اتصال MCP؟
ج شغّل
claude /mcp لعرض الخوادم المتصلة والأدوات. تحقق من مسارات ملفات الإعداد ومتغيرات البيئة.س هل يمكن لـ MCP الاتصال بقواعد بيانات الإنتاج؟
ج تقنياً نعم، لكن لا يُوصى به بشدة. استخدم نسخاً متماثلة للقراءة فقط أو قواعد بيانات تطوير.
📖 ملخص
- MCP يتيح لـ Claude Code الاتصال بالعالم الخارجي: قواعد بيانات، GitHub، متصفحات، إلخ
- الإعداد عبر
mcp_settings.json - الخوادم الرسمية: Filesystem، PostgreSQL، GitHub، Browser، إلخ
- خوادم MCP مخصصة يمكنها توسيع القدرات
- الأمان أولاً: أقل صلاحية، القراءة فقط مفضلة، متغيرات بيئة لبيانات الاعتماد
📝 تمارين
- أساسي (⭐): اضبط خادم Filesystem MCP، تحقق من عمل عمليات الملفات المحسّنة.
- متوسط (⭐⭐): اضبط PostgreSQL MCP، استعلم وحلل نتائج قاعدة البيانات مع Claude Code.
- متقدم (⭐⭐⭐): أنشئ خادم MCP مخصص يوفر وظيفة أعمال محددة، ادمجه في Claude Code.