บทความ › AI

EP6 MCP ให้ AI มีมือ เขียนเครื่องมือครั้งเดียว ใช้ได้กับ AI หลายตัว

MCP คือมาตรฐานที่ให้ AI ต่อกับระบบอื่น เช่น ฐานข้อมูลหรือระบบบทความ เขียน MCP server ตัวเล็กใน 10 บรรทัด ต่อเข้า Claude Code และสิ่งที่ต้องระวังก่อนให้ AI แตะระบบจริง

เริ่มต้น อ่าน 4 นาที 15 ตุลาคม 2569 จาก Claude Code สู่ระบบ AI หลายเจ้า · บทที่ 6/8

อ่านจบแล้วจะรู้
  • MCP คือปลั๊กมาตรฐาน เขียนเครื่องมือเป็น MCP server ครั้งเดียว AI ทุกตัวที่รองรับ MCP ใช้ได้
  • คำอธิบายเครื่องมือสำคัญเท่ากับตัวโค้ด เพราะ AI ใช้มันตัดสินว่าจะเรียกเมื่อไหร่
  • เริ่มจากเครื่องมืออ่านอย่างเดียว ค่อยเพิ่มสิทธิ์เขียน และอย่าติดตั้ง server ที่ไม่รู้ที่มา

ห้าตอนที่ผ่านมา AI ของเราทำงานกับไฟล์และคำสั่งในเครื่อง แต่ข้อมูลจริงของงานมักอยู่ที่อื่น เช่น ฐานข้อมูล ระบบบทความ หรือระบบค้นเอกสาร ตอนนี้จะให้มัน มีมือ เข้าไปใช้ระบบพวกนั้น ผ่านมาตรฐานชื่อ MCP (Model Context Protocol) ซึ่งเป็นประตูแรกสู่การทำงานร่วมกับ AI ตัวอื่นในตอนถัดไปด้วย

ปัญหา: ต่อทีละคู่ ไม่จบ

ถ้าไม่มีมาตรฐาน ทุกครั้งที่อยากให้ AI ตัวหนึ่งใช้ระบบหนึ่ง ต้องเขียนโค้ดเชื่อมเฉพาะคู่นั้น มี AI 3 ตัว ระบบ 3 ระบบ ก็ต้องเขียน 9 ชุด และพอเปลี่ยน AI ก็ต้องเขียนใหม่

ไฟฟ้าแก้ปัญหานี้ด้วยปลั๊กมาตรฐาน เครื่องใช้ไฟฟ้าไม่ต้องรู้ว่าไฟมาจากโรงไฟฟ้าไหน

หลักการ: เขียนเครื่องมือเป็น MCP server ครั้งเดียว แล้ว AI ทุกตัวที่รองรับ MCP ต่อใช้ได้

MCP ทำงานยังไง

  • MCP server คือโปรแกรมเล็ก ๆ ที่ประกาศว่ามีเครื่องมืออะไรบ้าง แต่ละเครื่องมือมีชื่อ คำอธิบาย และรับข้อมูลอะไร
  • MCP client คือตัว AI เช่น Claude Code ที่ต่อเข้า server แล้วเห็นรายการเครื่องมือ
  • เวลาทำงาน AI อ่านคำอธิบาย ตัดสินใจเองว่าจะเรียกเครื่องมือไหน server ทำงานจริง แล้วส่งผลกลับ

server ต่อได้สองแบบ คือรันเป็นโปรแกรมในเครื่อง หรือเปิดให้ต่อผ่านเครือข่าย

เขียน MCP server ตัวเล็กสุด

ใช้ Python กับ library mcp ทางการ

from mcp.server.fastmcp import FastMCP

mcp = FastMCP("notes")

@mcp.tool()
def search_notes(query: str) -> str:
    """ค้นบันทึกการประชุมด้วยคำค้น คืนบรรทัดที่ตรง"""
    with open("notes.txt", encoding="utf-8") as f:
        return "".join(line for line in f if query in line) or "ไม่พบ"

mcp.run()

แล้วต่อเข้า Claude Code

claude mcp add notes -- python server.py

จากนี้ถามว่า “ประชุมครั้งไหนพูดถึงงบ” AI จะเห็นเครื่องมือ search_notes และเรียกเอง สังเกตว่าบรรทัด docstring ใต้ชื่อฟังก์ชันคือ คำอธิบายที่ AI อ่าน สำคัญแบบเดียวกับคำอธิบายของ skill ใน EP2

ตัวอย่างจริง: server เดียว ใช้กับ AI สองแบบ

เราเขียน MCP server ไว้ใช้เองสามตัว ได้แก่ ตัวค้นเอกสารด้วยความหมาย ตัวจัดการไฟล์สื่อ และตัวจัดการบทความ ตัวหลังมีเครื่องมือ 5 อย่าง เช่น สร้าง แก้ และดึงรูปปกของบทความ เก็บข้อมูลในฐานข้อมูล

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

