إنشاء خادم MCP لـ Claude Code — دليل عملي خطوة بخطوة

CometAPI
AnnaNov 22, 2025
إنشاء خادم MCP لـ Claude Code — دليل عملي خطوة بخطوة

بروتوكول سياق النموذج (MCP) هو معيار مفتوح يسمح للنماذج مثل Anthropic كلود وأدوات المطور مثل كلود كود الاتصال بالأدوات الخارجية ومصادر البيانات والمطالبات بطريقة آمنة ومعيارية.

سوف يرشدك هذا الدليل خلال عملية إنشاء خادم MCP الخاص بك من الصفر، مما يتيح لـ Claude Code الوصول إلى ميزات مخصصة وبالتالي توسيع وظائفه بشكل كبير إلى ما هو أبعد من ميزاته المضمنة.

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

MCP (بروتوكول السياق النموذجي) هو المواصفات المفتوحة مُصمم لتوحيد كيفية اتصال عملاء نموذج اللغة (مثل Claude وClaude Code أو غيرهما من واجهات LLM) بخوادم الأدوات ومصادر البيانات. يُمكن اعتبار MCP بمثابة "منفذ USB-C لـ LLMs": فهو يُحدد مخطط نقل/JSON-RPC وطريقة شائعة للخوادم لنشر ثلاثة أنواع من الإمكانيات:

  • ممارستنا - بيانات تشبه الملف أو المستند والتي يمكن للعميل قراءتها (على سبيل المثال، صف قاعدة بيانات، أو ملف نصي، أو حمولة JSON).
  • الأدوات - وظائف قابلة للاستدعاء يمكن للنموذج أن يطلب من المضيف تنفيذها (بموافقة المستخدم).
  • يطالبك - قوالب مطالبات أو سير عمل قابلة لإعادة الاستخدام يمكن للنموذج/العميل استدعاؤها.

يدعم بروتوكول MCP عدة نُقل (stdio، HTTP، SSE)، ويوفر مخططات وحزم تطوير برمجيات وخوادم نموذجية، مما يُغنيك عن ابتكار تنسيق الأسلاك بنفسك. يُدار البروتوكول بشكل عام (المواصفات + حزم تطوير البرمجيات)، ويتضمن دروسًا تعليمية ومعرضًا لخوادم نموذجية لتسريع عملية التبني.

كيف يتم تصميم MCP؟

إن هندسة MCP بسيطة ومقسمة إلى وحدات عمدًا: القطع الأساسية هي MCP الخوادم، إم سي بي عميلو وسائل النقل التي تحمل رسائل JSON-RPC المؤطرة فيما بينها. فيما يلي المكونات الرئيسية التي ستتفاعل معها عند بناء خادم لكلود كود (أو عملاء MCP آخرين).

الخادم والعميل والبروتوكول

  • خادم MCP - خدمة ينشر الأدوات والموارد والمطالبات. يمكن للأدوات تنفيذ تأثيرات جانبية أو جلب بيانات؛ الموارد تُبرز محتوى للقراءة فقط؛ المطالبات هي قوالب مطالبات قابلة لإعادة الاستخدام، يمكن للعميل طلب أخذ عينة منها.
  • عميل MCP (المضيف) — عادةً ما يكون جزءًا من مُضيف LLM (مثل Claude Code، أو مُكوِّن VS Code الإضافي، أو عميل متصفح). يكتشف الخوادم المتاحة، ويُقدّم أوصاف الأدوات للنموذج، ويُوجّه الاستدعاءات التي يبدأها النموذج إلى الخوادم.
  • بروتوكول — يتم ترميز الرسائل بصيغة JSON-RPC؛ وتحدد المواصفات أحداث دورة الحياة، واكتشاف الأداة، والاستدعاء، والإكمالات/العينات، وكيفية نقل النتائج المنظمة مرة أخرى إلى العميل والنموذج.

نمط الاتصال (ما يحدث عند استخدام أداة ما)

  1. يرسل العميل رسالة المستخدم إلى النموذج.
  2. يقوم النموذج بتحليل السياق ويقرر استدعاء أداة تم الكشف عنها بواسطة MCP (أو أدوات متعددة).
  3. يقوم العميل بإعادة توجيه استدعاء الأداة إلى خادم MCP عبر النقل المختار.
  4. يقوم الخادم بتنفيذ الأداة وإرجاع النتائج.
  5. يستقبل النموذج مخرجات الأداة ويضع الإجابة النهائية للمستخدم.

