İçeriğe geç

Yalnızca MCP kullanılan yapıdan çoklu taşımaya geçiş

Bir entegrasyonu Model Context Protocol (MCP) stdio taşımasından Representational State Transfer’a (REST) veya gRPC’ye taşıyın. Motor davranışı değişmez. Katalog, risk modeli ve onay kapısı aynı kalır. Üç şey değişir: wire protokolü, kimlik doğrulama ve eşzamanlılık modeli.

Terminal window
composer require nextpdf/server
./vendor/bin/rr get-binary

Bu paketin ilk belgeleri tek bir taşıma tanımlıyordu: stdio üzerinden MCP. Paket artık aynı araç kayıt defterini üç taşıma üzerinden sunar. Geçiş yapmak için ağ tabanlı bir taşıma seçin, ardından MCP çağrılarınızı bu taşımaya eşleyin. Belge mantığınızı yeniden yazmanız gerekmez.

Dağıtımınıza uygun taşımayı seçin:

  • MCP’de kalın: tek bir yerel araç, en düşük gecikme (ağ sıçraması olmadan) veya yerel bir IDE yardımcısı gibi MCP’ye özgü bir istemci için.
  • REST’e geçin: istemci başına API anahtarlarıyla çok istemcili erişim, kapsayıcı veya Kubernetes dağıtımı, istemci başına hız sınırlama, eşzamansız işler ya da herhangi bir dilde yazılmış istemciler için.
  • gRPC’ye geçin: türlendirilmiş sözleşmeler, büyük PDF’ler için sunucu akışı ve karşılıklı TLS kullanan hizmetten hizmete dağıtımlar için.
  • Araç kayıt defteri ve çalışma zamanına bağlı katalog (bkz. /connect/tool-catalog/).
  • Dört düzeyli risk modeli ve onay kapısı (bkz. /connect/hitl-risk-tiers/).
  • Belge modeli ve motor semantiği.
YönMCP (stdio)RESTgRPC
Wire biçimistdio üzerinden JSON-RPC 2.0HTTP üzerinden JSONgRPC üzerinden Protobuf
Kimlik doğrulamayok (yerel alt süreç)Authorization: Bearer API anahtarıçağrı meta verisinde bearer
Eşzamanlılıktek süreç, tek çağrıRoadRunner çalışan havuzuRoadRunner gRPC havuzu
Eşzamansızgeçerli değiliş uç noktalarıiş RPC’leri
Akışgeçerli değileşzamanlı gövdesunucu akışlı RPC’ler

Tipik bir MCP dizisi create_pdf ile başlar, içerik araçlarıyla devam eder ve output_pdf ile biter. REST’te bu, durumsuz tek bir POST /api/v1/render isteğine dönüşür; istek, sıralı bir operations dizisi taşır. Adımlar arasında duruma ihtiyacınız olduğunda, bunun yerine isteğe bağlı oturum uç noktalarını kullanın. gRPC’de eşdeğeri Render RPC’si veya parçalı teslimat için RenderStream’dir. Durum tutan derlemeler için CreateSession, SessionOperation ve SessionRender RPC’lerini kullanın.

MCP araç dizisiRESTgRPC
create_pdf + içerik araçları + output_pdfPOST /api/v1/renderRender / RenderStream
Çağrılar arasında durum tutan derlemePOST /api/v1/sessions (+ oturum işlemleri)CreateSession (+ SessionOperation)
Uzun süren işlemePOST /api/v1/jobs ardından sonucu yoklayınSubmitJob ardından GetJobResult
Katmana göre kapılı işlemPOST /api/v1/<operation>ExecuteCapability

MCP çağrısı:

{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"add_text","arguments":{"text":"Hello"}}}

Bu çağrı şu REST isteğine dönüşür:

Terminal window
curl -sS -X POST http://localhost:8080/api/v1/render \
-H "Authorization: Bearer $NEXTPDF_KEY" \
-H 'Content-Type: application/json' \
-d '{"operations":[{"type":"add_text","text":"Hello"}]}' \
--output hello.pdf

