เราสร้าง 126 MCP Tools. แต่ไม่ใช่วิธีที่ดีที่สุดสำหรับ Agent

เมื่อ MCP กลายเป็น hotspot ของอุตสาหกรรม เราสร้าง MCP Server ที่สมบูรณ์พร้อม 126 generated tools. นี่คือสิ่งที่ผิดพลาด—และทำไม tools มากขึ้นไม่ได้หมายความว่า Agent enablement ดีขึ้น

Oliver Kingsley

Oliver Kingsley

8 July 2026

เราสร้าง 126 MCP Tools. แต่ไม่ใช่วิธีที่ดีที่สุดสำหรับ Agent

Apidog สำหรับองค์กร

การติดตั้งแบบ On-Premises

SSO & RBAC

รองรับมาตรฐาน SOC 2

สำรวจ Apidog Enterprise

นี่เป็นซีรีส์ 10 ตอนที่แชร์ว่า Apidog พัฒนา Apidog CLI เครื่องมือ command-line สำหรับการทดสอบ API และการจัดการวงจรชีวิต API อ่านตามลำดับหรือข้ามไปบทความที่คุณสนใจ:

ชื่อเรื่อง จุดเน้น
1 เราสร้าง 126 MCP Tools แต่ไม่ใช่วิธีที่ดีที่สุดสำหรับ Agent การค้นพบปัญหา
2 ทำไมเราพัฒนา Apidog CLI ใหม่ทั้งหมด การพัฒนาสถาปัตยกรรม
3 กฎทอง: CLI ผลิตข้อมูลจริง Model ทำงานบนข้อมูลจริง ปรัชญาหลัก
4 agentHints: สอน CLIs ให้สื่อสารกับ Agents ผลลัพธ์ที่มีโครงสร้าง
5 SKILL: ส่งประสบการณ์การดำเนินงานเป็น Code ประสบการณ์การดำเนินงาน
6 ตัวเลขไม่โกหก: การเรียก Tool น้อยลง 30% Token น้อยลง 25% ผลลัพธ์ที่วัดได้
7 จาก PRD ไปยังวงจรการทดสอบ: Agent Workflow เต็มรูปแบบกับ Apidog CLI คู่มือปฏิบัติ
8 ทำไมความเข้ากันได้กับ CI/CD เป็นสิ่งที่ไม่สามารถต่อรองสำหรับ Agent Tools มุมมอง DevOps
9 AI Branch: การเปลี่ยนแปลงโปรเจกต์ที่ปลอดภัยกว่ากับ AI Agents ชั้นความปลอดภัย
10 Spec-First เป็นอดีตแล้ว ยินดีต้อนรับ Skill-First วิสัยทัศน์และอนาคต

เมื่อ MCP กลายเป็นจุดสนใจของอุตสาหกรรม เราสร้าง MCP Server สมบูรณ์พร้อม 126 tools ที่สร้างอัตโนมัติ นี่คือสิ่งที่ผิดพลาด—และทำไมการมี tools มากขึ้นไม่ได้หมายความว่า Agent enablement ดีขึ้น

กระแส MCP

ในต้นปี 2025 MCP (Model Context Protocol) กลายเป็นจุดศูนย์กลางของอุตสาหกรรม

Anthropic สนับสนุนโปรโตคอลนี้ Cursor, Claude Code, Antigravity, Agent IDE ต่างๆ และผลิตภัณฑ์ SaaS มากมายต่างก็ตามมา โปรโตคอลนี้สัญญาว่าจะเป็นวิธีมาตรฐานสำหรับ AI Agent ในการเชื่อมต่อกับเครื่องมือภายนอกและแหล่งข้อมูล

ในช่วงนั้น ผลิตภัณฑ์ที่มี API เกือบทุกตัวถูกถามคำถามเดียวกัน:

"คุณมี MCP ไหม?"

สำหรับ Apidog ทางเลือกนี้ดูเป็นไปตามธรรมชาติเป็นพิเศษ


ทำไม MCP ดูเหมือนจะเป็นคำตอบ

Apidog เองได้สะสมความสามารถในการพัฒนา API อย่างครบถ้วน:

