MCP

mcp-server-git: شغّله بـ uvx وتحقق أولاً من حالة شجرة العمل

مناسب لمن يريد أن يقرأ النموذج مستودع Git محليًا ويكتب فيه، لكن المقتطف يفصّل git_status فقط والخادم ما زال في تطوير مبكر.

Official source · mcp-server-git

Install

uvx mcp-server-git

لمن يناسب

لمن يحتاج أن يتفاعل النموذج مع مستودع Git محلي ويؤتمت العمل عليه: يقرأ أولاً حالة شجرة العمل ثم يقرر إن كان سيتابع البحث أو التغيير. يناسب من ثبّت uv مسبقًا (فيستطيع تشغيل mcp-server-git مباشرة بـ uvx) ويستطيع تقديم repo_path حقيقي. لا يناسب من ليس لديه مستودع محلي، أو يتوقع أن الوثائق سردت أصلًا كل أدوات الكتابة. الصفحة الرسمية: https://github.com/modelcontextprotocol/servers-archived/tree/main/src/git

أول تجربة في 3 دقائق

اتبع مسارًا رسميًا واحدًا فقط: شغّل mcp-server-git مباشرة بـ uvx. لا تبدأ بـ pip.

المتطلب المسبق: uv / uvx متاح على هذا الجهاز. الملاحظات تقول عندئذٍ “no specific installation is needed”. جهّز أيضًا مسار مستودع Git محلي؛ يجب أن يشير repo_path اللاحق إليه. ملاحظات uv: https://docs.astral.sh/uv/ ملاحظات uvx: https://docs.astral.sh/uv/guides/tools/

موضع التثبيت والإعداد: في عميل MCP اكتب أمر التشغيل كاستدعاء مباشر:

uvx mcp-server-git

إجراء منخفض المخاطر: بعد نجاح الاتصال استدعِ git_status فقط، والمعامل هو repo_path (سلسلة، مسار مستودع Git). يعرض حالة شجرة العمل ويعيد نص حالة دليل العمل الحالي. لا تقم بعمليات «manipulate» في المحاولة الأولى: المقتطف يضمن فقط أن للخادم قدرات read / search / manipulate؛ ولا يسمّي أدوات غير git_status.

إشارة النجاح: يعود نص حالة شجرة العمل (نظيف أو مع تغييرات غير مُودَعة كلاهما نجاح)، لا خطأ مستودع مفقود أو أمر غير موجود. إن فشل، أكد أولاً أن uvx متاح وأن repo_path يشير إلى مستودع Git موجود.

حالات الاستخدام

الحالة الأولى: فحص شجرة العمل. تقابل الأداة git_status. قبل أي بحث أو تغيير، اجعل النموذج يقرأ إن كان الفرع الحالي نظيفًا وإن وُجدت ملفات غير متتبَّعة. الإدخال الوحيد هو repo_path؛ والإرجاع حالة نصية. الأدلة لا تصف بنية حقول ذلك النص، فلا تفترض أنك ستحصل على diff منظّم مباشرة.

الحالة الثانية: أتمتة تتجاوز القراءة فقط على المستودع نفسه. موقع الخادم هو “Git repository interaction and automation” ويذكر أنه يستطيع read وsearch وmanipulate. لكن المقتطف الحالي يوسّع git_status فقط؛ ويذكر أيضًا أن المشروع في early development وأن الوظائف والأدوات المتاحة ستتغير وتتوسع. لذلك لا تصل الحالة الثانية أبعد من: أكد الوصول إلى المستودع بـ git_status ثم اعمل على الأدوات الأخرى التي يسردها العميل فعلًا — إن لم يسرد العميل أدوات كتابة أو بحث فتوقف عند استعلام الحالة. لا تُكمل commit / push من إضافات Git أخرى.

حدود الاستخدام

هذا خادم في تطوير مبكر. قائمة الأدوات قد تزيد أو تنقص؛ لا تعامل الأسماء التي تراها في العميل الحالي كواجهة برمجية مستقرة طويلًا.

التثبيت الموصى به هو uvx؛ تثبيت mcp-server-git بـ pip ثم تنفيذ python -m mcp_server_git بديل فقط. لا تضعه إلى جانب uvx كمسار أول.

الأدلة تفصّل git_status فقط. read / search / manipulate نظرة عامة على القدرات، لا ثلاثة كتيبات أدوات منشورة. لـ manipulate على المستودع آثار جانبية؛ نقطة التحقق أن تظهر شجرة العمل أو تاريخ الإيداع التغيير المتوقع، وألا يكون repo_path قد أشار إلى الدليل الخطأ.

ما يُوصَل إليه هو مستودع Git محلي. ليست قراءة محلية صفرًا وليست حدود خصوصية صفرًا. لا قائمة عملاء ولا مدخل مستضاف عن بُعد.