خادم MCP

ترجمة من داخل وكيل البرمجة الخاص بك.

يمنح localize-dev mcp وكيل الترميز الخاص بك نفس أدوات سطر الأوامر. اطلب صفحة باللغة الإسبانية، وسيجد النسخة المضمنة في الكود، ويستخرجها إلى مفاتيح ويترجمها، مع اتباع المسرد الخاص بك. قم بإعداده باستخدام init --agent، وسيقوم بنفس الشيء لكل ملف أثناء كتابته.

$claude mcp add localize -- npx -y localize-dev mcp
~/acme/storefrontمُصْلَحَات محلية

أرسل صفحة الدفع باللغة الإسبانية والفرنسية والألمانية.

localize.check(only: "strings")

2 سلسلة نصية مصممة يدويًا في ملف components/Checkout.tsx.

  • components/Checkout.tsx:18 "Place order"
  • components/Checkout.tsx:24 "Discount code"

localize.localize(paths: ["components/Checkout.tsx"])

- <button>Place order</button>
+ <button>{t('checkout.place_order')}</button>
  • es Realizar pedido
  • fr Passer la commande
  • de Bestellung aufgeben

تم كتابة 2 مفتاح، وتم ملء 3 لغات. انظر الاختلافات في شجرة العمل لتقييمها.

يعمل مع الوكلاء الذين يشغلون خوادم MCP على جهازك، ومع Lovable و Bolt و v0 عبر الخادم المستضاف

أدوات

خمس أدوات، تلك التي يمتلكها CLI بالفعل.

يختار الوكيل الأداة؛ تجيب كل منها بنتائج منظمة (ملفات، أسطر، مفاتيح) يمكنه التصرف بناءً عليها.

localize

يستخرج النصوص المدمجة إلى مفاتيح ترجمة، ويعيد كتابة الكود لمكتبة i18n الخاصة بك ويترجم الرسائل الجديدة إلى كل لغة. لبعض الملفات فقط، أو كاختبار أولي أولاً.

- <h2>Order summary</h2>
+ <h2>{t('checkout.order_summary')}</h2>
locales/es.jsonlocales/fr.jsonlocales/de.json

check

يجد نصوص واجهة المستخدم المضمنة في الكود، والترجمات المفقودة أو القديمة، كل منها مع ملفه وسطره. لا يغير شيئًا. بالنظر إلى الملفات التي قام الوكيل بتغييرها للتو، فإنه يجيب في حوالي ثانية واحدة.

  • hardcoded Checkout.tsx:18
  • missing fr · cart.empty
  • outdated de · cart.total

translate

يملأ الترجمات المفقودة، ويعيد عمل الترجمات التي تغير نص مصدرها، في ملفات اللغة الحالية الخاصة بك.

  • JSON
  • YAML
  • .po
  • .arb
  • strings.xml
  • .xcstrings

add_language

يترجم كل رسالة إلى لغة جديدة، ثم يضيفها إلى localize.config.json. بدون مفتاح، لا يتغير شيء.

"targetLocales": ["es", "fr", "ja"]

config

لغاتك وملفات اللغة ومكتبة i18n الخاصة بك، ومسرد المشروع، بحيث يتبع النسخ الذي يكتبه الوكيل يدويًا أيضًا.

  • احتفظ بـ: Acme
  • checkout → es: pago

لا حاجة لمفتاحعلى جهازك، يعمل الفحص والإعداد بدون مفتاح API.

جلسة واحدة

اسأل بكلمات واضحة. راجع التغييرات.

يقرر الوكيل متى يستدعي كل أداة. ترى كل استدعاء، وتصل النتيجة إلى شجرة عملك.

01 / 04

أنت تسأل

"انشر صفحة الدفع بالإسبانية"، "أضف اليابانية"، أو "هل بقي شيء غير مترجم؟"

agent

أرسل صفحة الدفع باللغة الإسبانية والفرنسية والألمانية.

سأتحقق أولاً من صفحة الدفع بحثًا عن نصوص مدمجة.

localize.check(only: "strings")