หาก Agent จะกลายเป็นจุดเริ่มต้นซอฟต์แวร์ใหม่—วิธีใหม่ที่ผู้ใช้โต้ตอบกับผลิตภัณฑ์—การเปิดเผยความสามารถเหล่านี้ผ่าน MCP ดูเหมือนจะเป็นตั๋วที่จำเป็นต้องมี

เราเชื่อว่าถ้าเราสามารถแพ็กเกจความสามารถของเราเป็น MCP tools Agent จะสามารถ:

ตรรกะนั้นตรงไปตรงมา: เปิดเผยความสามารถมากขึ้น = เปิดใช้งาน Agent มากขึ้น


สิ่งที่เราสร้างจริงๆ

เราไม่ได้ทำเรื่องนี้แบบเบาๆ

Apidog MCP ไม่ใช่ demo ง่ายๆ ที่มี endpoint ไม่กี่ตัวเขียนด้วยมือ แต่เป็น MCP Server ที่สมบูรณ์:

ระบบ Session

MCP client จะเริ่มต้น session ก่อน เซิร์ฟเวอร์จะสร้าง sessionId และบันทึกสถานะ session ผ่าน Redis คำขอที่ตามมาจะเข้าถักษ์ด้วย sessionId

กล่าวอีกนัยหนึ่ง มันไม่ใช่ HTTP call ครั้งเดียว แต่เป็น ระบบ session ระดับโปรโตคอล

หมวดหมู่เครื่องมือ

ชั้นเครื่องมือก็ไม่ได้เขียนด้วยมือด้วย endpoints ที่ตายตัวไม่กี่ตัว เราแบ่งเครื่องมือของ Apidog เป็นหลายหมวดหมู่:

หมวดหมู่ คำอธิบาย ตัวอย่าง
Native project tools สร้างสำหรับการดำเนินการระดับโปรเจกต์ สรุปโปรเจกต์, โครงสร้างโฟลเดอร์, รายละเอียดทรัพยากร
Built-in domain tools ฟังก์ชันหลักของ Apidog Import/export, รายละเอียด endpoint, test cases, test scenarios
Generated OpenAPI tools แปลงอัตโนมัติจาก OpenAPI definitions 126 tools พร้อม identifiers เฉพาะ, paths, HTTP methods, input Schema

หมวดหมู่สุดท้าย: 126 เครื่องมือที่สร้างขึ้น

แต่ละเครื่องมือที่สร้างมี:

Progressive Disclosure

เพื่อลดแรงกดดันจากการเปิดเผยเครื่องมือ เรายังสร้าง dynamic discovery layer:

Agent สามารถ:

  1. ค้นหา endpoint tools ที่มีก่อน (listOpenApiEndpoints)
  2. จากนั้นรับรายละเอียด OpenAPI ของเครื่องมือเฉพาะ (getOpenApiDetails)
  3. สุดท้ายเรียกใช้ HTTP call จริงโดย tool id (executeOpenApi)

นี่คือความพยายามของเราในการเปิดเผยแบบลำดับชั้น เราไม่ได้เปิดเผย endpoints พื้นฐานทั้งหมดโดยตรงและชัดเจน เราหวังว่า Agent จะค้นหาก่อน จากนั้นรับรายละเอียด และสุดท้ายจึงเรียกใช้


กำแพงเครื่องมือสุ่ม

แต่เมื่อเข้าสู่งานจริง ปัญหาเกิดขึ้นอย่างรวดเร็ว

ลองพิจารณาคำขอผู้ใช้ง่ายๆ:

"ช่วยฉันเพิ่ม test สำหรับ endpoint นี้และรันการตรวจสอบ"

จากมุมมองการนำไปปฏิบัติ นี่เป็นคำขอที่สมเหตุสมผล Apidog มีความสามารถที่จะ:

แต่จากมุมมองของ Agent คำของ่ายๆ นี้จริงๆ แล้วกระตุ้นชุดของการตัดสินใจอย่างต่อเนื่อง:

จุดตัดสินใจ ตัวเลือก ความไม่แน่นอน
เริ่มจากไหน? ค้นหาโปรเจกต์ก่อน? ค้นหา endpoint ก่อน? ไม่มีคำแนะนำชัดเจน
อ่านอะไร? อ่านรายละเอียด endpoint? ลิสต์ test cases ที่มีอยู่? ทั้งสองดูถูกต้อง
สร้างอย่างไร? ใช้ createTestCase โดยตรง? ค้นหา case group ก่อน? ไม่ทราบข้อกำหนด
อัปเดตอย่างไร? เรียก update tool โดยตรง? Import steps แล้วอ่านกลับ? เวิร์กโฟลว์ที่ซ่อนอยู่

