MCP

دليل البدء مع Dense-Mem، خادم ذاكرة MCP ذاتي الاستضافة

يناسب Dense-Mem الفرق التي تريد منح وكلاء الذكاء الاصطناعي لديها ذاكرة طويلة الأمد ذاتية الاستضافة وقابلة للتتبع مع قبول تشغيل PostgreSQL. قبل التشغيل يجب استكمال متغيرات البيئة الخمسة لمزوّد الذكاء الاصطناعي، وتُرسَل نصوص الأدلة وسياق المقترحات واستعلامات recall إلى المزوّدين الذين ضبطتهم؛ وحدهم المزوّدون المستضافون ذاتيًا يُبقون هذا المرور داخل حدودك.

Official source · Dense-Mem

Install

curl -fsSLo docker-compose.yml \
  https://raw.githubusercontent.com/markhuangai/dense-mem/main/examples/docker-compose.base.yml
curl -fsSLo .env.example \
  https://raw.githubusercontent.com/markhuangai/dense-mem/main/examples/.env.example

cp .env.example .env
# Fill in POSTGRES_PASSWORD, CONTROL_PORTAL_TOKEN, and AI_API_KEY.
${EDITOR:-vi} .env

docker compose up -d

لمن يناسب

يناسب Dense-Mem المطوّرين أو الفرق التي تريد منح وكلاء الذكاء الاصطناعي لديها ذاكرة طويلة الأمد ذاتية الاستضافة وتقبل بتشغيل PostgreSQL و Redis معًا؛ أما إن كنت تريد فقط إضافة سياق مؤقت إلى جلسة دون إدخال أعباء تشغيل قاعدة بيانات فليس الأداة المناسبة. يقدّم عقد أتمتة الذاكرة خارجيًا عبر MCP (Streamable HTTP، نقطة النهاية /mcp)، فتُرحَّل أولًا أدلة دقيقة، وتُستنبَط الحالة الدلالية في الخادم عبر سياسات مُتحقَّق منها، ثم تُعاد سياقات أدلة نشطة مع مقابض Relationship على شكل رسم بياني؛ والمعرفة ودورة الحياة والمنشأ والبحث والتخويل والتدقيق تجعل جميعًا من PostgreSQL المرجع الدائم، بينما يقتصر Redis على التنسيق. أما مسارات المتصفح فواجهات من الطرف الأول وليست بوابة أتمتة خارجية.

شروط الاستخدام والحالات غير المناسبة:

  • يتطلب التشغيل استكمال إعداد خدمتي الذكاء الاصطناعي، embedding و verifier (المتغيرات الخمسة أدناه)؛ لا يوجد وضع بلا إعداد.
  • أثر خروج البيانات يجب معرفته قبل الاستخدام: نصوص الأدلة وسياق المقترحات واستعلامات recall تُرسَل جميعها إلى المزوّدين الذين ضبطتهم؛ فإذا كان المزوّد مستضافًا ذاتيًا بقي المرور داخل حدودك، ومع الخدمات المستضافة لدى الغير لا.
  • قائمة عملاء MCP المدعومين رسميًا ومتطلبات الموارد وكلفة التشغيل غير موثّقة في الأدلة، وهذه نقاط لم تُؤكَّد بعد.

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

المطلوب: جهاز يستطيع تشغيل docker compose؛ املأ في .env القيم POSTGRES_PASSWORD و CONTROL_PORTAL_TOKEN و AI_API_KEY؛ ويتطلب التشغيل كذلك إعدادًا كاملًا لـ embedding و verifier وهو خمسة متغيرات: AI_API_URL و AI_API_KEY و AI_API_EMBEDDING_MODEL و AI_API_EMBEDDING_DIMENSIONS و AI_VERIFIER_MODEL — شرط تشغيل نصّت عليه الوثيقة الرسمية صراحة، فلا تعامله كخيار.

تنبيه: التجربة الأولى الاستعلامية أيضًا ترسل استعلامات recall إلى المزوّدين الذين ضبطتهم.