أثناء الكتابة

مترجمة قبل فتح طلب السحب

يقوم أمر واحد بإعداد وكلاء الترميز الخاصين بك. بعد ذلك، يتم فحص كل ملف يعدله الوكيل بحثًا عن نص غير مترجم، ويقوم الوكيل بترجمته قبل المتابعة.

  1. 1

    يكتب الوكيل مكونًا يحتوي على نص جديد.

  2. 2

    يتحقق خطاف Claude Code بعد التحرير من هذا الملف الواحد، في حوالي ثانية واحدة، بدون مفتاح أو نموذج، ويخبر الوكيل بالأسطر التي لا تزال تحتوي على نص مرمز بشكل ثابت.

  3. 3

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

يحصل Cursor و Codex والوكلاء الآخرون على نفس التعليمات من AGENTS.md وقاعدة Cursor. أضف --pre-commit للتحقق أيضًا من الملفات المرحلية قبل كل commit، وقم بتعيين LOCALIZE_DEV_HOOK=off لإيقاف الخطاف مؤقتًا.

في مجلد التطبيق الخاص بك
npx localize-dev init --agent
ما يراه الوكيل بعد التعديل
localize.dev: src/components/Promo.tsx has UI text that isn't translated yet.
  line 4: "Free shipping on orders over $50"
Call the localize tool of the localize-dev MCP server with paths ["components/Promo.tsx"]: it gives this text translation keys, rewrites the code and translates it.

إعداد

قم بإعداده في وكيلك.

يقوم الوكلاء على جهازك بتشغيل الخادم من حزمة npm، دون الحاجة إلى استضافة أي شيء. يقوم الأمر npx localize-dev init --agent بإعداده لـ Claude Code و Cursor مع خطاف ما بعد التحرير. يتصل Lovable و Bolt و v0 بالخادم المستضاف باستخدام مفتاح API.

أولاً، مرة واحدة لكل جهاز:npx localize-dev login

Claude Code

وكيل الترميز الخاص بـ Anthropic في الطرفية. أضف الخادم من المستودع الذي تعمل فيه؛ مع --scope project يتم حفظه في .mcp.json لكل شخص في الفريق. يقوم npx localize-dev init --agent بذلك ويضيف خطاف ما بعد التحرير.

  1. 1قم بتشغيل claude mcp add في المستودع الخاص بك.
  2. 2أعد تشغيل الوكيل، أو أعد تحميل خوادم MCP الخاصة به، ليبدأ الترجمة.
  3. 3افتح مستودعك واطلب منه شيئًا مثل الموجه أدناه.

حاول أن تسأل

“ترجمة src/components/Checkout.tsx إلى الإسبانية والفرنسية.”

→ localize.localize

terminal
claude mcp add localize -- npx -y localize-dev mcp

# Share it with your team through .mcp.json
claude mcp add --scope project localize -- npx -y localize-dev mcp

# Or the server, the after-edit hook and AGENTS.md in one go
npx localize-dev init --agent

Cursor

يقرأ Cursor خوادم MCP من .cursor/mcp.json في المشروع، أو ~/.cursor/mcp.json لكل مشروع. يقوم npx localize-dev init --agent بكتابة ملف المشروع وقاعدة لملفات واجهة المستخدم الخاصة بك.

  1. 1أضف localize إلى .cursor/mcp.json.
  2. 2أعد تشغيل الوكيل، أو أعد تحميل خوادم MCP الخاصة به، ليبدأ الترجمة.
  3. 3افتح مستودعك واطلب منه شيئًا مثل الموجه أدناه.

حاول أن تسأل

“أضف اليابانية إلى هذا التطبيق.”

→ localize.add_language

.cursor/mcp.json
{
  "mcpServers": {
    "localize": {
      "command": "npx",
      "args": ["-y", "localize-dev", "mcp"]
    }
  }
}

Codex