Agent ไม่เพียงแต่ต้องหาเครื่องมือที่ถูกต้อง แต่ต้องแก้ปัญหา "จะใช้เครื่องมือไหน" ก่อน จึงจะเริ่มแก้ปัญหาของผู้ใช้ได้

จากมุมมองการนำไปปฏิบัติ ปัญหาเหล่านี้สามารถแก้ไขได้ทั้งหมดผ่านเครื่องมือ จากมุมมองประสบการณ์ของ Agent พวกมันก่อตัวเป็นกำแพงของเครื่องมือสุ่ม


สี่ปัญหาโครงสร้าง

ผ่านการทดสอบในโลกจริงและข้อเสนอแนะภายใน เราระบุปัญหาโครงสร้างสี่ประการกับแนวทาง MCP

ปัญหาที่ 1: ต้นทุนการค้นพบเครื่องมือเพิ่มขึ้นอย่างรวดเร็ว

Apidog ไม่ใช่ผลิตภัณฑ์ที่สามารถอธิบายด้วย endpoints เพียงไม่กี่โหล

โมดูล รายละเอียด
Endpoints List, get, create, update, delete
Schemas List, get, create, update, delete
Environments List, get, create, update, delete, variables
Mocks Configure, enable, disable
Test cases List, get, create, update, delete, duplicate
Test scenarios List, get, create, update, delete, import steps, run
Test suites List, get, create, update, delete
Reports List, get, generate, download
Import/export หลายรูปแบบ, ตัวเลือก
Branches List, create, merge, delete

เมื่อเครื่องมือเติบโตจากไม่กี่โหลเป็น หลายสิบหรือหลายร้อย Agent ต้องแก้ปัญหา "จะใช้เครื่องมือไหน" ก่อนจึงจะเริ่มแก้ปัญหาของผู้ใช้ได้

เราลองเขียนเวิร์กโฟลว์ลงใน description ของเครื่องมือ (field ที่ใช้เปิดเผยเครื่องมือให้ AI Agent) ตัวอย่างเช่น description ของเครื่องมือจะระบุอย่างชัดเจนว่า:

"ก่อนค้นหาข้อมูล endpoint คุณต้องยืนยันโปรเจกต์ผ่านเครื่องมืออื่นก่อน จากนั้นรับ metadata ของโปรเจกต์ผ่านเครื่องมือที่สาม และสุดท้ายเรียกเครื่องมือปัจจุบัน"

วิธีนี้ใช้ได้ในชุดเครื่องมือขนาดเล็ก แต่ในกำแพงเครื่องมือขนาดใหญ่ description เองแย่งความสนใจของโมเดล

ยิ่งเราเขียนคำแนะนำใน descriptions มากเท่าไหร่ ยิ่งกิน tokens มากขึ้น—และโอกาสที่ Agent จะอ่านและปฏิบัติตามก็น้อยลง


ปัญหาที่ 2: Business Schema บุกรุก Context

แต่ละ MCP tool ไม่ใช่แค่ชื่อเครื่องมือ

หลังแต่ละเครื่องมือคือ:

ลองประเมินแบบอนุรักษ์นิยม:

ปัจจัย ค่า
จำนวนเครื่องมือ 100+
เฉลี่ย tokens ต่อเครื่องมือ ~500
รวม tokens คำอธิบายเครื่องมือ ~50,000

คำถามของผู้ใช้อาจมีเพียง 50 ตัวอักษร แต่โมเดลถูกบังคับให้แนะนำคำอธิบายเครื่องมือ 50,000 tokens ก่อน—เพียงเพื่อ MCP server เดียว

นี่ไม่ใช่ทฤษฎี ข้อมูลอุตสาหกรรมสนับสนุนสิ่งนี้