أساسيات التنفيذ

  • JSON-RPC تتبع الرسائل مخطط MCP.
  • تعريفات الأدوات يتم نشرها في استجابات اكتشاف الخادم حتى يتمكن العملاء من تقديمها في واجهة المستخدم.
  • ممارستنا يتم الإشارة إليها بواسطة @source:path بناء الجملة من قبل العملاء (على سبيل المثال، @postgres:...), مما يسمح للنماذج بالإشارة إلى محتوى خارجي دون تضمين بيانات ضخمة في المطالبة.

لماذا دمج Claude Code مع خوادم MCP؟

Claude Code هو عرض من Anthropic يركز على سير العمل المُركز على الكود والمطور (تكامل المحرر/بيئة التطوير المتكاملة، فهم الكود، إلخ). يتيح عرض أدواتك الداخلية (البحث عن المصدر، مُشغّل تكامل التكوين، نظام التذاكر، السجلات الخاصة) عبر خوادم MCP لـ Claude Code استدعائها كـ أدوات من الدرجة الأولى داخل محادثات الترميز وتدفقات الوكيل.

يؤدي دمج Claude Code مع خوادم MCP إلى فتح إمكانيات عملية ذات صلة بالإنتاج لوكيل الترميز:

1. دع النموذج عمل على الأنظمة الحقيقية

يستطيع كلود كود أن يطلب من خادم MCP الاستعلام عن متتبعات المشكلات، أو تشغيل استعلامات قواعد البيانات، أو قراءة مستندات ضخمة، أو إنشاء طلبات سحب على GitHub، مما يُمكّن من أتمتة شاملة من داخل جلسة البرمجة. يدعم كلود كود هذا بشكل صريح (أمثلة: الاستعلام عن Postgres أو Sentry أو إنشاء طلبات سحب).

2. تفريغ البيانات الكبيرة والمنطق المتخصص

بدلاً من تضمين جميع مصادر البيانات في موجه الأوامر (الذي يستهلك الرموز)، يمكنك نشر البيانات والأدوات عبر MCP. يستدعي النموذج الأداة، ويحصل على استجابة منظمة، ويستغلها للتفسير، مما يقلل من استخدام الرموز ويسمح للخوادم بمعالجة المهام الشاقة (استعلامات قواعد البيانات، وقراءات الملفات الطويلة، والمصادقة).

3. الأمن والحوكمة

يُركز نظام MCP التحكم في الوصول والتدقيق على مستوى الخادم، مما يُتيح للمؤسسات إدراج الخوادم المعتمدة في القائمة البيضاء، والتحكم في الأدوات المتاحة، وتحديد المخرجات. كما يدعم Claude Code تكوين MCP المؤسسي والموافقة لكل نطاق.

4. إمكانية إعادة الاستخدام والنظام البيئي

خوادم MCP قابلة لإعادة الاستخدام عبر العملاء والفرق. قم بالبناء مرة واحدة، وسيتمكن العديد من عملاء Claude/LLM من استخدام نفس الخدمات (أو تبديل التطبيقات).

ماذا تحتاج قبل أن تبدأ؟

الحد الأدنى من المتطلبات

  • آلة تطوير مع بيثون 3.10 + (سنستخدم بايثون في المثال). كبديل، تدعم حزم MCP SDK لغة Node واللغات الأخرى.
  • uv (أداة Astral) أو برنامج تشغيل مكافئ لتشغيل خوادم MCP stdio (يستخدم البرنامج التعليمي MCP uv).خطوات التثبيت موضحة أدناه.
  • تم تثبيت Claude Code أو الوصول إلى عميل Claude (سطح المكتب أو سطر الأوامر) لتسجيل خادمك واختباره؛ أو أي عميل يدعم MCP. يدعم Claude Code خوادم HTTP وSSE وstdio المحلية.
  • ملاحظة أمنية:قم بإضافة خوادم MCP الموثوقة فقط إلى Claude Code في إعدادات الفريق أو المؤسسة — تتيح MCP للخوادم الوصول إلى البيانات الحساسة، وتوجد مخاطر الحقن الفوري إذا أعاد الخادم محتوى ضارًا.

كيفية تثبيت وتحقق Claude Code CLI

هذا هو دليل التثبيت والاستخدام لبرنامج Claude Code.

1) ملخص سريع - طرق التثبيت الموصى بها

استخدم المثبت الأصلي (موصى به) أو Homebrew على macOS/Linux. NPM متاح إذا كنت بحاجة إلى تثبيت قائم على Node. يدعم Windows مثبتات PowerShell / CMD. المصدر: وثائق Claude Code الرسمية وGitHub.


2) المتطلبات الأساسية

  • macOS 10.15+، أو Ubuntu 20.04+/Debian 10+، أو Windows 10+ (يوصى باستخدام WSL على Windows).
  • Node.js 18+ مطلوب فقط لطريقة تثبيت NPM.