يقرأ Codex الخاص بـ OpenAI خوادم MCP من ملف التكوين الخاص به، والذي تتم مشاركته بواسطة CLI وامتداد IDE.

  1. 1أضف جدول [mcp_servers.localize] إلى ~/.codex/config.toml.
  2. 2أعد تشغيل الوكيل، أو أعد تحميل خوادم MCP الخاصة به، ليبدأ الترجمة.
  3. 3افتح مستودعك واطلب منه شيئًا مثل الموجه أدناه.

حاول أن تسأل

“قبل أن أفتح طلب السحب (PR)، تحقق من النصوص المكتوبة بشكل ثابت والترجمات المفقودة.”

→ localize.check

~/.codex/config.toml
[mcp_servers.localize]
command = "npx"
args = ["-y", "localize-dev", "mcp"]

GitHub Copilot in VS Code

يقرأ وضع الوكيل الخاص بـ Copilot في VS Code خوادم MCP من .vscode/mcp.json في مساحة العمل.

  1. 1أضف localize إلى .vscode/mcp.json في مساحة عملك.
  2. 2أعد تشغيل الوكيل، أو أعد تحميل خوادم MCP الخاصة به، ليبدأ الترجمة.
  3. 3افتح مستودعك واطلب منه شيئًا مثل الموجه أدناه.

حاول أن تسأل

“ترجمة المفاتيح الجديدة في locales/en.json إلى كل لغة.”

→ localize.translate

.vscode/mcp.json
{
  "servers": {
    "localize": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "localize-dev", "mcp"]
    }
  }
}

Devin

يقرأ Devin، المعروف سابقًا باسم Windsurf، خوادم MCP من ~/.config/devin/mcp_config.json، أو .devin/mcp_config.json في المشروع. يضيف Devin CLI واحدًا باستخدام devin mcp add.

  1. 1أضف localize إلى ~/.config/devin/mcp_config.json (%APPDATA%\devin\mcp_config.json على نظام Windows).
  2. 2أعد تشغيل الوكيل، أو أعد تحميل خوادم MCP الخاصة به، ليبدأ الترجمة.
  3. 3افتح مستودعك واطلب منه شيئًا مثل الموجه أدناه.

حاول أن تسأل

“قم بتشغيل تجريبي لترجمة صفحة الإعدادات، ثم قم بتطبيقها.”

→ localize.localize

~/.config/devin/mcp_config.json
{
  "mcpServers": {
    "localize": {
      "command": "npx",
      "args": ["-y", "localize-dev", "mcp"]
    }
  }
}

Gemini CLI

يقرأ Gemini CLI من Google خوادم MCP من ~/.gemini/settings.json، أو .gemini/settings.json في المشروع.

  1. 1أضف localize إلى mcpServers في settings.json.
  2. 2أعد تشغيل الوكيل، أو أعد تحميل خوادم MCP الخاصة به، ليبدأ الترجمة.
  3. 3افتح مستودعك واطلب منه شيئًا مثل الموجه أدناه.

حاول أن تسأل

“ما اللغات التي يتوفر بها هذا التطبيق، وماذا يوجد في مسرده؟”

→ localize.config

~/.gemini/settings.json
{
  "mcpServers": {
    "localize": {
      "command": "npx",
      "args": ["-y", "localize-dev", "mcp"]
    }
  }
}

Lovable

يمكن لموصلات الدردشة الخاصة بـ Lovable استدعاء أي خادم MCP بعيد. قم بتوصيل الخادم المستضاف باستخدام مفتاح API، ويمكن لوكيل Lovable التحقق من التطبيق الذي يقوم ببنائه وترجمته. الاتصال خاص بك وحدك وليس جزءًا من التطبيق المنشور.

  1. 1في الموصلات، اختر إضافة مخصص، ثم خادم MCP، وأدخل عنوان URL.
  2. 2اختر رمز Bearer أو مفتاح API، الصق مفتاح localize.dev API الخاص بك وانقر فوق إضافة خادم.
  3. 3افتح مشروعك واطلب شيئًا مثل الموجه أدناه. يرسل الوكيل الملفات التي يحتاجها الأداة ويكتب الملفات التي يعيدها.

حاول أن تسأل

