خادم MCP هو أبسط طريقة لمنح مساعد الذكاء الاصطناعي ذاكرة تدوم أكثر من محادثة واحدة. فـ Claude Code وCursor وما يشبههما من العملاء يفقدون سياق المحادثة حين تنتهي. وإعطاؤهم وصولًا خامًا إلى قاعدة بيانات لحل ذلك محفوف بالمخاطر. hotkv-mcp هو خادم MCP المفتوح المصدر من HotKV. يمنح المساعد مجموعة ثابتة من الأدوات للملاحظات وسجل المحادثة وسجل الأحداث وقوالب الموجّهات والبحث في المستندات. ولا يقدّم غير ذلك.
باختصار.
hotkv-mcpخادم MCP بترخيص Apache-2.0 يربط Claude Code أو Cursor أو VS Code أو وكيلك الخاص بخادم HotKV عبر 28 أداة ثابتة. لا توجد أداة تنفذ أمرًا اعتباطيًا، فلا يستطيع المساعد مسح البيانات ولا تغيير الإعدادات. ويزيل وضع القراءة فقط كل أداة كتابة، وتحصر مساحة الأسماء الوكيل في بادئة مفاتيح واحدة. ثبّته بـpip install hotkv-mcpأو شغّله بـuvx.
ما هو بروتوكول سياق النموذج
بروتوكول سياق النموذج (Model Context Protocol)، أو MCP، معيار مفتوح لربط تطبيقات الذكاء الاصطناعي بأنظمة خارجية مثل مصادر البيانات والأدوات وسير العمل. وتشبّهه مقدمة المشروع بمنفذ USB-C لتطبيقات الذكاء الاصطناعي. وفي مصطلحات MCP، التطبيق هو العميل، وكل نظام يتصل به يعرضه خادم.
وفي الذاكرة، يعني ذلك أن المساعد يستدعي أداة مسماة، مثل أداة تحفظ ملاحظة. ويقرر الخادم ما يُسمح لتلك الأداة بفعله. ولا يحصل النموذج على اتصال بقاعدة بيانات من عنده أبدًا.
ما الذي يعرضه خادم HotKV MCP
يغلّف الخادم ذاكرة الوكلاء وسجل الموجّهات والبحث في المستندات في HotKV بـ 28 أداة. وتعلن كل أداة في تعليقات MCP التوضيحية أنها تقرأ فقط أو تكتب أو تحذف. فيستطيع العميل حينئذٍ أن يطلب الموافقة قبل الأدوات المدمّرة.
| المجموعة | الأدوات |
|---|---|
| الخادم | server_info |
| المفاتيح | get, set, delete, key_info, scan |
| التجزئات والقوائم | hash_get, hash_set, list_range, list_push |
| ذاكرة المحادثة | memory_append_message, memory_get_messages, memory_clear_messages |
| ملاحظات العمل | memory_set_note, memory_get_note, memory_list_notes |
| سجل الأحداث والملخص | memory_log_event, memory_query_events, memory_set_summary, memory_get_summary |
| سجل الموجّهات | prompt_save, prompt_get, prompt_versions, prompt_list |
| البحث في المستندات | rag_create, rag_ingest, rag_search, rag_list |
تقابل أدوات الذاكرة المخازن الموصوفة في ذاكرة وكلاء الذكاء الاصطناعي، وهي سجل المحادثة وملاحظات العمل وسجل الأحداث. أما الاستدعاء الدلالي بالتضمين فلا يُعرض. فـ rag_search يرتّب بحسب صلة الكلمات المفتاحية، فلا يحتاج إلى تضمين.
تعمل أدوات المفاتيح والتجزئات والقوائم مع أي خادم HotKV. أما أدوات الذاكرة والموجّهات والبحث في المستندات فتستخدم محركات الذكاء الاصطناعي في HotKV، وهي تحتاج إلى ترخيص يتضمنها. وبدونه تعيد تلك الأدوات رسالة بأن الخادم غير مرخّص لهذه الميزة. وتواصل أدوات المفاتيح عملها. وتتضمن مثيلات HotKV Cloud من خطتي Performance وScale محركات الذكاء الاصطناعي، كما تصف صفحة الذكاء الاصطناعي.
التثبيت والربط
يحتاج الخادم إلى Python 3.10 أو أحدث. كُتب مقابل خادم HotKV 0.3.0 وحزمة hotkv-client الرسمية، والإصدار 1.0.0 موجود على PyPI. ثبّته بـ pip، أو شغّله دون تثبيت باستخدام uv.
pip install hotkv-mcp
uvx hotkv-mcp --url hotkv://localhost:6379
Claude Code
أضفه بأمر واحد. يفصل -- بين خيارات Claude Code نفسه والأمر الذي يبدأ الخادم، كما تصف وثائق MCP في Claude Code.
claude mcp add hotkv -- uvx hotkv-mcp --url hotkv://localhost:6379
Cursor وClaude Desktop
العملاء الذين يقرؤون ملف mcpServers يقبلون الخادم نفسه مدخلًا بصيغة JSON. أبقِ كلمة المرور في متغير البيئة HOTKV_URL أو في مخزن أسرار العميل. فسطر الأوامر ظاهر لمستخدمي الجهاز الآخرين. واستخدم hotkvs:// للاتصال عبر TLS.
{
"mcpServers": {
"hotkv": {
"command": "uvx",
"args": ["hotkv-mcp", "--read-only"],
"env": { "HOTKV_URL": "hotkv://:your-password@localhost:6379" }
}
}
}
تحقق من أنه يعمل
شغّل claude mcp list للتأكد من تسجيل الخادم. ثم اطلب من المساعد استدعاء الأداة server_info. تعيد إصدار HotKV واستهلاك الذاكرة، مع عدد المفاتيح حين لا تكون مساحة الأسماء مضبوطة. وتبيّن أيضًا ما إذا كان الخادم للقراءة فقط وأي مساحة أسماء تقيّده. وهذا يؤكد أن ضماناتك دخلت حيز التنفيذ.
أبقِ الوكيل داخل حدود آمنة
النموذج الذي يستطيع استدعاء الأدوات يمكن أيضًا إقناعه بإساءة استخدامها، فالحدود أهم من الميزات.
لا أوامر اعتباطية
لا توجد أداة تنفذ أمرًا خامًا. لا يستطيع المساعد مسح قاعدة بيانات ولا تغيير إعدادات الخادم، لأن أيًّا من الأدوات الـ 28 لا يفعل ذلك. ويستطيع قراءة أي مفتاح تصل إليه الأدوات، ولهذا تهم مساحة الأسماء أدناه.
وضع القراءة فقط
يزيل --read-only كل أداة تكتب، ومنها set وdelete وhash_set وlist_push وأدوات الذاكرة التي تضيف أو تمسح وprompt_save وrag_create وrag_ingest. ولا يستطيع الوكيل حتى رؤيتها. استخدمه مع المساعدين الذين ينبغي أن يراجعوا الذاكرة ولا يغيّروها أبدًا.
مساحات الأسماء وحدود الحجم
يخزّن --namespace PREFIX كل شيء تحت تلك البادئة. ولا يرى الوكيل البادئة ولا يستطيع الوصول إلى أسماء أخرى. امنح كل وكيل بادئة ليست بداية بادئة أخرى. استخدم agent-a وagent-b، لا agent وagent:b، وإلا استطاعت الأقصر الوصول إلى أسماء الأطول.
والنتائج لها حدود أيضًا. يقطع --max-value-bytes القيم الطويلة ويعلّمها على أنها مقطوعة، والافتراضي 65,536 بايت. ويحدد --max-items عدد المفاتيح أو عناصر القائمة أو النتائج التي يعيدها استدعاء واحد، والافتراضي 200. فلا تستطيع قيمة ضخمة واحدة أن تغرق سياق النموذج. وقراءة تجزئة كاملة غير محدودة بعدد العناصر، فأبعد التجزئات الكبيرة عن مساحة أسماء الوكيل.
نقل HTTP لا يتضمن تسجيل دخول
نقل stdio الافتراضي يبدأه العميل بوصفه عملية فرعية. وللاستخدام المشترك يمكنك تشغيل hotkv-mcp --transport streamable-http، وهو يستمع على 127.0.0.1:8000 عند /mcp. ولا يوثّق المتصلين. أبقِه على localhost أو ضعه خلف وكيل عكسي يوثّق، وامنحه مساحة أسماء خاصة به.
اختيار إعداد للفريق
تعتمد الخيارات المناسبة على الغرض من كل وكيل. كل خيار أدناه هو راية في سطر الأوامر. ولـ --read-only و--namespace متغيرا بيئة أيضًا، هما HOTKV_MCP_READ_ONLY وHOTKV_MCP_NAMESPACE.
| الإعداد | الرايات | استخدمه حين |
|---|---|---|
| تجربة فردية | --namespace trial | تجرّب الأدوات على خادم محلي |
| قارئ لملاحظات مشتركة | --read-only --namespace team-docs | ينبغي أن يراجع المساعد الموجّهات والملاحظات ولا يغيّرها أبدًا |
| كاتب واحد لكل وكيل | --namespace agent-a لكل وكيل | عدة وكلاء يحتفظ كلٌّ منهم بذاكرته الخاصة ويجب ألا يرى بعضهم ذاكرة بعض |
| خدمة مشتركة | --transport streamable-http خلف وكيل يوثّق | يتشارك فريق خادمًا واحدًا وأنت تتحكم فيمن يصل إليه |
ابدأ من أكثر الصفوف تقييدًا مما يؤدي الغرض. فتوسيع الوصول لاحقًا سهل، أما استرجاع ما كتبه الوكيل بالفعل فصعب.
جلسة أولى خطوة بخطوة
تجربة قصيرة تُظهر ما تفعله الضمانات قبل أن تأتمن الخادم على ملاحظات حقيقية. استخدم مساحة أسماء مؤقتة وخادم HotKV محليًا مرخّصًا لمحركات الذكاء الاصطناعي، لأن أدوات الذاكرة لا تعمل بدون ذلك الترخيص.
- اتصل بمساحة أسماء. شغّل
claude mcp add hotkv -- uvx hotkv-mcp --url hotkv://localhost:6379 --namespace trial. - تحقق من الحدود. اطلب من المساعد استدعاء
server_infoوالإبلاغ عن مساحة الأسماء وما إذا كان الخادم للقراءة فقط. ينبغي أن يقولtrialوأنه ليس للقراءة فقط. - احفظ ملاحظة. اطلب منه أن يتذكر أن موقع الاختبار المرحلي يقع على عنوان معين، تحت ملاحظة تحمل اسم الموقع. يستدعي المساعد
memory_set_note، وتُنشأ الجلسة عند أول استخدام. - اقرأها في محادثة جديدة. ابدأ محادثة جديدة واسأل عن الملاحظات الموجودة لتلك الجلسة. يستدعي
memory_list_notesوmemory_get_note، وتكون الملاحظة ما زالت موجودة. - سجّل قرارًا. اطلب منه تسجيل قرار في سجل الأحداث. يستدعي
memory_log_event، ويعيدهmemory_query_eventsلاحقًا. - أزل صلاحية الكتابة عنه. أزل المدخل القديم، وأعد الاتصال بـ
--read-onlyوكرر الخطوة 4. تظل القراءة تعمل، ولا تُعرض أدوات الكتابة بعد الآن.
إذا تصرفت الخطوة 6 كما هو موصوف، فقد رأيت أهم ضابطين، مساحة الأسماء ووضع القراءة فقط.
عامل ما يخزنه المساعد على أنه نص غير موثوق حين يُقرأ مجددًا، كما يشرح مقال الذاكرة في معاملة النص المخزن على أنه غير موثوق. فالملاحظات المكتوبة من صفحات الويب قد تحمل تعليمات.
استكشاف الأخطاء
- "This HotKV server is not licensed for that feature." تحتاج أدوات الذاكرة والموجّهات والبحث في المستندات إلى ترخيص HotKV يتضمن محركات الذكاء الاصطناعي. وتواصل أدوات المفاتيح والتجزئات والقوائم عملها بدونه.
- فشل الاتصال. تحقق من مخطط الرابط. تعمل
hotkv://وhotkvs://(TLS) وredis://وrediss://جميعها، وتوضع كلمة المرور في الرابط هكذاhotkv://:password@host:6379. - قيمة تعود مقطوعة. تُعلَّم النتيجة بأنها مقطوعة حين تتجاوز
--max-value-bytes. ارفع الحد أو خزّن قيمًا أصغر. - أداة كتابة مفقودة. ابحث عن
--read-onlyفي وسائط الخادم أو عنHOTKV_MCP_READ_ONLYفي بيئته. - لا يجد المساعد اسمًا حفظه من قبل. تحقق من أنه استخدم اسم الجلسة أو الوكيل نفسه، ومن أن الخادم يعمل بمساحة الأسماء نفسها كما في السابق.
uvxغير موجود. ثبّت uv، أو ثبّت الحزمة بـpipوشغّلhotkv-mcpمباشرة.
الأسئلة الشائعة
ما خادم MCP؟
خادم MCP برنامج يعرض أدوات أو بيانات أو مسارات عمل لتطبيق ذكاء اصطناعي عبر بروتوكول سياق النموذج. ويعدّد التطبيق، ويسمى العميل، الأدوات ويستدعيها بالاسم. ويتحكم الخادم بالضبط فيما تستطيع كل أداة فعله.
كيف أضيف خادم MCP إلى Claude Code؟
شغّل claude mcp add <name> -- <command>. وفي HotKV يكون ذلك claude mcp add hotkv -- uvx hotkv-mcp --url hotkv://localhost:6379. ثم استخدم claude mcp list للتأكد من تسجيله.
هل خادم HotKV MCP آمن لمنحه لمساعد ذكاء اصطناعي؟
هو يحدّ مما يستطيع المساعد فعله. يقدّم 28 أداة ثابتة ولا أمرًا اعتباطيًا، ويمكن جعله للقراءة فقط، ويمكن حصره في مساحة أسماء واحدة، ويضع حدودًا لأحجام النتائج. لكنه لا يستطيع جعل النص المخزن موثوقًا، ونقل HTTP لا يتضمن توثيقًا، فأبقِه على localhost.
هل يعمل خادم HotKV MCP مع Cursor وVS Code؟
يذكر ملف README أن Cursor وVS Code ضمن العملاء المقصودين، ويستطيع أي عميل يبدأ خادم MCP عبر stdio أن يشغّله. ويقرأ Cursor وClaude Desktop ملف mcpServers كما هو موضح أعلاه. أما العملاء الآخرون فيسمّون هذا الإعداد بأسماء مختلفة، فراجع وثائق عميلك. لم نختبر كل العملاء.
هل أحتاج إلى ترخيص HotKV لاستخدام hotkv-mcp؟
الخادم نفسه بترخيص Apache-2.0، وتعمل أدوات المفاتيح والتجزئات والقوائم دون ترخيص. أما أدوات الذاكرة وسجل الموجّهات والبحث في المستندات فتحتاج إلى ترخيص HotKV يتضمن محركات الذكاء الاصطناعي.
هل يستطيع المساعد البحث بالمعنى؟
ليس عبر هذا الخادم. يرتّب البحث في المستندات بحسب صلة الكلمات المفتاحية كي لا يحتاج إلى نموذج تضمين، ولا تُعرض الذاكرة الدلالية بوصفها أداة. وللاستدعاء بالمعنى، استخدم مكتبة عميل HotKV مع تضمينات من عندك.
هل أستطيع حصر المساعد في ذاكرة مشروع واحد؟
نعم. شغّل الخادم بـ --namespace وبادئة لذلك المشروع، مثل --namespace project-x. لا يرى المساعد البادئة ولا يستطيع الوصول إلى أسماء خارجها. استخدم بادئة مختلفة لكل مشروع، وتجنب بادئة تكون بداية بادئة أخرى.
كيف أشغّل hotkv-mcp عبر HTTP؟
شغّله بـ hotkv-mcp --transport streamable-http --host 127.0.0.1 --port 8000. يخدم /mcp ولا يوثّق المتصلين، فأبقِه على localhost أو ضعه خلف وكيل عكسي يوثّق. وامنحه مساحة أسماء خاصة به، واستخدم --read-only حيث يحتاج العملاء إلى القراءة فقط.
متى أستخدم مكتبة العميل بدلًا من خادم MCP؟
استخدم خادم MCP للمساعدين الذين يتحدثون MCP أصلًا. وفي كود تطبيقك أنت، استدعِ HotKV بمكتبة العميل، وهي تعرض أيضًا الاستدعاء الدلالي بالتضمين، وهو ما تتركه الأدوات الـ 28 خارجها.



تابع النقاش
التعليقات
لديك أسئلة عن المنهجية؟ حصلت على نتيجة مختلفة على عتادك؟ شارك ما توصلت إليه. تُراجَع التعليقات قبل ظهورها.