ภาพรวมของเซิร์ฟเวอร์ NextPDF Connect
โดยสรุป
หัวข้อที่มีชื่อว่า “โดยสรุป”NextPDF Connect คือแพ็กเกจ nextpdf/server ซึ่งเป็นบริการที่ทำงานระยะยาวเพื่อให้ AI agent และไคลเอนต์ HTTP เข้าถึงเอนจิน NextPDF PDF 2.0 ได้ บริการนี้รองรับทรานสปอร์ตสามแบบ ได้แก่ Model Context Protocol (MCP) ผ่าน stdio, REST API และ gRPC ทรานสปอร์ตทั้งสามแบบใช้รีจิสทรีเครื่องมือเดียวกันและเกตยืนยันโดยมีมนุษย์อยู่ในกระบวนการ (HITL) เพียงเกตเดียว
การติดตั้ง
หัวข้อที่มีชื่อว่า “การติดตั้ง”composer require nextpdf/serverข้อกำหนดของ Composer ระบุให้ใช้ nextpdf/core: ^3.0 ร่วมกับ php: >=8.4 <9.0 สำหรับขั้นตอนแบบครบถ้วน ดู /connect/install/ หน้านั้นยังครอบคลุมส่วนเสริมแบบเลือกใช้ได้สองรายการ ได้แก่ ส่วนขยาย ext-redis และแพ็กเกจ nextpdf/premium ด้วย
ภาพรวมเชิงแนวคิด
หัวข้อที่มีชื่อว่า “ภาพรวมเชิงแนวคิด”nextpdf/server แปลงแกน NextPDF ที่ไม่ผูกกับเฟรมเวิร์กให้เป็นพื้นผิวบริการ แพ็กเกจนี้ไม่ได้สร้างกระบวนการสร้าง PDF ขึ้นใหม่ แต่ห่อหุ้มความสามารถแต่ละอย่างของเอนจินให้เป็นเครื่องมือที่มีชื่อและมีสคีมาของตนเอง จากนั้นให้บริการแคตตาล็อกนั้นผ่านโปรโตคอลสื่อสารหลายแบบ
การออกแบบทั้งหมดตั้งอยู่บนแนวคิดสามอย่างดังนี้
-
รีจิสทรีเครื่องมือ
NextPDF\Server\ToolRegistryค้นหาและลงทะเบียนเครื่องมือในขณะบูต ชุดเครื่องมือหลักมาพร้อมกับแพ็กเกจและพร้อมใช้งานเสมอ ผู้ให้บริการระดับ Pro และ Enterprise ลงทะเบียนเครื่องมือเพิ่มเติม แต่ เฉพาะ เมื่อมีการติดตั้งแพ็กเกจที่ตรงกันแล้วเท่านั้น จำนวนเครื่องมือที่เปิดให้ใช้งานเป็นคุณสมบัติของการดีพลอย ณ ขณะรัน ไม่ใช่ค่าคงที่ตายตัว ดู /connect/tool-catalog/ -
ทรานสปอร์ต รีจิสทรีเดียวกันนี้ให้บริการในสามรูปแบบ MCP ทำงานผ่าน stdio สำหรับไคลเอนต์ AI ในเครื่อง REST ทำงานผ่านไปป์ไลน์มิดเดิลแวร์ PSR-15 บน worker pool ของ RoadRunner สำหรับไคลเอนต์บนเครือข่าย และ gRPC ทำงานบน worker gRPC ของ Spiral RoadRunner สำหรับไคลเอนต์แบบมีชนิดและสตรีมมิง ทรานสปอร์ตแต่ละแบบเป็นโปรเซสของตนเองและมีจุดเข้า (entry point) ของตนเอง ดู /transports/mcp/, /transports/rest/ และ /transports/grpc/
-
เกตยืนยัน เครื่องมือทุกตัวประกาศระดับความเสี่ยงของตน เครื่องมือที่อยู่ในระดับสูงสุดต้องได้รับการยืนยันจากมนุษย์อย่างชัดเจนก่อนจึงจะทำงาน เกตจะออกโทเคนท้าทาย (challenge token) ที่ใช้ได้เพียงครั้งเดียว เอเจนต์ต้องส่งโทเคนนั้นให้มนุษย์ แล้วเรียกใช้เครื่องมืออีกครั้งพร้อมโทเคนดังกล่าว ดู /connect/hitl-risk-tiers/
แผนภาพด้านล่างแสดงว่ารีจิสทรีเดียวให้บริการทรานสปอร์ตทั้งสามแบบอย่างไร และแสดงตำแหน่งของเกตยืนยันบนเส้นทางของคำขอด้วย
แพ็กเกจนี้ใช้สัญญาอนุญาต Apache-2.0 ซึ่งตรงกับ nextpdf/core เวอร์ชันของโปรโตคอล MCP ที่นำมาใช้คือฉบับแก้ไขลงวันที่ 2025-06-18 เอกสาร OpenAPI 3.1 อธิบายพื้นผิว REST และแพ็กเกจ Protocol Buffers nextpdf.connect.v1 อธิบายพื้นผิว gRPC
พื้นผิว API
หัวข้อที่มีชื่อว่า “พื้นผิว API”จุดเข้าสาธารณะคือคลาสเซิร์ฟเวอร์สามคลาส โดยแต่ละคลาสมีตัวห่อหุ้มแบบส่วนต่อประสานบรรทัดคำสั่ง (CLI) ดังนี้
| จุดเข้า | คลาส | ทรานสปอร์ต |
|---|---|---|
bin/nextpdf-mcp | NextPDF\Server\Mcp\McpServer | MCP ผ่าน stdio |
bin/nextpdf-server | NextPDF\Server\Http\HttpServer | REST ผ่าน RoadRunner HTTP |
bin/nextpdf-grpc | NextPDF\Server\Grpc\GrpcServer | gRPC ผ่าน RoadRunner gRPC |
bin/generate-skills | NextPDF\Server\Skills\SkillsDumper | การส่งออกแคตตาล็อกเครื่องมือ |
McpServer::create(), HttpServer::create() และ GrpcServer::create() แต่ละตัวสร้างเซิร์ฟเวอร์ที่ตั้งค่าครบถ้วนจากอินพุตสภาพแวดล้อมและการกำหนดค่า รีจิสทรี ที่จัดเก็บเอกสาร นโยบายความปลอดภัย และเกตยืนยันเป็นแนวคิดที่ใช้ร่วมกันในเซิร์ฟเวอร์ทั้งสามตัว
ตัวอย่างโค้ด — เริ่มต้นใช้งานอย่างรวดเร็ว
หัวข้อที่มีชื่อว่า “ตัวอย่างโค้ด — เริ่มต้นใช้งานอย่างรวดเร็ว”เซิร์ฟเวอร์ MCP ขั้นต่ำต้องใช้คำสั่งเพียงคำสั่งเดียว ไม่จำเป็นต้องเขียนโค้ดเชื่อม (glue code) ภาษา PHP เพิ่มเติม
./vendor/bin/nextpdf-mcpเซิร์ฟเวอร์อ่านคำขอ JSON-RPC จากอินพุตมาตรฐาน และเขียนการตอบกลับไปยังเอาต์พุตมาตรฐาน สำหรับการแลกเปลี่ยน initialize และ tools/list ที่รันได้จริง รวมถึงคำขอ REST ที่ตรงกัน ดู /connect/quickstart/
กรณีขอบและข้อควรระวัง
หัวข้อที่มีชื่อว่า “กรณีขอบและข้อควรระวัง”- จำนวนเครื่องมือไม่ใช่ 33 หรือจำนวนตายตัวใด ๆ เซิร์ฟเวอร์นับจำนวนเครื่องมือ ณ ขณะรันด้วย
count(ToolRegistry::all())หลังจากการกรองตามนโยบายและการตรวจหาระดับชั้น เอกสารที่อ้างยอดรวมแบบตายตัวถือว่าล้าสมัย หากต้องการจำนวนที่เป็นทางการ ให้สอบถามเซิร์ฟเวอร์ที่กำลังทำงานอยู่ โดยใช้การตอบกลับinitializeของ MCP หรือเอนด์พอยต์/api/v1/capabilitiesของ REST
-
การไม่มีแพ็กเกจระดับ Pro หรือ Enterprise ไม่ถือเป็นข้อผิดพลาด รีจิสทรีตรวจสอบคลาสของผู้ให้บริการด้วย
class_exists()แล้วข้ามระดับชั้นที่ไม่มีอยู่โดยไม่รายงานข้อผิดพลาด การดีพลอยแบบโอเพนซอร์สเพียงอย่างเดียวจะบูตและให้บริการแคตตาล็อกหลักได้ตามปกติ -
ทรานสปอร์ตทั้งสามแบบไม่ได้ใช้โปรเซสร่วมกัน การรันเซิร์ฟเวอร์ MCP ไม่ได้เริ่มเซิร์ฟเวอร์ REST หรือเซิร์ฟเวอร์ gRPC และกรณีกลับกันก็เช่นเดียวกัน การดีพลอยแบบรวมจะรัน RoadRunner supervisor ด้วยการกำหนดค่าที่เริ่ม worker pool ทั้งสอง คือ HTTP pool และ gRPC pool ดู /connect/deployment/
ประสิทธิภาพ
หัวข้อที่มีชื่อว่า “ประสิทธิภาพ”ทรานสปอร์ตแต่ละแบบทำงานโดยอาศัย worker โดย worker หนึ่งตัวจัดการคำขอได้ครั้งละหนึ่งคำขอ เซิร์ฟเวอร์ REST และ gRPC ทำงานบน worker pool ของ RoadRunner และการกำหนดค่าเป็นตัวกำหนดขนาดของ pool ค่าเริ่มต้นคือ HTTP worker จำนวนสี่ตัว RoadRunner supervisor จำกัดหน่วยความจำของ worker แต่ละตัว front-matter performance_budget ในหน้านี้อธิบายขอบเขตของการบูตแบบเย็น (cold boot) และการค้นพบ (discovery) ไม่ใช่เป้าหมายรายคำขอ การทำงานของเอนจินที่อยู่เบื้องหลังเป็นตัวกำหนดต้นทุนของคำขอเป็นส่วนใหญ่
หมายเหตุด้านความปลอดภัย
หัวข้อที่มีชื่อว่า “หมายเหตุด้านความปลอดภัย”ทรานสปอร์ตบนเครือข่ายทั้งหมดตรวจสอบตัวตนด้วย bearer token ที่เป็นคีย์ API ทรานสปอร์ต MCP stdio เป็นซับโปรเซสในเครื่องที่ไคลเอนต์ซึ่งเปิดใช้งานเชื่อถือ ตามแบบจำลองทรานสปอร์ตของ MCP เครื่องมือที่มีความเสี่ยงสูงยังคงถูกควบคุมด้วยการยืนยันจากมนุษย์ในทุกทรานสปอร์ต สำหรับแบบจำลองภัยคุกคามฉบับเต็ม แบบจำลองการยืนยันตัวตน และการกำหนดค่าความปลอดภัยของทรานสปอร์ต ดู /connect/security-and-operations/
ความสอดคล้องตามมาตรฐาน
หัวข้อที่มีชื่อว่า “ความสอดคล้องตามมาตรฐาน”หน้านี้กล่าวเฉพาะข้อความเชิงสถาปัตยกรรมเท่านั้น การอ้างอิงด้านโปรโตคอลและความปลอดภัยที่เป็นบรรทัดฐานถูกตรึงไว้ในหน้าที่ระบุพฤติกรรม ได้แก่ /connect/security-and-operations/, /transports/mcp/, /transports/rest/ และ /transports/grpc/ เอกสารอ้างอิงวงจรชีวิตของ MCP คือข้อกำหนดอย่างเป็นทางการที่ modelcontextprotocol.io (ฉบับแก้ไข 2025-06-18) หน้าทรานสปอร์ตบันทึกการอ้างอิงดังกล่าวพร้อม URL เนื่องจากข้อกำหนด MCP ไม่ได้เป็นส่วนหนึ่งของคลังมาตรฐานแบบควบคุมการเข้าถึง
บริบทเชิงพาณิชย์
หัวข้อที่มีชื่อว่า “บริบทเชิงพาณิชย์”แคตตาล็อกหลักครอบคลุมการสร้างเอกสาร การตรวจสอบ และการวินิจฉัย เครื่องมือสำหรับการลงนาม การปกปิดข้อมูล (redaction) การรับรองความสอดคล้อง และการวิเคราะห์เชิงนิติวิทยาศาสตร์จะปรากฏก็ต่อเมื่อมีการติดตั้ง nextpdf/premium ควบคู่ไปกับเซิร์ฟเวอร์เท่านั้น นี่เป็นขอบเขตระดับแพ็กเกจ ไม่ใช่การกระตุ้นให้ซื้อเพิ่ม (upsell) ขณะรัน เซิร์ฟเวอร์ไม่ส่งเนื้อหาการตลาดออกมาเลย
ดูเพิ่มเติม
หัวข้อที่มีชื่อว่า “ดูเพิ่มเติม”- /connect/install/ — การติดตั้งและแพ็กเกจที่เลือกใช้ได้
- /connect/quickstart/ — การแลกเปลี่ยน MCP และ REST ที่รันได้จริงครั้งแรก
- /connect/tool-catalog/ — ชุดเครื่องมือหลักที่ผ่านการตรวจสอบ และเหตุที่จำนวนขึ้นอยู่กับขณะรัน
- /connect/hitl-risk-tiers/ — เกตยืนยันและแบบจำลองความเสี่ยง
- /transports/mcp/, /transports/rest/, /transports/grpc/ — การตั้งค่าแยกตามทรานสปอร์ต
- /connect/security-and-operations/ — การยืนยันตัวตน ความปลอดภัยของทรานสปอร์ต แบบจำลองภัยคุกคาม
- /connect/deployment/ — RoadRunner, Docker และการดีพลอยแบบรวมทรานสปอร์ต