MCP Servers
Cập nhật: 03/2026
1. Lưu ý khi sử dụng MCP
- Tắt MCP khi không dùng — mỗi MCP active tốn một phần context window, quá nhiều MCP active làm giảm hiệu suất Agent và có thể bị gọi tool không cần thiết.
- Kiểm tra quyền hạn trước khi cấp — một số MCP có thể thực thi lệnh, ghi file, hoặc gọi API bên ngoài.
- Một số MCP yêu cầu API key — cần cấu hình biến môi trường trước khi sử dụng (ví dụ: GitHub token, Stripe key).
- Ưu tiên Plugin nếu có — Plugin là một bundle hoàn chỉnh gồm rules, skills, subagents, hooks, commands và MCP servers được đóng gói sẵn bởi Provider; tích hợp sâu hơn và dễ dùng hơn so với chỉ cài MCP đơn lẻ.
- MCP có 2 mode:
stdio(local) vàSSE/HTTP(remote) — hầu hết các MCP phổ biến hỗ trợ cả hai.
| Tiêu chí | HTTP | SSE | stdio |
|---|---|---|---|
| Môi trường | Qua mạng (Network) | Qua mạng (Network) | Cục bộ (Local/OS) |
| Mô hình | Request / Response | Client mở kết nối, Server stream | Stream 2 chiều (stdin/stdout) |
| Định dạng dữ liệu | Đa dạng (JSON, HTML, File...) | Text (Event Stream format) | Byte/Text stream (thường bọc JSONRPC) |
| Độ trễ (Latency) | Cao hơn (do overhead mạng) | Thấp (kết nối mở sẵn) | Rất thấp (Giao tiếp ở tầng bộ nhớ/OS) |
| Bảo mật | Cần HTTPS, Token, Auth | Cần HTTPS, Token, Auth | Kế thừa quyền hạn của Process/User cục bộ |
2. Các MCP phổ biến (Antigravity, Cursor và Claude Code)
2.1 Version Control & Project Management
| Name | Description |
|---|---|
| GitHub | Version control and collaborative development platform. |
| GitLab | DevSecOps platform for code, CI/CD, and security. |
| Linear (Plugin) | Issue tracking and project management for development teams. |
| Atlassian (Plugin) | Project management and collaboration tools including Jira and Confluence. |
2.2 Deployment & Hosting
| Name | Description |
|---|---|
| Heroku | Manage Heroku apps and resources. |
| Netlify | Build and deploy web projects. |
| Vercel (Plugin) | Manage projects and deployments on Vercel. |
| Cloudflare | Cloudflare documentation and reference. |
2.3 Backend & BaaS
| Name | Description |
|---|---|
| Firebase | Manage Firebase projects, Auth, Firestore, and more. |
| Supabase | Create and manage Supabase projects. |
| Clerk (Plugin) | Add authentication, organizations, and billing. |
2.4 Databases
| Name | Description |
|---|---|
| MongoDB | Manage MongoDB data and deployments. |
| Neon | Manage Neon Postgres. |
| Redis | Manage and search data in Redis using natural language — supports caching, session, rate limiting, and RAG. |
| Pinecone | Manage vector indexes, upsert and query records, and search Pinecone documentation. |
| DBHub | Universal database connector for MySQL, PostgreSQL, SQL Server. |
2.5 Developer Tools
| Name | Description |
|---|---|
| Prisma (Plugin) | Manage Prisma Postgres databases, including creating new instances and running schema migrations. |
| Context7 | Up-to-date code documentation. |
| Astro Docs | This server provides up-to-date access to the official Astro documentation. |
| Angular | Angular framework documentation and examples. |
| Playwright | End-to-end browser testing. |
| Postman | API collaboration and testing. |
| shadcn/ui | Use the shadcn/ui MCP server to browse, search, and install components from registries. |
| TestDino | Connect AI tools to testing platform. |
| Stack Overflow | Access trusted technical Q&A from Stack Overflow. |
| Socket | Analyze and secure dependencies. |
2.6 Design & Collaboration
| Name | Description |
|---|---|
| Figma (Plugin) | Design and collaboration platform for teams. |
| Notion (Plugin) | All-in-one workspace for notes, docs, and project management. |
| Canva | Search, create, autofill, and export Canva designs. |
| Gamma | Create presentations, docs, socials, and sites with AI. |
| Miro | Access and create new content on Miro boards. |
2.7 Payments
| Name | Description |
|---|---|
| Stripe (Plugin) | Payment processing APIs. |
| PayPal | Payment APIs. |
2.8 AI & Search
| Name | Description |
|---|---|
| Perplexity | AI-powered web search and research. |
| Tavily | Build AI applications with real-time web data using Tavily's search, extract, crawl, and research APIs. |
2.9 Automation
| Name | Description |
|---|---|
| n8n | Access and run your n8n workflows. |
| Airflow | Manage Apache Airflow DAGs, monitor runs, debug failures, and access Airflow's REST API. |
2.10 Monitoring & Observability
| Name | Description |
|---|---|
| Sentry (Plugin) | Error tracking and performance monitoring. |
| Arize | LLM tracing and instrumentation guidance. |
| SonarQube | Analyze code with SonarQube. |
| Jam | Screen recorder with auto context for debugging. |
| Checkmarx | Application security testing and vulnerability scanning. |
3. Demo
3.1 Kiến thức áp dụng
- SubAgents (viết backend và frontend cùng lúc), Command/Workflows (viết test case, unit test, đổi trạng thái task), MCP (SonarQube, Google MCP), Prompt Template.
- Agent Skills, Plugin, Hooks sẽ được áp dụng ở các buổi chia sẻ tiếp theo.
3.2 Kịch bản
- Step 1: BA viết nhiệm vụ lên Google Sheet dưới dạng Functional Requirements (Yêu cầu chức năng)
| Feature ID | Feature Name | User Story | Acceptance Criteria (AC) | Business Logic / Rules | Status |
|---|---|---|---|---|---|
| FEAT_001 | Quản lý Agent Skills | Là developer, tôi muốn tạo và quản lý Agent Skills để đóng gói hướng dẫn, script và tài nguyên tham khảo thành một capability tái sử dụng cho AI agent. | 1. CRUD đầy đủ: tạo, xem, sửa, xóa một skill. 2. instruction hiển thị dạng markdown editor, lưu dạng string.3. scripts cho phép nhập nội dung file (text input) và chọn loại file (py hoặc sh); có thể thêm/xóa nhiều script.4. resources lưu từng item dạng markdown string, load on-demand.5. Validate và thông báo lỗi rõ ràng khi vi phạm rule. | - name: chỉ chứa lowercase, số, dấu -; tối đa 64 ký tự; bắt buộc.- description: bắt buộc, tối đa 1024 ký tự; dùng để agent tự detect khi nào trigger skill.- instruction (string): nội dung body của SKILL.md; bắt buộc; khuyến nghị < 5000 tokens.- scripts (input): mỗi script gồm file content (text input) và file type (py hoặc sh); optional; lưu vào thư mục scripts/; agent chạy qua bash, chỉ nhận output — không load code vào context.- resources (markdown string): tài liệu tham khảo (schema, API doc, template); optional; mỗi resource là một file riêng, chỉ load khi được reference trong instruction. | TODO |
Hướng dẫn:
- Input (BA nhập): Feature Name, Business Logic / Rules.
- Output (AI sinh): User Story, Acceptance Criteria (AC).
- Status: Sử dụng Dropdown list đúng chuẩn (
TODO,IN_PROGRESS_BE,API_READY,IN_PROGRESS_FE,IN_REVIEW,QA_VERIFIED,DONE).
- Step 2: Dev đọc Google Sheet sử dụng Prompt Template để implement features.
<role>
Bạn là một [ROLE] chuyên về [TECH_STACK]. Nhiệm vụ của bạn là lên kế hoạch và implement hoàn chỉnh một feature theo đúng specification được cung cấp.
</role>
<action>
1. Đọc kỹ toàn bộ thông tin feature trong <context>.
2. Lập kế hoạch implementation: xác định các file cần tạo/sửa, API endpoints, schema, UI components.
3. Đối với agent đang viết backend code, cần đọc các API khác để học patterns và đảm bảo tính nhất quán.
4. Đối với agent đang viết frontend code, cần đọc các API hooks và UI components khác để học patterns và đảm bảo tính nhất quán.
5. Đảm bảo toàn bộ Acceptance Criteria đều được đáp ứng.
6. Viết unit test cho các business logic quan trọng.
</action>
<context>
<feature_id>[FEATURE_ID]</feature_id>
<feature_name>[FEATURE_NAME]</feature_name>
<user_story>[USER_STORY]</user_story>
<business_logic>[BUSINESS_LOGIC]</business_logic>
</context>
<expected_output>
- Toàn bộ code backend + frontend đã được implement, chạy đúng yêu cầu, đồng bộ cách tổ chức với hệ thống hiện tại.
- Tái sử dụng các component, utils, ... có sẵn nếu có thể.
- Mỗi Acceptance Criteria có thể verify trực tiếp trên UI hoặc qua API.
- Unit test pass.
- Sử dụng SubAgents để implement backend (API, data model, validation), frontend (UI, form, state) song song dựa trên một kế hoạch chung giúp tăng tốc độ phát triển và separate context.
<acceptance_criteria>[Acceptance_Criteria]</acceptance_criteria>
</expected_output>
<role>
Bạn là một Senior Full-Stack Software Engineer chuyên về React và Python. Nhiệm vụ của bạn là lên kế hoạch và implement hoàn chỉnh một feature theo đúng specification được cung cấp.
</role>
<action>
1. Đọc kỹ toàn bộ thông tin feature trong <context>.
2. Lập kế hoạch implementation: xác định các file cần tạo/sửa, API endpoints, schema, UI components.
3. Đối với agent đang viết backend code, cần đọc các API khác để học patterns và đảm bảo tính nhất quán.
4. Đối với agent đang viết frontend code, cần đọc các API hooks và UI components khác để học patterns và đảm bảo tính nhất quán.
5. Đảm bảo toàn bộ Acceptance Criteria đều được đáp ứng.
6. Viết unit test cho các business logic quan trọng.
</action>
<context>
<feature_id>FEAT_001</feature_id>
<feature_name>Quản lý Agent Skills</feature_name>
<user_story>Là developer, tôi muốn tạo và quản lý Agent Skills để đóng gói hướng dẫn, script và tài nguyên tham khảo thành một capability tái sử dụng cho AI agent.</user_story>
<business_logic>
- `name`: chỉ chứa lowercase, số, dấu `-`; tối đa 64 ký tự; bắt buộc.
- `description`: bắt buộc, tối đa 1024 ký tự; dùng để agent tự detect khi nào trigger skill.
- `instruction` (string): nội dung body của SKILL.md; bắt buộc; khuyến nghị < 5000 tokens.
- `scripts` (input): mỗi script gồm file content (text input) và file type (py hoặc sh); optional; lưu vào thư mục `scripts/`; agent chạy qua bash, chỉ nhận output — không load code vào context.
- `resources` (markdown string): tài liệu tham khảo (schema, API doc, template); optional; mỗi resource là một file riêng, chỉ load khi được reference trong instruction.
</business_logic>
</context>
<expected_output>
- Toàn bộ code backend + frontend đã được implement, chạy đúng yêu cầu, đồng bộ cách tổ chức với hệ thống hiện tại.
- Tái sử dụng các component, utils, ... có sẵn nếu có thể.
- Mỗi Acceptance Criteria có thể verify trực tiếp trên UI hoặc qua API.
- Unit test pass.
- Sử dụng SubAgents để implement backend (API, data model, validation), frontend (UI, form, state) song song dựa trên một kế hoạch chung giúp tăng tốc độ phát triển và separate context.
<acceptance_criteria>
1. CRUD đầy đủ: tạo, xem, sửa, xóa một skill.
2. `instruction` hiển thị dạng markdown editor, lưu dạng string.
3. `scripts` cho phép nhập nội dung file (text input) và chọn loại file (py hoặc sh); có thể thêm/xóa nhiều script.
4. `resources` lưu từng item dạng markdown string, load on-demand.
5. Validate và thông báo lỗi rõ ràng khi vi phạm rule.
</acceptance_criteria>
</expected_output>
- Step 3: Viết Test Case, Unit Test, Tự động Test, Commit & Status Update.
Sử dụng Command/Workflow để viết test case, viết unit test, chạy test, báo cáo.
# Test and Report
## Overview
Sau khi implement feature: đề xuất test cases, viết unit test, chạy test và báo cáo.
## Steps
1. **Liệt kê test cases**
- Từ mô tả feature và code, liệt kê 3–7 test cases (mô tả, input, expected, loại).
- Trình bày dạng danh sách đánh số.
2. **Viết unit test**
- Viết test theo các test cases, đúng cấu trúc project (pytest / Jest-Vitest).
- Đặt tên test rõ ràng, 1 test case → ít nhất 1 test function.
3. **Chạy test**
- Chạy full test suite trong terminal (pytest / npm test).
- Ghi lại pass/fail và log lỗi; nếu có coverage HTML thì mở bằng built-in browser.
4. **Báo cáo**
- Tóm tắt: số test cases, file test đã tạo/sửa, kết quả chạy test, kết quả test UI trên browser, Feature ID đã cập nhật trạng thái.
Sử dụng Command/Workflow để commit và cập nhật Google Sheet thành IN_REVIEW đối với FEAT_001.
## Commit and Update Status
- **Input**: `feature_id` (ví dụ `FEAT_001`).
- **Action**:
- Commit code liên quan với commit message dễ hiểu, gắn Feature ID.
- Dùng MCP tìm Feature ID trong spreadsheet **"Demo MCP"** và cập nhật cột STATUS của dòng đó thành `"IN REVIEW"`.
- Trả về tóm tắt: Feature ID, commit đã tạo, dòng/cột đã được cập nhật trên sheet.
- Step 4: Sử dụng Github actions để tự động quét SonarQube khi commit code, Dev kết nối SonarQube để lấy phân tích code và fix.
<role>
Bạn là một Senior Full-Stack Software Engineer chuyên về React và Python, am hiểu cách sử dụng SonarQube MCP để phân tích chất lượng code.
</role>
<action>
- Sử dụng SonarQube MCP để fetch toàn bộ issues thuộc loại [BUG_TYPE].
- Phân tích nguyên nhân gốc rễ và đề xuất 1–2 hướng xử lý khả thi cho từng nhóm bug.
- Lựa chọn và triển khai phương án tối ưu, đảm bảo hành vi và logic nghiệp vụ vẫn giữ nguyên như ban đầu.
</action>
<context>
- Đọc kĩ source code hiện tại, ưu tiên tái sử dụng các pattern, convention và abstraction đã có trong codebase.
</context>
<expected_output>
- Các issues thuộc loại [BUG_TYPE] được xử lý hoàn toàn, build và test liên quan đều pass.
- Logic nghiệp vụ và hành vi hệ thống không thay đổi, chỉ cải thiện về chất lượng và độ an toàn của code.
</expected_output>