تكامل MCP
خادم MCP (بروتوكول سياق النموذج) يمكّن نماذج الذكاء الاصطناعي مثل Claude من التفاعل مع Asset Core من خلال استدعاء الأدوات عبر JSON-RPC.
المتطلبات المسبقة
- تشغيل خدمات Asset Core (كتابة وقراءة)
- مجموعة أدوات Rust لبناء خادم MCP
- عميل متوافق مع MCP (Claude Desktop، إلخ)
الخطوة 1 - بناء خادم MCP
من مستودع Asset Core:
cargo build --release --bin mcp-server
الملف الثنائي موجود في target/release/mcp-server.
الخطوة 2 - تكوين عناوين URL للدايمون
خادم MCP يتصل بخدمات Asset Core الخاصة بك. قم بتكوينها عبر متغيرات البيئة:
export ASSETCORE_WRITE_URL=http://localhost:8080
export ASSETCORE_READ_URL=http://localhost:8081
الإعدادات الافتراضية هي localhost:8080 (كتابة) و localhost:8081 (قراءة).
الخطوة 3 - اختر وسيلة النقل
يدعم خادم MCP وسيلتين للنقل:
STDIO (افتراضي)
للتكامل المباشر مع Claude Desktop والعملاء المماثلين:
./target/release/mcp-server
يقرأ الخادم طلبات JSON-RPC من stdin ويكتب الردود إلى stdout.
SSE (Server-Sent Events)
للتكاملات المستندة إلى الويب:
إرشادات إضافية:
MCP_TRANSPORT=sse MCP_PORT=9000 ./target/release/mcp-server
| المتغير | الوصف |
|---|---|
MCP_TRANSPORT | stdio (افتراضي) أو sse |
MCP_PORT | منفذ الاستماع لـ SSE (مطلوب لـ SSE) |
الخطوة 4 - اختبار الاتصال
قائمة الأدوات المتاحة:
echo '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' | ./target/release/mcp-server
تحقق من صحة عملية الكتابة:
echo '{"jsonrpc":"2.0","id":2,"method":"assetcore_write_health"}' | ./target/release/mcp-server
الخطوة 5 - تقديم معاملة
إنشاء حاوية من خلال خادم MCP:
إرشادات إضافية:
echo '{
"jsonrpc": "2.0",
"id": 3,
"method": "assetcore_commit",
"params": {
"operations": [
{
"op": "CreateContainer",
"args": {
"container_id": 1001,
"kind": "Standard",
"owner": null
}
}
],
"idempotency_key": "mcp-create-1001"
}
}' | ./target/release/mcp-server
تتضمن الاستجابة نتيجة الالتزام مع أرقام التسلسل.
الخطوة 6 - تكوين سطح مكتب كلود
أضف خادم MCP إلى تكوين Claude Desktop الخاص بك:
إرشادات إضافية:
{
"mcpServers": {
"assetcore": {
"command": "/path/to/mcp-server",
"env": {
"ASSETCORE_WRITE_URL": "http://localhost:8080",
"ASSETCORE_READ_URL": "http://localhost:8081"
}
}
}
}
يمكن الآن لـ Asset Core استخدام أدوات في المحادثات.
استكشاف الأخطاء وإصلاحها
أخطاء “تم رفض الاتصال”
الخدمات غير قيد التشغيل أو أن عناوين URL غير صحيحة. تحقق من:
curl http://localhost:8080/v1/health
curl http://localhost:8081/v1/health
أخطاء “JSON-RPC غير صالح”
تأكد من أن كل طلب هو JSON صالح في سطر واحد. يستخدم بروتوكول MCP JSON مفصول بأسطر جديدة.
الأداة غير موجودة
يجب أن يتطابق اسم الطريقة تمامًا. الأدوات المتاحة:
tools/listassetcore_commitassetcore_write_healthassetcore_read_healthassetcore_read_freshness
استخدام acctl
يمكنك أيضًا تشغيل خادم MCP من خلال acctl:
إرشادات إضافية:
acctl adapters --transport stdio
هذا يستخدم اكتشاف التكوين ويحترم متغيرات البيئة ASSETCORE_*.
الخطوات التالية
- نظرة عامة على الوكلاء - لماذا يعمل Asset Core بشكل جيد مع الوكلاء
- OpenAI Tools - محول بروتوكول بديل
- CLI Reference - المزيد عن أوامر محولات acctl