ถ้าเราจะทำงานเกี่ยวกับ AWS แล้วละก็ ตัว Gen AI ที่น่าสนใจคงหนีไม่พ้น Amazon Q ที่เป็น Gen AI ของทาง AWS เอง
ตัวที่ใช้อยู่จะเป็น Amazon Q Developer Pro Subscriptions ราคาจะอยู่ที่ $19 ต่อเดือน ต่างจากตัวฟรีตามนี้เลย ซึ่งดูเหมือนว่า ถ้าจะเอา Q ไปคุยกับ MCP ก็จะต้องใช้ตัว Pro นะ

ในทีนี้เราจะใช้ Ubuntu ที่เป็น WSL บน Windows เอามาใช้กับ Q
Install Q CLI on Ubuntu
ข้อมูลขั้นตอนก็อ้างอิงตาม website ของ aws เลยนะ
Installing Amazon Q for command line – Amazon Q Developer
เริ่มกันเลย ขั้นแรกก็ทำการ โหลดไฟล์ติดตั้ง q cli กันมาก่อน
wget https://desktop-release.q.us-east-1.amazonaws.com/latest/amazon-q.deb
จากนั้นก็ทำการติดตั้ง
sudo dpkg -i amazon-q.deb
sudo apt-get install -f
ถ้าเครื่องใครลงไม่ได้ ก็ลองดูว่าติด dependencies ตัวไหนบ้าง ลงให้ครบก็จะสามารถลง q ได้แล้ว
การใช้งาน
หลังจากที่ เราลง q เสร็จ ก็ลองกดใช้ command q ดู ซึ่งตัว q จะฟ้องให้เรา log in ก่อน

ระบบจะถามเราว่าต้องการ log in ด้วย account แบบไหน สำหรับ

จากนั้นก็ให้ทำการ ใส่ credential ยืนยันตัวตนตามขั้นตอน
เมื่อ log in สำเร็จแล้ว ลองพิมพ์คำสั่ง q อีกครั้ง เราก็จะสามารถใช้ q cli ได้แล้ว

ลองทักทาย

ภาษาไทยละได้ไหม

เชื่อมต่อ MCP
MCP สำหรับที่จะมาใช้กับ AWS ได้มีหลายตัวเลย ข้อมูลเต็มๆ ตามไปดูได้ที่ลิ้งนี้ https://github.com/awslabs/mcp
สำหรับวันนี้เราจะมาเชื่อม q ให้สามารถไปใช้ MCP Server ที่ชื่อว่า AWS Knowledge MCP Server เพื่อที่เวลาเราถามเอกสารอะไรกับทาง AWS ตัวนี้จะได้ไปดูข้อมูลอ้างอิงมาตอนให้เราแบบไม่หลอนได้

ขั้นแรกก็กดลิ้ง MCP Server ที่อยากใช้งานไปดูรายละเอียดก่อนเลย https://github.com/awslabs/mcp/tree/main/src/aws-knowledge-mcp-server
พอเข้ามาเราก็จะพบกับวิธี config ให้มันใช้ได้กับ Q-CLI เป็นลักษณะของ json format ให้เรานำไปใช้งาน
{
"mcpServers": {
"aws-knowledge-mcp-server": {
"url": "https://knowledge-mcp.global.api.aws",
"type": "http"
}
}
}
ให้เราไปสร้างไฟล์ mcp.json ขึ้นมา เพื่อใส่ข้อมูล mcp server นี้ โดยให้ไปสร้างและ config ตาม path นี้ แล้วก็ใส่ข้อมูล json ของ server ลงไป
vi ~/.aws/amazonq/mcp.json

จากนั้นก็เรียก q chat ขึ้นมาอีกครั้ง จะพบว่ามันเจอ mcp ละ แล้วกำลัง initialize อยู่

รอสักพัก เราก็จะพบว่า load MCP มาสำเร็จแล้ว

ลองพิมพ์คำสั่ง /tools ดู ก็จะพบว่ามี mcp server ที่เรา config ไว้พร้อมกับ function ให้เรียกใช้งาน permission จะยังเป็น untrusted อยู่ พอตอนที่เราเรียกใช้ เดี๋ยวมันจะถามเราอีกทีว่าจะ trust ไหม

ลองใช้งาน MCP Server
ลองถามเพื่อให้โชว์ region ที่มีการอัพเดตล่าสุด ซึ่ง q ก็จะไปใช้ MCP server function aws___list_regions และมาถามให้เราทำการ trust ก่อนเรียกใช้

จากนั้นระบบก็จะเรียกไปยัง MCP server และตอบกลับข้อมูลล่าสุดเรา กลับมา ซึ่งจะเห็นได้ว่า มี region ไทย แล้วนะ 😀