3) أوامر التثبيت (اختر واحدة)

أصلي (موصى به — لا يعتمد على Node) وmacOS / Linux / WSL:

curl -fsSL https://claude.ai/install.sh | bash
# optional: install latest explicitly

curl -fsSL https://claude.ai/install.sh | bash -s latest
# or install a specific version

curl -fsSL https://claude.ai/install.sh | bash -s 1.0.58

ويندوز بوويرشيل:

irm https://claude.ai/install.ps1 | iex
# or for latest: & (::Create((irm https://claude.ai/install.ps1))) latest

(هذه هي البرامج النصية الرسمية للتثبيت).

NPM (إذا كنت تريد تثبيتًا عالميًا يعتمد على العقدة):

# requires Node.js 18+

npm install -g @anthropic-ai/claude-code

لا تستخدم sudo npm install -g — تحذير من تثبيتات sudo العالمية (مشاكل تتعلق بالأذونات/الأمان). إذا واجهت أخطاءً في الأذونات، فاستخدم nvm أو قم بإصلاح بادئة npm العالمية الخاصة بك بدلاً من استخدام sudo.

4) التحقق من تثبيت الملف الثنائي (الفحوصات الأساسية)

قم بتشغيل هذه البرامج محليًا فورًا بعد التثبيت:

# is the command on PATH?

which claude

# version (or -v)

claude --version
# or

claude -v

# help (sanity check)

claude --help

متوقع: which يظهر المسار (على سبيل المثال /usr/local/bin/claude or ~/.nvm/.../bin/claude) و claude --version يطبع سلسلة نصية شبيهة بـ semver. يُظهر كلٌّ من docs وREADME claude كنقطة دخول CLI الأساسية.


5) التحقق من صحة التثبيت والتكوين (الفحوصات الموصى بها)

a) claude doctor،يجري:

claude doctor

يتحقق هذا التشخيص المدمج من نوع التثبيت لديك والمشكلات الشائعة (مثل مشكلات أذونات npm) والتبعيات مثل ripgrepويقترح حلولاً. توصي الوثائق صراحةً بتشغيل claude doctor بعد التثبيت.

ب) إجراء اختبار الدخان (غير تفاعلي)

من دليل المشروع الخاص بك:

cd /path/to/your/project
claude -p "Explain this project in 3 sentences"

يستخدم هذا طباعة الوضع (-p) لإرسال مطالبة واحدة ثم الخروج؛ وهو أمر جيد للتحقق السريع من CI أو التحقق من الوظائف السريعة.

ج) التحقق من المصادقة (تأكد من أن CLI يمكن أن يصل إلى Anthropic)

يدعم Claude Code العديد من تدفقات المصادقة (مصادقة OAuth لوحدة التحكم، ومفتاح API، وتكاملات المزوّد). الفحوصات الشائعة:

  1. إذا كنت تستخدم مفتاح API (CI / headless / local env var):
export ANTHROPIC_API_KEY="sk-..."
# then

claude auth status
claude auth whoami    # or `claude auth whoami` / `claude whoami` depending on version

يمكنك استخدام كوميت ايه بي ايمفتاح API الخاص بـ Claude Code لاستخدامه، واستخدام API الخاص بـ Claude من خلال CometAPI سيمنحك خصمًا بنسبة 20%.

  1. إذا كنت تستخدم OAuth عبر وحدة التحكم - يجري:
claude auth status
claude auth whoami

يجب أن ترى معلومات الحساب/الخطة أو تأكيدًا على مصادقتك.

إعداد البيئة خطوة بخطوة

فيما يلي خطوات ملموسة لإعداد مجموعتين شائعتين من أدوات المطورين (TypeScript وPython)، متبوعة بإجراء فحوصات سريعة للتأكد من أن كل شيء يعمل.

H3 — أ. إعداد TypeScript / Node (المسار الأسرع)

  1. إنشاء المشروع وتثبيت SDK:
mkdir mcp-demo && cd mcp-demo
npm init -y
npm install @modelcontextprotocol/sdk express zod
npm install --save-dev typescript tsx @types/node @types/express
  1. إنشاء server.ts(نقدم مثالاً كاملاً في قسم "كيفية البناء بسرعة...")
  2. تشغيل:
npx -y tsx server.ts
  1. اختبار محليا مع مفتش MCP أو أضف إلى Claude Code:
npx @modelcontextprotocol/inspector
# or (for Claude Code)

claude mcp add --transport http my-server http://localhost:3000/mcp

