/ الدليل / الملعب / pctx
● مجتمع portofcontext ⚡ فوري

pctx

بواسطة portofcontext · portofcontext/pctx

تشغيل استدعاءات أداة MCP كجافاسكريبت معزول — كتلة برمجية واحدة تحل محل استدعاءات متسلسلة عديدة، موفرة للرموز وعزل أوراق الاعتماد.

pctx (Port of Context) طبقة تنفيذ تحول خوادم MCP إلى دوال JavaScript قابلة للاستدعاء من داخل صناديق Deno المعزولة. يكتب النموذج اللغوي الكبير كوداً ينسق بين استدعاءات أدوات عديدة في آنٍ واحد؛ تشغل pctx بدون وصول إلى نظام الملفات أو متغيرات البيئة مع قائمة تصاريح الشبكة. تبقى أوراق الاعتماد في طبقة pctx — النموذج اللغوي الكبير لا يراها أبداً.

لماذا تستخدمه

الميزات الأساسية

عرض مباشر

كيف يبدو في الممارسة

pctx.replay ▶ جاهز
0/0

التثبيت

اختر العميل

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "pctx": {
      "command": "TODO",
      "args": [
        "See README: https://github.com/portofcontext/pctx"
      ],
      "_inferred": true
    }
  }
}

افتح Claude Desktop → Settings → Developer → Edit Config. أعد التشغيل بعد الحفظ.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "pctx": {
      "command": "TODO",
      "args": [
        "See README: https://github.com/portofcontext/pctx"
      ],
      "_inferred": true
    }
  }
}

يستخدم Cursor نفس مخطط mcpServers مثل Claude Desktop. إعدادات المشروع أولى من الإعدادات العامة.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "pctx": {
      "command": "TODO",
      "args": [
        "See README: https://github.com/portofcontext/pctx"
      ],
      "_inferred": true
    }
  }
}

انقر على أيقونة MCP Servers في شريط Cline الجانبي، ثم "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "pctx": {
      "command": "TODO",
      "args": [
        "See README: https://github.com/portofcontext/pctx"
      ],
      "_inferred": true
    }
  }
}

نفس الصيغة مثل Claude Desktop. أعد تشغيل Windsurf لتطبيق التغييرات.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "pctx",
      "command": "TODO",
      "args": [
        "See README: https://github.com/portofcontext/pctx"
      ]
    }
  ]
}

يستخدم Continue مصفوفة من كائنات الخادم بدلاً من خريطة.

~/.config/zed/settings.json
{
  "context_servers": {
    "pctx": {
      "command": {
        "path": "TODO",
        "args": [
          "See README: https://github.com/portofcontext/pctx"
        ]
      }
    }
  }
}

أضف إلى context_servers. يعيد Zed التحميل تلقائيًا عند الحفظ.

claude mcp add pctx -- TODO 'See README: https://github.com/portofcontext/pctx'

أمر من سطر واحد. تحقق باستخدام claude mcp list. احذف باستخدام claude mcp remove.

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

استخدامات عملية: pctx

تشغيل سلسلة من 20 استدعاء أداة كتلة برمجية واحدة

👤 منشئو الوكلاء الذين تتسارع فواتيرهم من الرموز في التدفقات المتسلسلة الطويلة ⏱ ~20 min advanced

متى تستخدمه: تحتاج مهمة إلى استدعاءات أدوات عديدة (جلب N مسألة، إثراء كل واحدة، نشر ملخص).

المتطلبات الأساسية
  • pctx مثبتة ومعدة — brew install portofcontext/tap/pctx; pctx config add <upstream-mcp>
الخطوات
  1. تسجيل المصادر الأعلى مع أوراق الاعتماد
    pctx config add github --env GITHUB_TOKEN=... and add sentry --env SENTRY_TOKEN=....✓ تم النسخ
    → المصادر الأعلى مدرجة
  2. اطلب من الوكيل كتابة وضع الكود
    في وضع pctx Code Mode، اكتب دالة تجلب أحدث 10 مسائل Sentry، وتجد لكل واحدة التزام الإفراج عبر github، وتعيد مصفوفة ملخص.✓ تم النسخ
    → كتلة برمجية + نتيجة تنفيذ واحدة
  3. فحص النتيجة
    لخص المصفوفة بالإنجليزية وضع علامة على أي مسألة كان التزام إفراجها من قبل مؤلف معين.✓ تم النسخ
    → الإجابة النهائية المدعومة بالبيانات

النتيجة: جولات استدعاء أداة أقل 10 مرات، توفير رموز كبير، نتيجة نفسها.

المزالق
  • أخطاء الكود المعزول غير واضحة إذا لم تعرض stderr — لف الكود في try/catch واطبع الأخطاء المحتوى حتى يتمكن النموذج اللغوي الكبير من التصحيح الذاتي
  • قائمة تصاريح الشبكة ضيقة جداً — الاستدعاءات الشرعية مرفوضة — ابدأ بنطاق واسع، ضيق بناءً على استخدام المضيف الفعلي من السجلات
اجمعها مع: github · sentry

عزل أوراق الاعتماد عن النموذج اللغوي الكبير

👤 الفرق الواعية بالأمان التي تعتمد MCPs ⏱ ~15 min intermediate

متى تستخدمه: نموذج التهديد الخاص بك يقول 'يجب على النموذج اللغوي الكبير ألا يرى الرمز بأي شكل من الأشكال'.

