|
<< İçindekileri Görüntülemek İçin Tıklayın >> Yer: Teknik Kılavuzlar > Netsim System Agent İstemci Protokolü Referansı > 12. MCP > 12.2 HTTP MCP (MCP işlemcisi) |
conf'ta "processor": "MCP" olan uygulama (örnek conf'ta yol /mcp) aynı MCP sunucusunu HTTP üzerinden sunar. İstemci kaydı örneği: claude mcp add --transport http netsim http://<sunucu>:82/mcp.
| Taşıma | MCP Streamable HTTP'nin SSE'siz biçimi (initialize yanıtı ajana araçları anlatan instructions metnini taşır): POST gövdesi tek bir JSON-RPC mesajıdır, yanıt application/json gövdesidir; yanıtı olmayan bildirim 202 + boş gövde alır. GET 405 döner (sunucudan akış yok), initialize yanıtında listChanged false'tur. Oturum açılmaz. |
| Araçlar | Yalnız yerleşik ivd__describe_table, ivd__search_objects, ivd__effective_attributes (MASTER'da kayıtlı veritabanlarının kataloğu; database argümanı kayıt adıdır) ve help_* (yardım havuzu, conf docs/help). WEBSENDP araçları, doc_* ve reload_tools bu yoldan sunulmaz; çağrılırlarsa -32601 döner. |
| Görünüm öncelikli | Güvenlikli veritabanında X görünümü uygulamanın ve SQL'in kullandığı addır, arkasındaki NS_X tablosu depo (güvenlik) katmanıdır ve geri planda kalır. ivd__describe_table X'i anlatır, NS_X'in ilişki, öznitelik ve yerelleştirme satırlarını storage_* bölümlerinde ekler; NS_X istenirse de X anlatılır. ivd__search_objects görünümü olan NS_X'i ve kolonlarını listelemez, eşleşme NS_X'in açıklamasında ya da özniteliğindeyse görünümü listeler. initialize metni ajana bu kuralı söyler. |
| İlişkiler | Ürün tablo ilişkilerini yabancı anahtarla değil domain'in ns.ref_table özniteliğiyle bildirir; ivd__describe_table bunları references_out (tablonun hedef bildiren kolonları) ve references_in (hedefi bu tablo olan kolonlar, görünümü olan NS_ tablosu gizli) bölümlerinde verir (IVD$V_COLUMNS.NS_REF_TABLE, katalog 29); relations yalnız kısıtlardır. |
| Veritabanları | MASTER kayıtları: CREATE / OPEN DATABASE ile kaydedilenler. Uygulamaya "database": "<kayıt adı>" yazılırsa ivd__* araçları yalnız o kaydı gösterir: database argümanı verilmeyen çağrı onu okur, başka bir ad -32602 “bulunamadı” alır. Ağa açılan bir uçta bu anahtarla yalnız gösterilmesi istenen veritabanı bırakılır. |
| Yetki | Uç anonimdir: kayıtlı veritabanlarının katalog metaverisini (tablo, kolon, açıklama, öznitelik) ve yardımı kimlik sormadan verir; veri satırı okumaz. Ağa açık bir sunucuda yol ters vekil sunucuda ya da güvenlik duvarında sınırlanır; gerekmiyorsa uygulama "active": false yapılır. |
| İstek sınırı | "rateLimitPerMinute" (örnek conf'ta 120, 0 = sınırsız): istemci IP'si başına dakikada en çok bu kadar istek. Aşan istek 429, Retry-After (pencerenin kalan saniyesi) ve JSON-RPC -32000 alır; pencere IP'nin ilk isteğiyle başlar, 60 saniye sürer. Sayaçlar bütün işçi süreçlerinde ortaktır; sınırı ilk aşan istek günlüğe bir uyarı yazar. |