(تتيح لك أوامر Inspector وClaude التحقق من صحة الاكتشاف واستدعاء الأدوات.)

كيفية بناء خادم MCP بسرعة لـ Claude Code؟

قائمة تحقق سريعة

  1. قم بتشغيل الخادم الخاص بك (يوصى باستخدام HTTP القابل للبث): node server.ts or uvicorn server:app.

  2. من جهاز التطوير الخاص بك، إما:

  • استعمل مفتش MCP للتحقق من صحة (npx @modelcontextprotocol/inspector) وتأكيد tools/list و resources/list. أو
  • أضف الخادم إلى Claude Code: claude mcp add --transport http <name> http://<host>:<port>/mcp (أو اتبع تدفقات واجهة المستخدم على الويب إذا كان عميلك يدعم MCP عن بعد).

إذا كنت تخطط لاستخدام موصل API للرسائل الخاص بـ Anthropic لـ MCP عن بعد (لا يوجد عميل منفصل)، فاقرأ مستندات Claude — قد يكون هناك حاجة إلى رأس تجريبي (تحقق من المستندات للحصول على الرأس الدقيق وحالة الدعم الحالية).

فيما يلي مثالان كاملان ومختصران لخادم يُمكن نسخهما وتشغيلهما وتوصيلهما بـ Claude Code (أو MCP Inspector). يستخدم مثال TypeScript Express + مجموعة تطوير برامج TypeScript؛ بينما يُظهر مثال Python تركيب FastAPI.

ملاحظة: الكود أدناه يتبع أمثلة SDK العامة، وهو مُقتصر عمدًا على الحد الأدنى للوضوح. في الإنتاج، أضف المصادقة، والتسجيل، وتحديد المعدل، والتحقق من صحة الإدخالات، بما يتجاوز الإعدادات الافتراضية لـ SDK.


المثال 1: TypeScript + Express (HTTP قابل للبث)

إنشاء server.ts (مكتمل):

// server.ts
import express from "express";
import * as z from "zod/v4";
import { McpServer, ResourceTemplate } from "@modelcontextprotocol/sdk/server/mcp.js";
import { StreamableHTTPServerTransport } from "@modelcontextprotocol/sdk/server/streamableHttp.js";

const server = new McpServer({ name: "claude-code-demo", version: "0.1.0" });

// Register a simple tool: add two numbers
server.registerTool(
  "add",
  {
    title: "Add",
    description: "Add two numbers a and b",
    inputSchema: { a: z.number(), b: z.number() },
    outputSchema: { result: z.number() }
  },
  async ({ a, b }) => {
    const output = { result: a + b };
    return {
      content: ,
      structuredContent: output
    };
  }
);

// Register a resource: greet user (dynamic)
server.registerResource(
  "greeting",
  new ResourceTemplate("greeting://{name}", { list: undefined }),
  { title: "Greeting", description: "Return a greeting for the name" },
  async (uri, params) => {
    return {
      contents: 
    };
  }
);

// Express + Streamable HTTP transport
const app = express();
app.use(express.json());

app.post("/mcp", async (req, res) => {
  const transport = new StreamableHTTPServerTransport({ enableJsonResponse: true });
  // Close transport when connection closes
  res.on("close", () => transport.close());
  await server.connect(transport);
  await transport.handleRequest(req, res, req.body);
});

const port = parseInt(process.env.PORT || "3000", 10);
app.listen(port, () => console.log(`MCP server listening: http://localhost:${port}/mcp`));

تشغيل:

npm install
npx -y tsx server.ts

ثم قم بالاتصال في Claude Code (مثال):

# Add the remote server to your Claude Code MCP list (local dev)

claude mcp add --transport http my-demo http://localhost:3000/mcp

تم تعديل هذا المثال من دليل TypeScript SDK Quick Start الرسمي ويوضح كيفية تسجيل الأدوات والموارد، ثم عرضها عبر Streamable HTTP.


المثال 2: Python + FastAPI (FastMCP + Streamable HTTP)

إنشاء server.py (مكتمل):

# server.py

from fastapi import FastAPI
from mcp.server.fastmcp import FastMCP

app = FastAPI()
mcp = FastMCP("claude-python-demo", stateless_http=True)

# tool: simple sum

@mcp.tool()
def add(a: int, b: int) -> dict:
    """Add two integers"""
    return {"result": a + b}

# resource: simple greeting resource template

@mcp.resource("greeting://{name}")
def greeting(name: str):
    return {"contents": }

# mount the streamable-http MCP endpoint (FastMCP exposes an ASGI app)

app.mount("/mcp", mcp.streamable_http_app())