المسار الرئيسي الرسمي (Docker Compose):

curl -fsSLo docker-compose.yml \
  https://raw.githubusercontent.com/markhuangai/dense-mem/main/examples/docker-compose.base.yml
curl -fsSLo .env.example \
  https://raw.githubusercontent.com/markhuangai/dense-mem/main/examples/.env.example

cp .env.example .env
# Fill in POSTGRES_PASSWORD, CONTROL_PORTAL_TOKEN, and AI_API_KEY.
${EDITOR:-vi} .env

docker compose up -d

بعد إقلاع الحاويات، اربط /mcp في عميل MCP. للنداء الأول يُستحسن اختيار أداة الاستعلام recall_memory: تصفها الوثيقة الرسمية بأنها تعيد سياقات أدلة نشطة ومقابض Relationship. أما ما تعيده على نسخة حديثة التشغيل لم تُكتب فيها أدلة بعد فغير مذكور في الأدلة. إشارات النجاح: اكتمال docker compose up -d بشكل طبيعي، وقدرة العميل على الوصول إلى الخدمة عبر /mcp.

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

الحالة الأولى: بناء ذاكرة عابرة للجلسات موثّقة المنشأ للوكيل. المشهد: يحتاج الوكيل إلى تذكّر وقائع عبر الجلسات ثم إمكانية بيان مصدرها لاحقًا. الطريقة: نادِ remember لكتابة الأدلة، ثم استخدم recall_memory لاسترجاع سياقات الأدلة النشطة والمطابقة. معاملات remember وصيغة مدخلاته غير واردة في الأدلة، وما يمكن تأكيده يقف عند حد «هذا هو مدخل كتابة الأدلة الرسمي». النتيجة المنتظرة: قبول الدليل واستنباط الحالة الدلالية بسياسة الخادم.

الحالة الثانية: شرح كيف نشأت علاقة ما. المشهد: بيان كيفية تكوّن Relationship معيّنة لشخص آخر أو لنظام لاحق. الطريقة: نادِ trace_memory، التي تصفها الوثيقة الرسمية بأنها تتتبع الأدلة والقرارات والنسب على طول Relationship واحدة للفريق نفسه. المعاملات وبنية الإرجاع غير واردة في الأدلة، ويقف التأكيد عند حد «توفير قدرة الاستعلام هذه»، فلا تُختلق أمثلة هنا.

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

  • طبيعة القراءة والكتابة: remember يكتب الأدلة؛ retract_evidence يسحب أدلة يملكها المستدعي مع الحفاظ على منشأ append-only؛ correct_relationship استبدال مقصور على المالك لعلاقة Relationship نشطة (يحل محل العلاقة الأصلية ويحفظ support lineage). أما recall_memory و trace_memory و export_memory_pack فمن نوع الاستعلام/التصدير. لم توثّق الجهة الرسمية علامات قراءة/كتابة لكل أداة، وكون أدوات الاستعلام لا تكتب أبدًا غير مؤكد.
  • قناة التصحيح محصورة في السحب والاستبدال المذكورين أعلاه، ولا يصح فهم الكتابات الأخرى على أنها قابلة للتراجع.
  • بيانات الاعتماد ومستوى البيانات: إلى جانب القيم الثلاث الإلزامية في .env، يعتمد التشغيل على PostgreSQL (الدائم) و Redis (التنسيق) ومزوّدي ذكاء اصطناعي خارجيين؛ وتخرج نصوص الأدلة وسياق المقترحات واستعلامات recall إلى المزوّدين، وبقاؤها داخل حدودك يتوقف على موضع نشرهم.
  • غير مؤكد: المنافذ الافتراضية وعناوين URL الكاملة، وسياسة الاحتفاظ بالبيانات وحذفها، ودلالات عزل الفرق أو المستأجرين، وتفاصيل المصادقة عدا CONTROL_PORTAL_TOKEN.