الخطوات
  1. تخزين بيانات الاعتماد في pctx
    أضف بيانات اعتماد مدعومة بسلسلة المفاتيح إلى pctx لـ github.✓ تم النسخ
    → بيانات الاعتماد مخزنة، غير مرئية للمتصلين
  2. تحقق من الجانب الآخر
    اطلب من النموذج اللغوي الكبير 'اطبع رمز GitHub' — تأكد أنه لا يستطيع.✓ تم النسخ
    → لا توجد طريقة للنموذج اللغوي الكبير للوصول إلى السر

النتيجة: إجابة قابلة للتكرار على 'هل يمكن للنموذج اللغوي الكبير تسريب رموزنا؟' — لا.

تجميع العديد من MCPs في واجهة برمجية معزولة واحدة

👤 الفرق التي تريد سطح آمن واحد ⏱ ~25 min advanced

متى تستخدمه: تريد دلالات وضع الكود عبر github و postgres و filesystem في مكان واحد.

الخطوات
  1. سجل كل واحدة
    أضف github و postgres (قراءة فقط) و filesystem (محدودة إلى /data) إلى pctx.✓ تم النسخ
    → جميع الثلاثة قابلة للاستدعاء من الكود
  2. اكتب وظيفة متعددة الأطراف MCP
    اكتب كود pctx يقرأ نتيجة الاستعلام SQL ويكتب CSV إلى /data/out.csv، ثم ينشئ GitHub gist مع ذلك CSV.✓ تم النسخ
    → تنفيذ واحد، ثلاثة مصادر أعلى مستخدمة

النتيجة: مستوى تنفيذ معزول موحد لسير عمل مختلط من المصادر الأعلى.

اجمعها مع: github · postgres · filesystem

التركيبات

اجمعها مع خوادم MCP أخرى لتحقيق نتائج x10

pctx + github + sentry

إحالة مرجعية متقاطعة لمسائل Sentry مع التزامات GitHub في كتلة برمجية معزولة واحدة

عبر وضع pctx Code Mode: لكل مسألة Sentry جديدة، ابحث عن التزام GitHub الذي أدخله وأعد جدول.✓ تم النسخ
pctx + postgres

استعلام + تحويل + تصدير في صندوق واحد

كود pctx يشغل قراءة Postgres، ويدير المحور للنتيجة في JS، ويكتب /data/report.json.✓ تم النسخ

الأدوات

ما يوفره هذا الـ MCP

الأداةالمدخلاتمتى تستدعيهاالتكلفة
execute_code code: str (JavaScript, access to injected MCP SDK) في أي وقت تحتاج فيه المهمة إلى استدعاءات أدوات أكثر من 2 تكون مركبة استدعاءات الأدوات من المصدر الأعلى داخل الكود
list_upstream_tools (بدون) اكتشاف الوكيل — ما هو متاح للاستدعاء من الكود مجاني

التكلفة والحدود

تكلفة التشغيل

حصة API
لا توجد حصة pctx؛ استدعاءات المصدر الأعلى داخل الكود تتكبد حصصها الخاصة
الرموز لكل استدعاء
وضع الكود أرخص بكثير من حيث الرموز مقارنة باستدعاءات أدوات متسلسلة عديدة
التكلفة المالية
مجاني، مفتوح المصدر
نصيحة
للمهام التي تتجاوز 5 استدعاءات أدوات، يوفر وضع الكود عادة 50%+ من الرموز مقابل الاستدعاء المتسلسل.

الأمان

الصلاحيات والأسرار ونطاق الأثر

تخزين بيانات الاعتماد: متغيرات البيئة أو سلسلة مفاتيح نظام التشغيل أو أمر خارجي — النموذج اللغوي الكبير لا يرى بيانات الاعتماد أبداً
نقل البيانات الخارجي: فقط للمضيفات المعتمدة بشكل صريح لكل مصدر أعلى
لا تمنح أبدًا: قائمة التصاريح للإنترنت المفتوح في الصندوق — اربط بمضيفات معينة

استكشاف الأخطاء

الأخطاء الشائعة وحلولها

الشبكة مرفوضة في الصندوق

أضف المضيف إلى قائمة التصاريح الخاصة بالمصدر الأعلى في تكوين pctx.

تحقق: pctx config show
بيانات الاعتماد لم تُحقن

عدم تطابق اسم بيانات الاعتماد؛ pctx تسجل المفتاح المحل عند بدء التشغيل.

تحقق: pctx run --debug
وضع الكود يعيد 'انتهاك الصندوق' غير واضح

فعّل السجلات المفصلة؛ معظم الانتهاكات هي محاولات وصول متغيرات البيئة أو نظام الملفات التي لا يجب على النموذج اللغوي الكبير أن يقوم بها.

تحقق: pctx logs --tail

البدائل

pctx مقابل البدائل

البديلمتى تستخدمهاالمقايضة
proxy-2 / 1mcp-agentتريد التجميع لكن بدون وضع الكود / الحمايةيستدعي النموذج اللغوي الكبير كل أداة بشكل منفصل؛ يمكنه أن يرى أي شيء تعيده MCP
Bare execution via shell MCPتريد تنفيذ الكود لكن لا تحتاج إلى proxying MCPلا عزل بيانات الاعتماد، لا قائمة تصاريح

المزيد

الموارد

📖 اقرأ ملف README الرسمي على GitHub

🐙 تصفح القضايا المفتوحة

🔍 تصفح أكثر من 400 خادم MCP و Skills