# optional endpoint to demonstrate other API routes

@app.get("/")
async def root():
    return {"status": "OK"}

تشغيل:

uvicorn server:app --reload --port 8000

التواصل مع المفتش:

npx @modelcontextprotocol/inspector
# In Inspector select Streamable HTTP and enter http://localhost:8000/mcp

تجعل أمثلة SDK الخاصة بـ Python وأدوات FastMCP عملية التسجيل سهلة @mcp.tool() و @mcp.resource() الوظائف المزخرفة التي يمكن لـ LLM اكتشافها واستدعائها.


كيف يقوم Claude Code في الواقع بتسمية أدواتك؟

عندما يقرر برنامج إدارة قواعد البيانات (LLM) استخدام أداة، يُرسل العميل استدعاء JSON-RPC إلى خادم MCP. يُنفّذ الخادم الأداة المطلوبة (على سبيل المثال، استعلام قاعدة بيانات، أو إجراء اختبارات، أو استدعاء واجهة برمجة تطبيقات خارجية) ويُعيد محتوى منظم و محتوى قابل للعرضيمكن للعميل (كلود كود) بعد ذلك تضمين المخرجات المنظمة في سياق النموذج، ليتمكن النموذج من مواصلة التفكير باستخدام تلك البيانات الموثوقة، وليس فقط المخرجات النصية للخادم. تدعم مجموعة تطوير برامج TypeScript تسجيل inputSchema و outputSchema (zod) بحيث يتم التحقق من صحة الحجج والمخرجات وكتابتها آليًا.


ما هي أدوات الاختبار والتصحيح التي ينبغي عليك استخدامها؟

مفتش MCP

(أراضي البوديساتفا) مفتش MCP هي أداة التطوير المرئي الرسمية لاختبار خوادم MCP. تتيح لك الاتصال بخادم (stdio، SSE، أو streamable-HTTP)، وسرد الأدوات، واستدعائها يدويًا، وفحص دورة حياة رسائل JSON-RPC - وهي أداة بالغة الأهمية أثناء التطوير. ابدأها عبر npx @modelcontextprotocol/inspector.

الاختبار المحلي مقابل الاختبار عن بعد

  • محلي (stdio) - دورة تكرار سريعة لتطبيقات سطح المكتب واستكشاف الأخطاء وإصلاحها دون اتصال بالإنترنت.
  • HTTP قابل للبث — اختبار باستخدام المفتش أو الاتصال بـ Claude Code باستخدام claude mcp add واجهة سطر الأوامر (CLI) أو موصل MCP في واجهة برمجة تطبيقات الرسائل للاختبارات عن بُعد. تأكد من توفير أي رؤوس مصادقة مطلوبة لخادمك.

الخاتمة

يُعدّ MCP بمثابة جسر عملي بين أنظمة إدارة قواعد البيانات الحديثة (LLMs) والأنظمة التي تحتفظ بالبيانات وتُنفّذ الإجراءات. بالنسبة لسير عمل الأكواد البرمجية، يُتيح دمج Claude Code مع خادم MCP للنموذج وصولاً مُنظّماً وقابلاً للتدقيق إلى المستودعات، وتكامل الأنظمة (CI)، ومتتبّعات المشكلات، والأدوات المُخصّصة، مما يُؤدي إلى أتمتة أكثر دقة وآثار جانبية أكثر أماناً. باستخدام حزم تطوير البرامج (SDKs) الرسمية بلغات TypeScript وPython، وStreamable HTTP للاستضافة عن بُعد، وأدوات مثل MCP Inspector، يُمكنك بناء خادم بسيط في دقائق والتكرار نحو النشر الإنتاجي.

يمكن للمطورين الوصول كلود سونيت 4.5 API و كلود أوبس 4.1 API إلخ من خلال CometAPI، أحدث إصدار للنموذج يتم تحديثه دائمًا بالموقع الرسمي. للبدء، استكشف إمكانيات النموذج في ملعب واستشر دليل واجهة برمجة التطبيقات للحصول على تعليمات مفصلة. قبل الدخول، يُرجى التأكد من تسجيل الدخول إلى CometAPI والحصول على مفتاح API. كوميت ايه بي اي عرض سعر أقل بكثير من السعر الرسمي لمساعدتك على التكامل.

هل أنت مستعد للذهاب؟→ سجل في CometAPI اليوم !

إذا كنت تريد معرفة المزيد من النصائح والإرشادات والأخبار حول الذكاء الاصطناعي، فتابعنا على VKX و ديسكورد!

اقرأ المزيد

500+ نموذج في واجهة برمجة تطبيقات واحدة

خصم يصل إلى 20%