บทความบล็อกอย่างเป็นทางการของ Cursor "Dynamic Context Discovery" ให้ข้อมูลอ้างอิงที่มีค่า: โดยการแปลง MCP tool descriptions, terminal sessions, และบทสนทนายาวให้เป็น context ที่โหลดตามความต้องการ การใช้ tokens ระหว่างรันไทม์ลดลง 46.9%

แนวทางของ Trae ตรงไปตรงมากกว่า: จำกัดจำนวนเครื่องมือ MCP และความยาวคำอธิบายเครื่องมือเดียว:

อันที่จริง ในระหว่างการทดสอบภายในช่วงแรก หลายทีมรายงานว่า Apidog MCP มีปัญหากับเครื่องมือบางตัวที่ไม่สามารถเรียกใช้ใน Trae ได้ Agent ถูกบังคับให้แลกเปลี่ยนเนื่องจาก context ของโมเดลที่จำกัด และเครื่องมือภายนอกเป็นสิ่งแรกที่ถูก "ตัดออก"

โซลูชันเหล่านี้ทั้งหมดชี้ไปที่ความจริงเดียวกัน:

คำอธิบายเครื่องมือไม่สามารถเข้าสู่ context ของโมเดลได้อย่างไม่จำกัด


ปัญหาที่ 3: Protocol Sessions ทำให้ Execution Chains หนักขึ้น

Apidog MCP server ต้องจัดการ:

สถานะโปรโตคอล คำอธิบาย
MCP initialize Handshake ระหว่าง client และ server
sessionId generation Identifier เฉพาะสำหรับ session
Redis session storage การคงอยู่ของสถานะ
Transport connect/close การจัดการการเชื่อมต่อ
Session touch กลไก keep-alive
DELETE session การทำความสะอาดเมื่อเสร็จสิ้น
JSON response or SSE configuration ตัวเลือกรูปแบบ output format options

สำหรับการเรียกเครื่องมือง่ายๆ ต้นทุนเหล่านี้ยอมรับได้ สำหรับงาน Agent ที่มี จำนวนการเรียกมากและการสำรวจบ่อย ข้อกำหนดการจัดการสถานะเหล่านี้เพิ่มความซับซ้อนทั้งฝั่งเซิร์ฟเวอร์และ client

เมื่อนำ Apidog MCP ไปใช้ ทีมใช้พลังงานอย่างมากในการแก้ไขปัญหาและปรับตัวให้เข้ากับ Agent clients ต่างๆ (Cursor, Claude Code, Antigravity, Trae, ฯลฯ) อย่างไรก็ตาม ปัญหาความเข้ากันได้ของโปรโตคอลยังคงมีอยู่ และโปรโตคอล MCP อย่างเป็นทางการยังคงถูกแพตช์ด้วยเวอร์ชันใหม่

ทุกฝ่ายได้รับความเดือดร้อนอย่างมาก


ปัญหาที่ 4: Atomic Tools ไม่สามารถแสดง Product Semantics ได้อย่างเป็นธรรมชาติ

ใน test scenarios ของ Apidog ไม่ใช่แค่การแสดงออกของ steps array ง่ายๆ

Test scenario หนึ่งเกี่ยวข้องกับ:

องค์ประกอบ ความซับซ้อน
Import Steps จาก endpoints หรือ cases ที่มีอยู่
Read-back การรับโครงสร้างเต็มหลัง import
Internal cases HTTP requests ที่ฝังอยู่ใน steps
Pre/post processors Scripts ก่อน/หลัง requests
Assertions กฎการตรวจสอบ response
Variable extraction การดึงค่าจาก responses
Runtime environment การเลือก environment, variables
Report verification การตรวจสอบผล test

หลังจากแยกส่วนเหล่านี้เป็น MCP tools หลายตัว Agent ยังคงต้องทำ งาน orchestration test ด้วยตัวเอง

ยิ่งเครื่องมือเป็น atomic มากเท่าไหร่ โมเดลยิ่งต้องเข้าใจ product semantics ภายในมากขึ้น:

นี่เห็นได้ชัดว่าเกินขอบเขตความสามารถของโมเดล

มันบังคับให้ทีม Apidog ปรับปรุงวิศวกรรมเทคนิคอย่างชัดเจนสำหรับ product semantics ภายใน Atomic endpoints เพิ่ม conversion layer อย่างไม่พอใจ เพียงเพื่อปรับให้เข้ากับการส่งเดี่ยวของ MCP tool layer

