> ## Documentation Index
> Fetch the complete documentation index at: https://docs.didit.me/llms.txt
> Use this file to discover all available pages before exploring further.

# تثبيت خادم Didit MCP: Claude وCursor وVS Code وWindsurf

> ثبّت خادم Didit MCP المستضاف في Claude وCursor وVS Code وWindsurf وZed أو أي عميل MCP، أو استضف الخادم مفتوح المصدر بنفسك. بدون مفاتيح API.

اختر عميلك أدناه. لا يتطلب **الخادم المستضاف** (`https://mcp.didit.me/mcp`) مفتاح API، فعند أول اتصال يفتح عميلك المتصفح، وتنقر على [تسجيل الدخول باستخدام Didit](https://docs.didit.me/ar/integration/mcp/authentication.md) وتوافق على الأذونات.

> [!TIP]
>
> **هل تستخدم Claude؟** تحتوي صفحة [ربط Claude](https://docs.didit.me/ar/integration/mcp/claude.md) على رابط الموصل بنقرة واحدة، الذي يفتح مربع الحوار **Add custom connector** وقد مُلئ فيه الاسم والرابط مسبقاً، فلا يبقى عليك سوى التأكيد وتسجيل الدخول.

> [!NOTE]
>
> العملاء الذين لا يدعمون بعد MCP عن بُعد أو HTTP (Windsurf وZed) يتصلون عبر الجسر `mcp-remote`، الذي يمرّر stdio إلى الرابط المستضاف ويتولى عنك مصافحة OAuth.

***

## الخادم المستضاف (موصى به)

> [tab] Claude Code
>
> أضف الخادم باستخدام CLI، ثم ابدأ تسجيل الدخول:
>
> ```bash theme={null}
> claude mcp add --transport http didit https://mcp.didit.me/mcp
> ```
>
> ابدأ Claude Code وشغّل `/mcp`، فيفتح المتصفح لصفحة **تسجيل الدخول باستخدام Didit**. بعد الموافقة تصبح أدوات `didit` متاحة.

> [tab] Claude على الويب وسطح المكتب
>
> على الويب: انقر على [**Add Didit to Claude →**](https://claude.ai/customize/connectors?modal=add-custom-connector\&connectorName=Didit\&connectorUrl=https://mcp.didit.me/mcp) وأكّد مربع الحوار المملوء مسبقاً.
>
> على سطح المكتب: **Settings → Connectors → Add custom connector**، وسمِّه `Didit` واضبط الرابط على:
>
> ```text theme={null}
> https://mcp.didit.me/mcp
> ```
>
> انقر على **ربط** وأكمل **تسجيل الدخول باستخدام Didit** في المتصفح. ستظهر أدوات Didit بعد ذلك في قائمة الأدوات في المحادثة.

> [tab] Cursor
>
> أضف إلى `~/.cursor/mcp.json` (عام) أو `.cursor/mcp.json` (لكل مشروع):
>
> ```json theme={null}
> {
>   "mcpServers": {
>     "didit": {
>       "url": "https://mcp.didit.me/mcp"
>     }
>   }
> }
> ```
>
> أو استخدم **Settings → Tools & Integrations → New MCP Server**. يسجّل Cursor نفسه لدى Didit عبر تسجيل العميل الديناميكي (Dynamic Client Registration)، ويفتح المتصفح لتسجيل الدخول عند أول استخدام.

> [tab] VS Code
>
> مع وضع الوكيل في GitHub Copilot، أضف `.vscode/mcp.json`:
>
> ```json theme={null}
> {
>   "servers": {
>     "didit": {
>       "type": "http",
>       "url": "https://mcp.didit.me/mcp"
>     }
>   }
> }
> ```
>
> أو شغّل **MCP: Add Server** من لوحة الأوامر واختر **HTTP**. سجّل الدخول عند المطالبة. وجّه VS Code إلى عنوان URL الكامل للمسار `/mcp`، فالخادم ينشر البيانات الوصفية لمورد OAuth لهذا المسار.

> [tab] Windsurf
>
> يتصل Windsurf عبر الجسر `mcp-remote`. أضف إلى `~/.codeium/windsurf/mcp_config.json`:
>
> ```json theme={null}
> {
>   "mcpServers": {
>     "didit": {
>       "command": "npx",
>       "args": ["-y", "mcp-remote@latest", "https://mcp.didit.me/mcp"]
>     }
>   }
> }
> ```
>
> افتح **Settings → Cascade → MCP Servers → Manage** للتأكد من تحميله، ثم سجّل الدخول عبر المتصفح.

> [tab] Zed
>
> أضف خادم سياق في ملف `settings.json` الخاص بـ Zed:
>
> ```json theme={null}
> {
>   "context_servers": {
>     "didit": {
>       "source": "custom",
>       "command": "npx",
>       "args": ["-y", "mcp-remote@latest", "https://mcp.didit.me/mcp"]
>     }
>   }
> }
> ```
>
> يشغّل Zed الجسر ويفتح المتصفح لصفحة **تسجيل الدخول باستخدام Didit**.

> [tab] أي عميل آخر
>
> يمكن لأي عميل يطبّق MCP عبر **Streamable HTTP** مع **OAuth 2.1** أن يتصل مباشرة بالرابط `https://mcp.didit.me/mcp`. يكتشف خادم التفويض من `https://mcp.didit.me/.well-known/oauth-protected-resource/mcp`، ويسجّل نفسه عبر تسجيل العميل الديناميكي (Dynamic Client Registration)، وينفّذ تدفق PKCE. يقبل الخادم طلبات `POST` على `/mcp` فقط، وترد طلبات `GET` و`DELETE` بالرمز `405` لأنه عديم الحالة ولا يحتفظ بأي تدفق يبدأه الخادم.
>
> يمكن للعميل الذي يدعم stdio فقط استخدام الجسر نفسه `mcp-remote` المستخدم في Windsurf وZed:
>
> ```bash theme={null}
> npx -y mcp-remote@latest https://mcp.didit.me/mcp
> ```
>
> ولتجربة الخادم دون عميل، يتصل [MCP Inspector](https://modelcontextprotocol.io/docs/tools/inspector) بالرابط نفسه ويرشدك خلال تسجيل الدخول.

> [!NOTE]
>
> **لا يوجد مفتاح API في الإعدادات.** يصادق الخادم المستضاف هويتك في المتصفح ويعمل باسمك **أنت**، ويعمل نيابةً عنك في كل مؤسسة تنتمي إليها، وبالصلاحيات الممنوحة لدورك. راجع [المصادقة](https://docs.didit.me/ar/integration/mcp/authentication.md).

يرد الخادم المستضاف على الطلب `GET https://mcp.didit.me/healthz` بإصداره.

***

## التحقق من اتصالك

بعد تسجيل الدخول، اطلب من عميلك:

```text theme={null}
Use the Didit MCP server to call didit_context_get and list my organizations and applications.
```

يجب أن يستدعي الوكيل `didit_context_get` ويعرض مؤسساتك مع تطبيقاتها.
إذا قال إنه لا يملك أدوات Didit، فإما أن الخادم لم يتصل أو أن تسجيل الدخول لم يكتمل: راجع [استكشاف الأخطاء وإصلاحها](https://docs.didit.me/ar/integration/mcp/advanced.md#استكشاف-الأخطاء-وإصلاحها).

## الاستضافة الذاتية

يُبنى الخادم المستضاف من المستودع مفتوح المصدر [github.com/didit-protocol/mcp](https://github.com/didit-protocol/mcp) (ترخيص MIT). تُنشر كل إصدارة أيضاً على npm باسم [`@didit-protocol/mcp-server`](https://www.npmjs.com/package/@didit-protocol/mcp-server)، لذا يمكنك تشغيل خادم stdio مباشرةً من npm، أو بناء أي من نقطتي الدخول من نسخة محلية. تشترك نقطتا الدخول في قاعدة شيفرة واحدة:

| نقطة الدخول | الوضع | النقل | المصادقة |
| - | - | - | - |
| `dist/http.js` | مستضاف | HTTP قابل للبث على `MCP_PORT` (الافتراضي 3000)، و`POST /mcp`، و`GET /healthz` | OAuth 2.1 Bearer، يُتحقق منه عبر التحقق الاستبطاني من token |
| `dist/index.js` | stdio (بدون واجهة) | MCP stdio | token وصول للمستخدم في `DIDIT_ACCESS_TOKEN` |

يعمل الوضعان كـ**مستخدم** في Didit. لا يوجد وضع لمفتاح API للتطبيق.

**1. النسخ والبناء**

```bash theme={null}
git clone https://github.com/didit-protocol/mcp.git && cd mcp
npm install && npm run build
```

أو ابنِ الحاوية: `docker build -t didit-mcp .`. تشغّل الصورة `dist/http.js` كمستخدم غير متمتع بصلاحيات الجذر، وتكشف المنفذ 3000، وتتضمن فحصًا لحالة التشغيل على `/healthz`.

**2. تشغيل خادم HTTP (OAuth)**

انسخ `.env.example` إلى `.env` واملأ قيم الوضع المستضاف، ثم:

```bash theme={null}
node dist/http.js
# or
docker run -p 3000:3000 --env-file .env didit-mcp
```

الخادم خادم موارد OAuth فقط. يحتاج إلى ضبط `MCP_RESOURCE_URI` على العنوان العام الكامل لوسيلة النقل (مثلاً `https://mcp.example.com/mcp`، وليس الأصل المجرد)، وإلى بيانات الاعتماد التي يستخدمها لفحص الرموز (`MCP_OAUTH_CLIENT_ID`، `MCP_OAUTH_CLIENT_SECRET`) لدى خادم التفويض التابع لـDidit. قائمة المتغيرات الكاملة موجودة في [الإعدادات المتقدمة ← الاستضافة الذاتية](https://docs.didit.me/ar/integration/mcp/advanced.md#الاستضافة-الذاتية).

**3. أو التشغيل عبر stdio (بدون واجهة)**

بالنسبة لوكيل محلي لا يستطيع تنفيذ تدفق OAuth، شغّل الحزمة المنشورة (لا حاجة إلى نسخة محلية) ومرّر token وصول للمستخدم في متغيرات البيئة:

```bash theme={null}
DIDIT_ACCESS_TOKEN=<user-access-token> npx -y @didit-protocol/mcp-server
```

عند التشغيل من نسخة محلية، يؤدي الأمر `DIDIT_ACCESS_TOKEN=<user-access-token> node dist/index.js` الغرض نفسه. بدون token، يمكن للوكيل تسجيل الدخول باستخدام `didit_account_login`، ثم `didit_account_verify_2fa` إذا كان التحقق بخطوتين مفعّلًا في الحساب.

يثبّت المتغيران الاختياريان `MCP_DEFAULT_ORG` و`MCP_DEFAULT_APP` النطاق للإعدادات أحادية المستأجر. سجّله في Claude Code باستخدام:

```bash theme={null}
claude mcp add didit-local -e DIDIT_ACCESS_TOKEN=<user-access-token> -- npx -y @didit-protocol/mcp-server
```

أو في ملف `mcp.json` الخاص بـCursor:

```json theme={null}
{
  "mcpServers": {
    "didit-local": {
      "command": "npx",
      "args": ["-y", "@didit-protocol/mcp-server"],
      "env": { "DIDIT_ACCESS_TOKEN": "<user-access-token>" }
    }
  }
}
```

لا يتضمن خادم stdio مفتوح المصدر أدوات Travel Rule والسوق الإلكتروني وشبكة الاحتيال وأدوات token الخاصة بـSDK للمعاملات الموجودة في الخادم المستضاف، ولا أدوات الامتثال الأخرى باستثناء إنشاء سير العمل.
ويضيف الخادم `didit_org_top_up` و`didit_org_reveal_application_api_key` وخمس أدوات لإعداد الحساب (`didit_account_register`، و`didit_account_verify_email`، و`didit_account_resend_otp`، و`didit_account_login`، و`didit_account_verify_2fa`)، وهي تستقبل بيانات الاعتماد كوسائط، ولذلك لا تُتاح مطلقاً عبر موصل بعيد. تقبل الأدوات التي تتلقى الملفات أيضاً وسائط `*_path` عبر stdio، لأن الخادم يشارك نظام الملفات الخاص بك.

***

## الخطوات التالية

> [card] [المصادقة](https://docs.didit.me/ar/integration/mcp/authentication.md)
>
> تسجيل الدخول والنطاقات والأدوار.

> [card] [مرجع الأدوات](https://docs.didit.me/ar/integration/mcp/tools.md)
>
> كل ما يمكن للوكيل استدعاؤه.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.