“تحقق من هذا التطبيق بحثًا عن النص المضمن في الكود وأخبرني بما لم تتم ترجمته.”

→ localize.check

Connectors → Add custom → MCP server
Name            localize
URL             https://uselocalize.dev/api/mcp
Authentication  Bearer token or API key
Key             ldv_live_… (your localize.dev API key)

Bolt

يضيف Bolt خوادم MCP مخصصة من صفحة الموصلات الخاصة به. قم بتوجيه أحدها إلى الخادم المستضاف، ويمكن لوكيل Bolt ترجمة المشروع المفتوح في المحرر.

  1. 1انقر فوق + في الدردشة، افتح الموصلات (MCP) واختر خادم MCP مخصصًا. أدخل عنوان URL واضبط النقل على HTTP.
  2. 2اختر مفتاح API للمصادقة والصق مفتاح localize.dev API الخاص بك.
  3. 3افتح مشروعك واطلب شيئًا مثل الموجه أدناه. يرسل الوكيل الملفات التي يحتاجها الأداة ويكتب الملفات التي يعيدها.

حاول أن تسأل

“ترجمة صفحة الأسعار إلى الإسبانية والألمانية.”

→ localize.localize

Connectors (MCP) → Custom MCP server
Name            localize
URL             https://uselocalize.dev/api/mcp
Transport       HTTP
Authentication  API key
Key             ldv_live_… (your localize.dev API key)

v0

يستخدم v0 خوادم MCP مخصصة أثناء إنشاء التعليمات البرمجية. قم بتوصيل الخادم المستضاف، ويمكن لـ v0 إضافة لغات إلى التطبيق الذي يقوم ببنائه وملء ترجماتها.

  1. 1افتح + في نموذج الموجه، اختر MCPs، ثم قم بتكوين، وأدخل عنوان URL.
  2. 2اختر رمز حامل والصق مفتاح localize.dev API الخاص بك.
  3. 3افتح مشروعك واطلب شيئًا مثل الموجه أدناه. يرسل الوكيل الملفات التي يحتاجها الأداة ويكتب الملفات التي يعيدها.

حاول أن تسأل

“أضف اليابانية إلى هذا التطبيق.”

→ localize.add_language

+ → MCPs → Configure
Name            localize
URL             https://uselocalize.dev/api/mcp
Authentication  Bearer Token
Key             ldv_live_… (your localize.dev API key)

خادم مضيف

للأجنتات التي لا يمكن لها تشغيل الأوامر.

بناءات مثل Lovable و Bolt و v0 وغيرها التي تعمل في المتصفح لا يمكن أن تبدأ `npx localize-dev mcp`. يمكنهم الاتصال بخادم المضيف بدلاً من ذلك. يحتوي على نفس الأدوات الخمس ويعمل على localize.dev.

  1. 1

    أضف خادم MCP مخصص باستخدام الرابط https://uselocalize.dev/api/mcp.

  2. 2

    إذا كان التطبيق يدعم OAuth، فاختره ووافق على الاتصال على localize.dev. وإلا، ضع مفتاح API الخاص بـ localize.dev في ترويسة التفويض كرمز حامل.

  3. 3

    يرسل الوكيل الملفات التي تحتاجها الأداة ويكتب الملفات التي تعود إليها. يتم تخزينها في مجلد مؤقت أثناء إجراء الاتصال وتُحذف عند استجابة الوكيل.

تكوين MCP (HTTP قابل للتدفق)
{
  "mcpServers": {
    "localize": {
      "type": "http",
      "url": "https://uselocalize.dev/api/mcp",
      "headers": { "Authorization": "Bearer YOUR_API_KEY" }
    }
  }
}

الأمان والخصوصية