ความท้าทายทางวิศวกรรมและต้นทุนการบำรุงรักษาภายหลังไม่ต้องสงสัยว่ายากลำบาก


สาเหตุหลัก

สาเหตุหลักของปัญหาทั้งสี่นี้คือสิ่งเดียวกัน:

MCP ถนัดในการเชื่อมต่อเครื่องมือ แต่งาน R&D ที่ซับซ้อนต้องการมากกว่าการเชื่อมต่อเครื่องมือ—พวกมันต้องการกระบวนการวิศวกรรมที่เรียกใช้ได้
จุดแข็งของ MCP ข้อจำกัดของ MCP
การเชื่อมต่อมาตรฐาน ไม่สามารถแสดงเวิร์กโฟลว์
โปรโตคอลแบบรวม ไม่สามารถชี้นำลำดับ
การเปิดเผยเครื่องมือ ไม่สามารถบังคับการตรวจสอบ
การค้นพบแบบไดนามิก ไม่สามารถให้การตัดสิน

สำหรับผลิตภัณฑ์ง่ายๆ ที่มีการดำเนินการที่กำหนดไว้ดีไม่กี่โหล MCP ทำงานได้ดี Agent สามารถคาดเดาเครื่องมือที่ถูกต้องได้อย่างสมเหตุสมผล เรียกใช้ และรับผลลัพธ์

สำหรับผลิตภัณฑ์เช่น Apidog—ที่มีโมดูลหลายสิบ, การดำเนินการหลายร้อย, โครงสร้างซ้อน, เวิร์กโฟลว์ที่ซ่อนอยู่, และ product semantics เฉพาะ—MCP เพียงอย่างเดียวสร้าง กำแพงเครื่องมือสุ่ม ที่ Agent ต้องดิ้นรนเพื่อนำทาง


สิ่งที่เราเรียนรู้

บทเรียน ผลกระทบ
เครื่องมือมากขึ้น ≠ เปิดใช้งาน Agent ดีขึ้น จำนวนเครื่องมือคือต้นทุน ไม่ใช่ประโยชน์
คำอธิบายเครื่องมือแย่ง context 500 tokens ต่อเครื่องมือ × 100 เครื่องมือ = ภาระ 50,000 tokens
Session protocols เพิ่ม overhead การเรียกใช้ แต่ละการเรียกมีการจัดการสถานะโปรโตคอล
Atomic tools ต้องการความรู้ผลิตภัณฑ์ Agent ต้องเข้าใจภายในเพื่อ orchestrate
การเชื่อมต่อ ≠ การเรียกใช้ MCP เชื่อมต่อ; CLI + SKILL เรียกใช้

การเปลี่ยนแปลง

ความเข้าใจนี้ทำให้เราตั้งคำถามที่แตกต่าง:

ถ้า MCP ไม่ใช่คำตอบสำหรับการเปิดใช้งาน agent แล้วอะไรคือคำตอบ?

เราไม่ได้ละทิ้งคุณค่าของ MCP—มันให้การเชื่อมต่อมาตรฐาน ซึ่งสำคัญสำหรับระบบนิเวศ แต่เราต้องการบางอย่างที่สามารถ:

คำตอบที่เรามาถึง: CLI + SKILL

ในโพสต์ถัดไป ทำไมเราถึงย้ายจาก MCP Server ไป CLI Runtime เราจะสำรวจการเปลี่ยนแปลงทางสถาปัตยกรรม—ที่ความซับซ้อนย้ายจาก context ของโมเดลไปสู่ระบบวิศวกรรม และทำไมสิ่งนั้นเปลี่ยนแปลงทุกอย่างสำหรับการเปิดใช้งาน Agent


ประเด็นสำคัญ


ดาวน์โหลด Apidog design, mock, test, และ document APIs ใน workspace เดียว. เรียนรู้เพิ่มเติมเกี่ยวกับ Apidog CLI สำหรับการทดสอบ API ผ่าน command-line, CI automation, และเวิร์กโฟลว์ AI Agent

button

ฝึกการออกแบบ API แบบ Design-first ใน Apidog

ค้นพบวิธีที่ง่ายขึ้นในการสร้างและใช้ API