ทีม agentโมเดลในเครื่องผ่านเครือข่ายAI อีกตัวอีกโปรแกรมโปรแกรมในเครื่องClaude Codeต่อเพิ่มได้ไม่ต้องเขียนใหม่MCP server: บทความ5 เครื่องมือ · เขียนครั้งเดียวฐานข้อมูล
server เดียว ใช้ได้กับ AI หลายตัว เส้นประคือตัวที่ต่อเพิ่มได้ทันที

สิ่งที่ต้องระวัง

  • เครื่องมือทำงานด้วยสิทธิ์ของเรา ถ้าเครื่องมือลบข้อมูลได้ AI ก็ลบได้ เริ่มจากเครื่องมือ อ่านอย่างเดียว ก่อน แล้วค่อยเพิ่มสิทธิ์เขียนเมื่อมั่นใจ และงานที่ย้อนกลับไม่ได้ควรให้คนกดยืนยัน
  • อย่าติดตั้ง server ที่ไม่รู้ที่มา server คือโปรแกรมที่รันในเครื่องเรา คิดเหมือนติดตั้งโปรแกรมทั่วไป
  • ผลจากเครื่องมือคือข้อมูล ไม่ใช่คำสั่ง ถ้าเครื่องมือดึงข้อความจากเว็บหรือฐานข้อมูลที่คนอื่นเขียนได้ ข้อความนั้นอาจมีประโยคหลอกให้ AI ทำอย่างอื่น ระบบที่ดีต้องไม่ให้ AI ทำตามข้อความในข้อมูล
  • อย่าใส่ key ในโค้ดหรือ CLAUDE.md ให้อ่านจากตัวแปรแวดล้อม

ลองเองใน 10 นาที

  1. สร้างไฟล์ notes.txt ใส่ข้อความสักสิบบรรทัด แล้วสร้าง server.py ตามตัวอย่าง
  2. ติดตั้งด้วย pip install mcp แล้วรัน claude mcp add notes -- python server.py
  3. เปิด Claude Code ถามเรื่องที่อยู่ในบันทึก ดูว่ามันเรียก search_notes เอง
  4. ลองแก้ docstring ให้คลุมเครือ แล้วถามใหม่ จะเห็นว่าคำอธิบายมีผลกับการเลือกใช้จริง

ตรงไหนที่คนต้องทำ

คนเป็นคนตัดสินว่า ระบบไหนที่ AI ได้แตะ และแตะได้แค่ไหน อ่านอย่างเดียว เขียนได้ หรือลบได้ การให้มือ AI ก็เหมือนให้กุญแจ ให้เท่าที่งานต้องใช้

ตอนหน้า

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

คำถามที่พบบ่อย

MCP ต่างจาก API ธรรมดายังไง

API เขียนมาให้โปรแกรมเรียก ส่วน MCP ห่อ API ให้อยู่ในรูปที่ AI เข้าใจ มีชื่อ คำอธิบาย และรูปแบบข้อมูลของแต่ละเครื่องมือ AI จึงค้นเจอและเลือกเรียกได้เอง โดยไม่ต้องเขียนโค้ดเชื่อมใหม่ให้ AI แต่ละตัว

ใช้ MCP server ของคนอื่นได้ไหม

ได้ แต่ให้ระวังเหมือนติดตั้งโปรแกรม server ทำงานด้วยสิทธิ์ของเรา ใช้เฉพาะของที่มาจากแหล่งที่เชื่อถือได้ และอ่านว่ามันเข้าถึงอะไรบ้างก่อน

คำสั่งและค่าตั้งในบทความทดสอบบนระบบตัวอย่าง ลองบนเครื่องทดสอบก่อนใช้กับระบบจริงเสมอ

อ่านต่อ

#AIขั้นสูง

MCP แบบ Code Mode: ให้ AI เขียนโค้ดเรียก tool แทนเรียกทีละครั้ง

แทนการเรียก MCP tool ทีละครั้งแล้วอ่านผลทุกก้อน ให้ AI เขียนโค้ดเรียก tool เอง ตัวอย่าง 150,000 เหลือ 2,000 token, Code Mode ของ Cloudflare และราคาที่ต้องจ่าย

อ่าน 8 นาที
#AIกลาง

Sandbox ให้ AI เขียนโค้ด: จำกัดไฟล์และเน็ตด้วย bubblewrap กับ Seatbelt

ให้ AI coding agent รันคำสั่งได้เองโดยไม่ต้องกดอนุมัติทุกครั้ง ด้วย sandbox ระดับ OS ตั้งขอบเขตไฟล์และเน็ตยังไง ค่าเริ่มต้นที่ต้องรู้ และส่วนที่ sandbox ไม่ครอบ

อ่าน 8 นาที
#AIกลาง

เปิด AI หลาย session พร้อมกัน แล้วส่งงานข้ามกันด้วย ไฟล์ ไม่ใช่แชท

วันเดียวเปิด Claude Code สามหน้าต่าง ทำเว็บ ออกแบบเกม และทำวิดีโอ AI พร้อมกัน ส่งงานข้าม session ด้วย CLAUDE.md, memory และ git พร้อมกับดักเรื่อง worktree ที่เจอจริง

อ่าน 9 นาที