فقط ما هو مطلوب يغادر جهازك.

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

  • يعمل محليًا

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

  • سلاسل نصية، وليس مصدرًا

    تُرسل فقط السلاسل المستخرجة إلى واجهة برمجة التطبيقات، مع مسار الملف والمكون كالسياق. لا يتم إرسال ملفات كاملة أبدًا.

  • يبقى في مجلده

    يعمل كل أداة داخل المجلد الذي بدأ فيه الخادم. يختار وسيط التطبيق تطبيقًا واحدًا في مستودع متعدد، وليس مسارًا خارجيًا.

  • لا شيء ملتزم

    تُدرج التغييرات في شجرة العمل الخاصة بك. الخادم لا يلتزم أو يدفع، وتعمل استدعاءات الأدوات واحدة تلو الأخرى.

أسئلة شائعة

أسئلة حول خادم MCP

مع أي وكلاء يعمل؟+

أي عميل MCP يبدأ الخوادم عبر stdio: Claude Code، Cursor، Codex، GitHub Copilot في VS Code، Devin (سابقًا Windsurf)، Gemini CLI وغيرها. الإعداد هو نفس الأمر: npx -y localize-dev mcp. Lovable و Bolt و v0 والبناة الآخرون الذين يعملون في المتصفح يتصلون بالخادم المستضاف بدلاً من ذلك.

كيف يعرف الوكيل ما يجب ترجمته مما يكتبه؟+

يخبره الأمر npx localize-dev init --agent بذلك. تطلب تعليمات خادم MCP، وقسم في AGENTS.md، وقاعدة Cursor منه استدعاء localize على الملفات التي يغيرها. في Claude Code، يتحقق خطاف بعد التحرير أيضًا من كل ملف يعدله الوكيل ويسرد أي نص لم تتم ترجمته، لذا يقوم الوكيل بإصلاحه قبل المتابعة.

هل يستخدم الخطاف مخصصي؟+

لا. يقرأ الخطاف الملف فقط، على جهازك، بدون مفتاح أو نموذج. يتم احتساب السلاسل النصية عندما يستدعي الوكيل localize ويتم ترجمتها، كما في أي تشغيل.

هل أحتاج إلى مفتاح API؟+

على جهازك، لا يحتاج check و config إلى مفتاح. localize و translate و add_language تترجم عبر localize.dev، لذا فهي تحتاج إلى المفتاح من npx localize-dev login (أو LOCALIZE_API_KEY). يحتاج الخادم المستضاف إلى مفتاح لكل استدعاء، على الرغم من أن check و config لا تزالان لا تُحتسبان ضمن خطتك. تُحتسب الترجمات ضمن خطتك مثل أي تشغيل آخر.

هل ما زلت بحاجة إلى GitHub Action؟+

لا، إنها تعمل من تلقاء نفسها. يقوم خادم MCP بالترجمة أثناء البناء، ومع init --agent يتم ترجمة كل ملف أثناء كتابته بواسطة الوكيل. يحافظ الإجراء على ترجمة كل دفعة ويفتح طلب سحب. يقرأون نفس ملف localize.config.json والمسرد.

هل سيقوم بتثبيت أو دفع الكود الخاص بي؟+

الخادم لا يفعل ذلك: إنه يكتب الملفات في شجرة العمل الخاصة بك ويعيد ما تغير. ما يفعله وكيلك بعد ذلك متروك لك ولأذونات الوكيل الخاصة به.

هل يعمل في مستودع أحادي (monorepo)؟+

نعم. يأخذ كل أداة وسيط تطبيق، مثل apps/web، وتعمل هناك مع إعدادات التطبيق وملفات اللغة الخاصة به.

هل يمكنني استخدامه دون تشغيل أي شيء على جهازي؟+

نعم، من خلال الخادم المستضاف على https://uselocalize.dev/api/mcp. قم بتوصيله كخادم HTTP قابل للبث، ثم قم بتسجيل الدخول باستخدام OAuth أو أرسل مفتاح API الخاص بك كرمز حامل. يتطلب كل استدعاء مفتاحًا أو تسجيل دخول، ولكن الفحص والتكوين لا يزالان لا يُحتسبان ضمن خطتك.

احصل على مفتاح API وأضف الخادم.

يغطي المخطط المجاني التطبيقات الصغيرة، ويعمل check على جهازك بدون مفتاح.