Aşamalı bir geçiş sırasında her iki taşımayı da çalıştırın. Birleşik RoadRunner profili, REST ve gRPC’yi tek bir denetleyici üzerinden sunar. Eski MCP entegrasyonu, hâlâ uygun olduğu durumlarda yerel olarak çalışmaya devam edebilir:

Terminal window
export NEXTPDF_API_KEYS_FILE=/run/secrets/api-keys
./vendor/bin/rr serve -c .rr.full.yaml

Aktarılacak paylaşılan bir durum yoktur. Taşımalar aynı motor üzerinde çalışan bağımsız süreçlerdir. İstemcileri aşamalı olarak taşıyın.

  • Kimlik doğrulama ekleyin. Yerel bir alt süreç olduğu için MCP taşımasında kimlik doğrulama yoktu. Ağ tabanlı taşımalar, sağlık denetimi dışındaki her istekte geçerli bir API anahtarı gerektirir. Geçişten önce anahtarları hazırlayın. Bkz. /connect/security-and-operations/.

  • Onay kapısı hâlâ devreye girer. Bir approval_required aracı, REST ve gRPC’de de tam olarak MCP’de olduğu gibi onay ister. Onay akışını yeni entegrasyona taşıyın. Kapının yalnızca MCP’ye özgü olduğunu varsaymayın. Bkz. /connect/hitl-risk-tiers/.

  • Katman kapılaması değişmemiştir. Bir Pro veya Enterprise işlemi, tıpkı ilgili aracın MCP’de pakete ihtiyaç duyması gibi, yeni taşımada da nextpdf/premium kurulu olmasını ve yetkilendirilmiş bir anahtarı gerektirir.

  • Eşgüçlülük yeni ve kullanışlıdır. REST, stdio taşımasında daha önce bulunmayan bir eşgüçlülük denetimi ekler. İş gönderimlerini güvenli biçimde yeniden denemek için bunu kullanın. Bkz. /connect/production-usage/.

MCP tek süreçlidir ve tek bir yerel araç için en düşük gecikmeye sahiptir. Ağ tabanlı taşımalar, bir çalışan havuzu ve bir ağ sıçraması ekler. Buna karşılık, çok sayıda eşzamanlı istemciye ölçeklenirler. Çalışanları meşgul etmemek için uzun süren işlemeleri yeni taşımadaki eşzamansız iş yoluna taşıyın.

stdio’dan geçiş yapmak ağ maruziyeti ekler. REST’in önünde Transport Layer Security (TLS) sonlandırması yapın, güvenilmeyen ağlarda gRPC’de karşılıklı TLS kullanın, anahtarları istemci başına kapsamlandırın ve enabled_tools öğesini asgari düzeyde tutun. MCP taşımasının kimlik bilgisi içermeyen modeli, yalnızca yerel bir alt süreç olduğu için güvenlidir. Bu maruziyeti bir ağ üzerinden yeniden oluşturmayın. Bkz. /connect/security-and-operations/.

Bu sayfa geçiş kılavuzu sağlar. Protokol ve kimlik doğrulama atıfları şu sayfalarda sabitlenmiştir: /transports/mcp/, /transports/rest/, /transports/grpc/ ve /connect/security-and-operations/.

Katmana göre kapılı işlemler, taşımadan bağımsız olarak nextpdf/premium gerektirir. Geçiş yapmak, neyin core, neyin Premium olduğunu değiştirmez. Yalnızca kataloğa nasıl ulaştığınızı değiştirir.

  • /transports/mcp/ — geçiş yaptığınız kaynak taşıma
  • /transports/rest/ · /transports/grpc/ — geçiş yaptığınız hedef taşımalar
  • /connect/tool-catalog/ — katalog, taşımalar arasında aynı
  • /connect/hitl-risk-tiers/ — kapı, taşımalar arasında aynı
  • /connect/security-and-operations/ — eklemeniz gereken kimlik doğrulama