# Học và ứng dụng cùng với agent bạn đang dùng

Bạn không cần học tuần tự theo cách truyền thống. Ngay trong cuộc trò chuyện, agent tìm và đọc bài, dựng khóa học dành riêng cho bạn, áp bài học và skill 200Lab vào dự án bạn đang làm, rồi trình bày kết quả thành trang HTML, flash card hay slide.

[Kết nối agent của bạn](/mcp#cai-dat). Bạn sẽ xác nhận bằng tài khoản 200Lab ngay trong agent, không cần cài thêm gì trên web.

## Agent tìm bài và đọc cho bạn

Minh họa:

- **Bạn:** mình muốn hiểu cách agent gọi tool, nên bắt đầu từ bài nào?
- Agent gọi `search` (query: "agent gọi tool" · types: lesson)
- Kết quả:
  - Agent Loop: làm, quan sát, rồi mới đi tiếp (Agent Harness Foundations · Bài 7, 15 phút đọc, Owned)
  - Từ tool request tới action thực tế (Agent Harness Foundations · Bài 8, 12 phút đọc, Owned)
  - Bọc một API nội bộ thành tool rồi chạy thử một vòng agent (Agent Harness Foundations · Lab, Lab · 45 phút · kèm kit Go, Owned)
  - Việc nào thật sự cần giao cho LLM? (Xây dựng tính năng LLM có phạm vi rõ ràng · Bài 2, 16 phút đọc, Free)
  - Agent gọi sai tool: dựng lại đường đi của run và tìm chỗ hỏng (Agent Harness Foundations · Challenge, Challenge · mentor chấm, Owned)
- Agent gọi `get` (entity: lesson · courseId · slug: p1-v3-05-agent-loop)
- **Agent:** Bắt đầu từ bài **Agent Loop** là hợp nhất. Ý chính của bài:
  - Mỗi vòng, model chọn một bước để làm, có khi là gọi một tool.
  - Harness của bạn chạy bước đó rồi đưa kết quả quan sát được lại cho model.
  - Chỉ khi quan sát xong, agent mới quyết định đi tiếp hay dừng.
- **Agent:** Đọc xong bài này thì qua bài **Từ tool request tới action thực tế**, rồi làm lab bọc API thành tool, mình đi cùng bạn ở đó.
- Nguồn: khóa học "Agent Harness Foundations" · bài "Agent Loop: làm, quan sát, rồi mới đi tiếp" · https://learn.200lab.io/courses/agent-harness-foundations/lessons/p1-v3-05-agent-loop · Cấp cho [Tên học viên] · không phân phối lại.

## AI Tutor dựng khóa học riêng cho bạn

Bạn nói mục tiêu, agent hỏi lại vài câu rồi xếp một lộ trình từ chính các bài 200Lab. Chỗ nào 200Lab chưa có bài, agent ghi rõ là tự soạn hay tài liệu ngoài, không trộn lẫn.

1. **Trả lời ba câu hỏi.** Agent đọc quy tắc `ai_tutor` rồi hỏi từng câu một: bạn muốn làm được gì, bạn đã biết gì, mỗi tuần bạn học được bao nhiêu giờ.
2. **Agent lấy bản đồ kiến thức.** Một lần gọi `ai_tutor_recommend` trả về các khóa và bài 200Lab khớp với bạn, kèm những chủ đề catalog chưa có.
3. **Lộ trình xếp theo giờ của bạn.** Kiến thức nền đi trước. Khóa bạn chưa có thì bắt đầu bằng bài học thử. Bài đọc, lab, challenge hay kit đều có chỗ; mỗi bước gắn nhãn 200Lab, tự soạn hoặc ngoài, lưu thành file markdown trong máy bạn.
4. **Học từng bước ngay trong chat.** Agent đọc bài bằng `get` và giảng theo đúng project của bạn. Bài có kit thì agent lấy link bằng `get_artifact_download_url`, tải về và chạy thử cùng bạn. Hỏi tiến độ thì agent mở `learning_dashboard`: chuỗi ngày học, mục tiêu tuần và bài nên học tiếp. Đọc xong, bạn bấm hoàn thành bài trên app học.

Minh họa:

- **Bạn:** Dựng giúp mình một lộ trình để tự viết agent bằng Go.
- Agent gọi `ai_tutor`
- **Agent:** 1/3 Bạn muốn làm được gì sau khi học xong?
- **Bạn:** Một agent Go gọi được API nội bộ của công ty.
- **Agent:** 2/3 Hiện bạn đã quen với ngôn ngữ hay công cụ nào, ở mức nào?
- **Bạn:** Go cơ bản, đã viết REST API, chưa đụng LLM.
- **Agent:** 3/3 Mỗi tuần bạn dành được khoảng bao nhiêu giờ để học?
- **Bạn:** Khoảng 6 giờ.
- Agent gọi `ai_tutor_recommend` (goal · queries · known · weeklyHours: 6)
- Lộ trình tuần 1 (`roadmap.md`), đã xếp 6 giờ trên 6 giờ/tuần:
  - [200Lab] Học thử: Trước khi bắt đầu build Agent, 1 giờ (Agent Harness Foundations · bài free mở đầu khóa)
  - [200Lab] Agent Loop và Từ tool request tới action thực tế, 1,5 giờ (Agent Harness Foundations · Bài 7, Bài 8)
  - [200Lab] Lab: Bọc một API nội bộ thành tool rồi chạy thử một vòng agent, 1 giờ (Agent Harness Foundations · Lab · kèm kit Go)
  - [200Lab] Challenge: Agent gọi sai tool: dựng lại đường đi của run và tìm chỗ hỏng, 0,5 giờ (Agent Harness Foundations · Challenge · mentor chấm)
  - [tự soạn] Viết agent loop bằng Go cho API của công ty bạn, 1 giờ (Agent soạn riêng theo repo của bạn)
  - [ngoài] Đặc tả MCP: phần tools và transports, 1 giờ (modelcontextprotocol.io)
- **Agent:** Tuần 1 có 2 bài đọc, 1 lab và 1 challenge từ 200Lab, 1 phần tự soạn và 1 tài liệu ngoài, vừa đủ 6 giờ. Mình đã lưu vào `roadmap.md` trong thư mục của bạn. Mình bắt đầu bằng bài học thử nhé?

## Mang bài 200Lab vào dự án bạn đang làm

Bạn nêu bài toán đang vướng trong dự án, agent tìm các bài 200Lab giải đúng chuyện đó rồi áp thẳng vào code của bạn. Mỗi câu trả lời ghi rõ nó lấy từ bài nào.

1. **Nêu bài toán đang vướng.** Agent đọc quy tắc `ai_tutor`, cần thì hỏi lại bạn tối đa một câu về stack hoặc bối cảnh.
2. **Agent tìm đúng bài.** Một lần gọi `ai_tutor_recommend` với chính bài toán của bạn trả về các bài 200Lab khớp nhất. Bài trong khóa bạn chưa có thì agent nói rõ và đưa link khóa.
3. **Áp vào code của bạn.** Agent đọc trọn bài bằng `get` rồi áp vào code bạn đang mở. Nguồn ghi rõ trên từng câu trả lời.

Minh họa:

- **Bạn:** Service thanh toán của mình đang trừ tiền khách hai lần khi retry sau timeout. 200Lab có bài nào xử lý đúng chuyện này không?
- Agent gọi `ai_tutor`
- Agent gọi `ai_tutor_recommend` (goal: "retry sau timeout trừ tiền hai lần" · queries: "idempotency khi retry thanh toán" · build: service thanh toán Go)
- Kết quả:
  - Idempotency key giúp retry mà không trừ tiền khách hai lần (Timeout, retry và crash · Bài 5, 21 phút đọc, Owned)
  - Ghi database và gọi service bên ngoài không nằm chung một transaction (Timeout, retry và crash · Bài 7, 20 phút đọc · kèm kit, Owned)
  - Giữ đúng trạng thái thanh toán khi cổng timeout, webhook bị gửi trùng hoặc đến sớm (Timeout, retry và crash · Bài 15, 22 phút đọc · kèm kit, Owned)
  - Sau timeout hay crash, lệnh đã gửi sang service bên ngoài chạy hay chưa? (Timeout, retry và crash · Bài mở đầu, 13 phút đọc, Free)
- Agent gọi `get` (entity: lesson · courseId · slug: sd2-05)
- **Agent:** Chỗ hỏng nằm ở `chargeCustomer`: khi `http.Client` timeout, code gọi lại nguyên lệnh cũ nên cổng nhận hai lệnh khác nhau. Theo bài **Idempotency key giúp retry mà không trừ tiền khách hai lần**:
  - Sinh idempotency key từ `orderId` lúc tạo lệnh, gửi kèm header ở mọi lần gọi.
  - Lưu key và kết quả vào bảng `payment_attempts` trước khi gọi cổng; retry chỉ chạy khi key chưa có kết quả.
  - Timeout không có nghĩa là thất bại: hỏi lại trạng thái bằng key trước khi retry, bài 12 nói kỹ phần này.
- **Agent:** Mình viết patch cho `charge.go` theo đúng bài này nhé? Xong rồi đọc tiếp bài **Ghi database và gọi service bên ngoài không nằm chung một transaction** để email xác nhận không bị sót.
- Nguồn: khóa học "Xử lý timeout, retry và crash - idempotency, outbox, lease và reconciliation" · bài "Idempotency key giúp retry mà không trừ tiền khách hai lần" · https://learn.200lab.io/courses/xu-ly-timeout-retry-va-crash-idempotency-outbox-lease-va-reconciliation/lessons/sd2-05 · Cấp cho [Tên học viên] · không phân phối lại.

## Skill 200Lab cho việc bạn đang làm

Khi bạn thiết kế, build, review, debug hay harden một phần trong dự án, agent tìm skill 200Lab cho đúng loại việc đó và làm theo cách 200Lab đánh giá: tiêu chí nào phải đạt, kiểm chứng gì trước khi coi là xong, bài học nào làm căn cứ. Xong việc, agent trình bày kết quả theo cách bạn chọn.

1. **Nêu việc bạn đang làm.** Thiết kế, build, review, debug hay harden một phần trong dự án: harness cho agent, kiến trúc hệ thống hay một tính năng, code backend trước các ca timeout và retry, một bug chưa rõ nguyên nhân, hay luyện một vòng phỏng vấn kỹ thuật.
2. **Agent tìm skill 200Lab.** `skill_find` tìm skill 200Lab cho đúng loại việc đó, `skill_get` đọc cách 200Lab đánh giá: tiêu chí nào phải đạt, kiểm chứng gì trước khi coi là xong.
3. **Làm theo skill trên code của bạn.** Agent tìm bài liên quan bằng `ai_tutor_recommend`, đọc bằng `get`, rồi chấm từng tiêu chí với bằng chứng trong code của bạn và dẫn tên bài học làm căn cứ.
4. **Chọn cách trình bày.** Kết quả dài thì agent hỏi bạn muốn xem dạng nào: trang HTML tương tác, slide để trình bày, flash card ôn bài hay một trang diễn hoạt cách một cơ chế chạy. Trang review lọc được theo trạng thái, mở từng mục là thấy bằng chứng, cách sửa và bài học 200Lab làm căn cứ. File nằm trong thư mục của bạn, hoặc thành artifact ngay trong chat.

Minh họa:

- **Bạn:** Review giúp mình harness của agent CSKH trong repo này theo khóa Agent Harness Foundations, trước khi lên production.
- Agent gọi `ai_tutor`
- Agent gọi `skill_find` (need: "review harness agent CSKH trước khi lên production")
- Agent gọi `skill_get` (slug: agent-harness)
- Agent gọi `ai_tutor_recommend` (goal · queries · skill: agent-harness)
- Kết quả:
  - Hợp lệ chưa phải là giấy phép (Agent Harness Foundations · Bài 13, 16 phút đọc, Owned)
  - Có Guardrails rồi, action đã thật sự bị chặn chưa? (Agent Harness Foundations · Bài 14, 9 phút đọc, Owned)
  - Được phép chạy chưa có nghĩa là được chạm vào mọi thứ (Agent Harness Foundations · Bài 15, 13 phút đọc, Owned)
  - Demo chạy đúng rồi, nhưng Agent đã ổn định chưa? (Agent Harness Foundations · Bài 23, 15 phút đọc, Owned)
- Agent gọi `get` (entity: lesson · courseId · slug: p1-v3-09-validation-authorization-gates)
- **Agent:** Theo skill **Agent harness** của 200Lab, mình đối chiếu repo của bạn từng tiêu chí:
  - **Đạt**: mỗi vòng lặp đều đưa kết quả tool lại cho model rồi mới đi tiếp (`agent/loop.go`).
  - **Chưa đạt**: tool `refund_order` chạy ngay khi model yêu cầu, chưa kiểm tra quyền trước khi hoàn tiền (`tools/refund.go`).
  - **Chưa đạt**: chưa có bộ eval chạy lại các run lỗi, nên chưa biết agent đã ổn định chưa.
- **Agent:** Nên sửa `refund_order` trước, bài **Hợp lệ chưa phải là giấy phép** nói đúng chỗ này.
- Nguồn: khóa học "Agent Harness Foundations" · bài "Hợp lệ chưa phải là giấy phép" · https://learn.200lab.io/courses/agent-harness-foundations/lessons/p1-v3-09-validation-authorization-gates · Cấp cho [Tên học viên] · không phân phối lại.
- **Agent hỏi:** Báo cáo này khá dài, bạn muốn mình trình bày dạng nào?
  1. Trang HTML tương tác: Lọc theo trạng thái, mở từng mục xem bằng chứng
  2. Slide để trình bày với team: Mỗi tiêu chí một slide, kèm cách sửa
  3. Flash card ôn lại bài: Ôn các bài học làm căn cứ cho từng tiêu chí
  4. Giữ trong chat: Không tạo file
- **Bạn:** Trang HTML tương tác
- Agent gọi `skill_get` (slug: html-presentation · part: review-report)
- Agent ghi file `docs/200lab/harness-review.html`
- **Agent:** Mình đã lưu `docs/200lab/harness-review.html` trong thư mục của bạn, mở bằng trình duyệt là xem được: lọc theo trạng thái, mở từng mục để xem bằng chứng, cách sửa và bài học 200Lab.
- Trang `docs/200lab/harness-review.html` (Review harness theo Agent Harness Foundations): Đạt 1 · Chưa đạt 2, lọc Tất cả · Chưa đạt · Đạt; mỗi mục mở ra bằng chứng, cách sửa và bài học làm căn cứ:
  - [Critical] Chưa đạt: `refund_order` hoàn tiền khi chưa kiểm tra quyền (`tools/refund.go`). Tool gọi API hoàn tiền ngay khi model yêu cầu, không đối chiếu quyền của phiên. Cách sửa: Kiểm tra quyền của phiên trong code trước khi hoàn tiền. Bài học 200Lab: "Hợp lệ chưa phải là giấy phép".
  - [High] Chưa đạt: Chưa có bộ eval chạy lại các run lỗi. Repo chưa lưu lại run lỗi nào để chạy lại sau mỗi lần sửa prompt hay tool. Cách sửa: Gom các run lỗi thành bộ eval và chạy lại trước mỗi lần lên production. Bài học 200Lab: "Demo chạy đúng rồi, nhưng Agent đã ổn định chưa?".
  - [Đạt] Kết quả tool quay lại model trước bước kế tiếp (`agent/loop.go`)
  - Nguồn: 200Lab AI Tutor
  - 200Lab cung cấp kiến thức và hướng dẫn; việc áp dụng vào dự án cụ thể do bạn tự quyết định và chịu trách nhiệm.

### Một vài skill 200Lab

- **Agent harness**: Thiết kế, build hoặc review harness cho AI agent: vòng lặp, tool, guardrail, state, eval và trace.
- **System design**: Thiết kế và scale kiến trúc cho hệ thống hay một tính năng: ước lượng tải, chọn database, queue, cache, khi nào cần shard.
- **Backend reliability review**: Rà code backend đang chạy trước các ca timeout, retry, xử lý trùng, race, khóa database và crash giữa chừng.
- **Systematic debugging**: Tìm và chứng minh nguyên nhân bug, test fail hay lỗi lúc có lúc không, rồi sửa tận gốc kèm test hồi quy.
- **Mock interview**: Phỏng vấn thử kỹ thuật từng vòng, hỏi vặn như người phỏng vấn thật và chấm theo rubric.
- **Diagram Director**: Vẽ diagram system design có chuyển động, mở bằng trình duyệt là xem được.

Đây mới là vài skill tiêu biểu. Muốn xem đủ, bạn hỏi agent "200Lab có những skill nào?", agent liệt kê từng skill kèm một dòng mô tả.

## Diagram system design biết chuyển động

Skill Diagram Director giúp agent vẽ thiết kế của bạn thành một file HTML/SVG tự chạy: gói tin đi trên đường, queue đầy dần, chỗ nghẽn đổi màu. Bạn không cần cài gì thêm, mở file bằng trình duyệt là xem được.

![Diagram có chuyển động: hệ thống scale từ monolith lên 500K người dùng đồng thời qua năm kiến trúc, từ monolith, scale-out, tách đọc ghi, microservices tới shard phần ghi.](/images/mcp/diagram-director-scaling-to-500k-ccu.svg)

Ví dụ do Diagram Director vẽ: một hệ thống đi từ 0 lên 500K người dùng đồng thời qua năm kiến trúc, nấc nào nghẽn thì nấc sau sửa đúng chỗ đó.

### Agent vẽ được

- Vòng đời một request, từ trình duyệt tới database rồi quay lại
- Pipeline event-driven: publish, fan-out, retry, dead letter queue
- Câu chuyện scale qua từng nấc kiến trúc
- So sánh hai cách thiết kế cho cùng một bài toán

### Cách agent làm

1. **Giải bài toán trước.** Agent hỏi những câu làm đổi kiến trúc (tải, đảm bảo, ràng buộc) và chốt thiết kế với bạn trước khi vẽ.
2. **Lên storyboard.** Câu chuyện chia thành từng cảnh, mỗi cảnh một ý; chú thích nào cũng phải khớp với thiết kế đã chốt.
3. **Vẽ.** Agent dựng node, mũi tên, nhãn và chuyển động trong một file duy nhất.
4. **Kiểm tra trước khi giao.** Agent mở file, xem lại từng cảnh và soát mọi con số, mọi nhãn với thiết kế trước khi đưa bạn.

### Kit miễn phí cho agent có terminal

Với Claude Code, Codex hay Cursor, agent tải kit `diagram-director-kit` miễn phí qua 200Lab MCP rồi chạy ngay trên máy bạn, chỉ cần Python 3. Trong app chat như Claude App hay ChatGPT, agent làm theo phương pháp gọn của skill, không cần kit. [Kết nối agent để dùng kit](/mcp#cai-dat)

## Khóa học không đổi, cách học đã đổi

200Lab là đơn vị tiên phong đưa cách học AI-native này vào khóa học lập trình: toàn bộ nội dung mở cho agent của bạn qua MCP. Nội dung 200Lab do các agents và mentors giàu kinh nghiệm cùng biên soạn và kiểm duyệt. Khác biệt là bạn không còn phải tự xoay giữa video, tab trình duyệt và nhóm hỏi đáp: agent bạn đang dùng đọc trọn bài, giảng theo project của bạn và dựng lộ trình cho đúng một người.

| Tiêu chí | Học truyền thống | Nền tảng khóa học phổ thông | 200Lab AI-native |
| --- | --- | --- | --- |
| Cách học | Xem video theo thứ tự có sẵn | Xem video, thỉnh thoảng có chatbot trả lời chung chung trong tab web | Agent đọc trọn bài rồi giảng theo project bạn đang làm |
| Lộ trình | Một lộ trình cho tất cả | Gợi ý theo catalog, không biết bạn là ai | Dựng theo mục tiêu, nền tảng và số giờ bạn có; phần thiếu agent tự soạn hoặc tìm ngoài |
| Khi vướng | Đăng hỏi trong nhóm, chờ trả lời | Chatbot không thấy code của bạn | Hỏi ngay trong agent, agent đã có bài học lẫn code của bạn |
| Nơi học | Mở tab khóa học, rời khỏi việc đang làm | Vẫn là tab web riêng | Ngay trong Claude, Codex hoặc ChatGPT bạn đang mở |
| Tài liệu | PDF, slide tải về rồi quên | Tải về rồi quên | Bài học, kit và link tải lấy qua agent, nguồn ghi rõ trên từng bài |

Bạn vẫn học bài của 200Lab. Chỉ là giờ có một gia sư ngồi cạnh, biết bạn đang làm gì.

## Kết nối trong vài phút

Cả bốn cách đều xác nhận bằng OAuth: client mở trình duyệt, bạn duyệt bằng tài khoản 200Lab. Bạn không phải dán mật khẩu nào vào agent.

Địa chỉ server: `https://mcp.200lab.io/mcp/learner`

### Claude App

Thêm trên claude.ai hoặc Claude Desktop.

1. Mở Settings, vào mục Connectors.
2. Chọn Add custom connector.
3. Dán địa chỉ này vào ô URL, đặt tên tuỳ ý:

   ```
   https://mcp.200lab.io/mcp/learner
   ```
4. Đăng nhập và duyệt quyền bằng tài khoản 200Lab của bạn.

### Claude Code

Chạy trong terminal của máy bạn.

1. Thêm server:

   ```
   claude mcp add --transport http 200lab-ai-tutor \
     https://mcp.200lab.io/mcp/learner
   ```
2. Mở Claude Code, gõ `/mcp`, chọn 200lab-ai-tutor rồi duyệt đăng nhập trên trình duyệt vừa mở.

### Codex CLI

Chạy trong terminal của máy bạn.

1. Thêm server:

   ```
   codex mcp add 200lab-ai-tutor \
     --url https://mcp.200lab.io/mcp/learner
   ```
2. Đăng nhập, rồi duyệt trên trình duyệt vừa mở:

   ```
   codex mcp login 200lab-ai-tutor
   ```

### ChatGPT App

Codex trong ứng dụng ChatGPT trên máy bạn.

1. Mở Settings, vào mục MCP servers, chọn Add server.
2. Đặt tên `200lab-ai-tutor`, chọn Streamable HTTP rồi dán địa chỉ này vào ô URL:

   ```
   https://mcp.200lab.io/mcp/learner
   ```
3. Bấm Save, rồi chọn Restart.
4. Chọn Authenticate và đăng nhập bằng tài khoản 200Lab của bạn.

### Sau khi bạn cho phép, agent được

- Tìm khóa học, lộ trình, bài viết và bài học
- Đọc trọn bài trong khóa bạn sở hữu và các bài free
- Tìm và đọc skill 200Lab cho việc bạn đang làm
- Xem tiến độ học và chứng chỉ của bạn, lấy link tải kit bạn sở hữu

Agent không hoàn thành bài học thay bạn, không mua khóa học, không làm quiz và không đổi thông tin tài khoản của bạn.

## Nguồn bài học

Mỗi bài agent đọc đều mang theo nguồn 200Lab và ghi rõ bài đó được cấp cho bạn.

> Nguồn: khóa học "Agent Harness Foundations" · bài "Agent Loop: làm, quan sát, rồi mới đi tiếp" · https://learn.200lab.io/courses/agent-harness-foundations/lessons/p1-v3-05-agent-loop · Cấp cho [Tên học viên] · không phân phối lại.

## Kết nối agent của bạn với 200Lab

Thêm server, xác nhận một lần, rồi hỏi agent bài tiếp theo bạn nên học, nêu bài toán bạn đang vướng hoặc việc bạn đang làm trong dự án. [Kết nối agent của bạn](/mcp#cai-dat). Bạn sẽ xác nhận bằng tài khoản 200Lab ngay trong agent, không cần cài thêm gì trên web.

## Câu hỏi thường gặp

### 200Lab MCP có tốn phí không?

Không. Bạn chỉ cần một tài khoản 200Lab. Agent đọc được đúng những gì tài khoản đó đọc được.

### Agent có đọc được bài trong khóa mình chưa mua không?

Không. Agent đọc được bài free, trang giới thiệu khóa học và bài blog công khai. Bài trong khóa chỉ mở khi tài khoản bạn sở hữu khóa đó, giống hệt khi bạn học trên web.

### Mình đã có khóa rồi, agent giúp mình học thế nào?

Bạn nêu khóa hoặc bài đang học, agent đọc bài cùng bạn và giải thích bằng chính code của bạn. Bài có kit thì agent lấy link tải, cùng bạn chạy thử và làm bài tập. Hỏi tiến độ thì agent cho bạn xem chuỗi ngày học, mục tiêu tuần và bài nên học tiếp. Quiz và việc hoàn thành bài thì bạn làm trên app học của 200Lab.

### Skill 200Lab là gì?

Là hướng dẫn 200Lab viết cho agent về một loại việc: thiết kế hay review harness cho agent, thiết kế và scale kiến trúc, rà backend trước các ca timeout và retry, tìm nguyên nhân bug, phỏng vấn thử kỹ thuật hay vẽ diagram system design có chuyển động. Khi bạn làm đúng loại việc đó, agent tự tìm skill phù hợp, làm theo tiêu chí và các bước kiểm chứng của 200Lab, và dẫn bài học liên quan. Muốn xem đủ danh sách, bạn hỏi agent "200Lab có những skill nào?". Bạn không cần cài thêm gì; riêng Diagram Director có thêm một kit miễn phí cho agent có terminal.

### Agent trình bày kết quả dạng HTML, flash card hay slide được không?

Được. Sau một lộ trình, lời khuyên chọn khóa, hướng xử lý cho dự án hay một bản review, agent hỏi bạn muốn xem dạng nào: trang HTML tương tác, flash card để ôn bài, slide để trình bày, hoặc một trang diễn hoạt cách một cơ chế chạy. Kết quả lưu thành file trong thư mục của bạn hoặc thành artifact trong chat, tùy client bạn dùng. Bạn cũng có thể giữ mọi thứ trong chat.

### 200Lab MCP hỗ trợ những dự án nào?

200Lab MCP phục vụ việc học và xây dựng dự án hợp pháp. Agent không hỗ trợ tấn công hệ thống của người khác, cờ bạc, lừa đảo hay nội dung vi phạm pháp luật Việt Nam. Bảo mật hệ thống của chính bạn thì vẫn được: harden, review code an toàn hay kiểm thử trên lab của bạn.

### Dữ liệu của mình đi đâu?

Agent của bạn gọi thẳng đến 200Lab để lấy nội dung. 200Lab không nhận lịch sử trò chuyện của bạn, chỉ nhận nội dung của từng lời gọi tool, ví dụ từ khóa bạn tìm hay bài bạn mở, kèm tên client bạn dùng và tên model khi agent tự ghi. Cuộc trò chuyện nằm ở client bạn dùng, theo chính sách của nhà cung cấp client đó.

### Ngắt kết nối thế nào?

Trong Claude App, gỡ connector ở Settings, mục Connectors. Với Claude Code, chạy `claude mcp remove 200lab-ai-tutor`. Với Codex CLI và ChatGPT App, hai client dùng chung cấu hình, chạy `codex mcp remove 200lab-ai-tutor`. Gỡ xong là agent không gọi được 200Lab nữa.

### Mình dùng Codex Desktop hoặc client khác được không?

Được. Ứng dụng ChatGPT trên máy, Codex CLI và extension cho IDE dùng chung một cấu hình MCP, nên bạn thêm server ở một nơi là dùng được ở cả ba. Client khác thì chỉ cần hỗ trợ MCP server qua Streamable HTTP và đăng nhập OAuth: bạn thêm một server trỏ tới địa chỉ ở phần Cài đặt rồi đăng nhập như các bước ở trên.
