# Giữ AI trả lời đúng với Microsoft Learn MCP Server

[Ben Brauer](https://homus.dev/speakers/ben-brauer) · [Microsoft Developer](https://homus.dev/orgs/microsoft-developer), [Eric Imasogie](https://homus.dev/speakers/eric-imasogie) · [Microsoft Developer](https://homus.dev/orgs/microsoft-developer)

> Vì sao coding agent trả lời lỗi thời, và cách Microsoft Learn MCP Server đưa tài liệu chính thức vào agent qua ba tool, kèm demo trong VS Code.

Topics: Coding Agents, Context Engineering, Dev Tools

Canonical: https://homus.dev/talks/keep-your-ai-accurate-with-microsoft-learn-mcp-server

## 1. AI coding assistant ở khắp nơi, nhưng đôi khi trả lời sai

Đây là một tập của Azure Essentials Show trên kênh Microsoft Developer, một cuộc trò chuyện giữa hai người: người dẫn chương trình Ben Brauer và khách mời Eric Imasogie, thuộc đội Microsoft Learn.

Video mở bằng một đoạn trích lời Eric: Learn MCP Server có thể chạy gần như ở bất cứ đâu, và nếu bạn đang build một AI agent, anh rất khuyến khích bạn thật sự cân nhắc đưa Learn MCP Server vào làm một thành phần chính trong bộ setup agentic của mình.

Sau đó Ben chào khán giả quay lại với Azure Essentials Show. Anh nêu vấn đề: AI coding assistant bây giờ có mặt ở khắp nơi (theo video đăng ngày 30/09/2026), nhưng đôi khi chúng làm sai. Vì sao lại như vậy? Có khi chúng đang nghĩ tới một method không còn tồn tại nữa, hoặc đưa ra một cách làm tạm (workaround) mà sản phẩm của bạn không còn hỗ trợ. Ben kể rằng một trong những việc Microsoft đang làm là giúp các assistant này tốt hơn, bám sát hơn vào nội dung mới, tức là nội dung mà chính các chuyên gia (subject matter expert) của Microsoft viết và làm việc cùng. Rồi anh giới thiệu khách mời Eric Imasogie từ đội Microsoft Learn. Eric chào lại: rất vui được có mặt.

![Ben Brauer và Eric Imasogie trong hai khung gọi video của Azure Essentials Show](https://homus.dev/photos/KH5fQCLhXrg-0019.jpg)

Hai khung hình của tập này: bên trái là người dẫn Ben Brauer, bên phải là Eric Imasogie của đội Microsoft Learn, mỗi người có tên ghi ở góc dưới khung.

## 2. Vì sao agent trả lời lỗi thời: mốc dữ liệu huấn luyện

Ben bắt đầu bằng câu hỏi cơ bản: vì sao coding agent đôi khi đưa ra câu trả lời lỗi thời hoặc sai?

Eric khen đây là câu hỏi hay, rồi đơn giản hóa thêm một bước: thay vì nói coding agent, hãy nói về LLM. LLM được tạo ra bằng cách huấn luyện model trên dữ liệu có sẵn trên web mở và công khai. Trong đó có cả nội dung, tài liệu liên quan tới các sản phẩm và dịch vụ Azure: nội dung trên Learn, nội dung từ những nguồn khác, các bài blog mà nhiều người khác viết và đăng. Model, trong trường hợp đó, được huấn luyện trên toàn bộ khối dữ liệu ấy.

Eric lấy một ví dụ: model mới nhất của Anthropic, mà theo anh nhớ là model Fable 5.1, được huấn luyện lần cuối, theo anh tin là vào tháng 6 năm nay (lời Eric trong video đăng ngày 30/09/2026, chính anh nói kèm "tôi nghĩ", "tôi tin là"). Hãy hình dung trong quá trình huấn luyện, model đó cũng học tài liệu Azure cho tới đúng tháng đó. Nếu sau đó có một thay đổi được đưa vào bất kỳ sản phẩm hay mảng dịch vụ nào liên quan tới Azure, và thay đổi ấy đủ lớn, thì agent đó, với vốn kiến thức nó tự có từ quá trình huấn luyện cho tới tháng 6, sẽ không thể trả lời thỏa đáng một prompt hay một câu hỏi gắn chặt với những thay đổi sản phẩm được phát hành sau mốc huấn luyện.

Điều này dễ dẫn tới những kết quả không tốt, như code được implement không chính xác hoặc câu trả lời không chính xác.

Ý Eric giải thích: mọi thứ model biết dừng ở mốc huấn luyện; một thay đổi sản phẩm phát hành sau mốc đó nằm ngoài vốn kiến thức của nó, nên câu trả lời có thể lỗi thời.

## 3. Nguồn web không đáng tin, và Learn MCP Server ra đời để làm gì

Eric nói thêm một nguyên nhân thứ hai. Các model này, thông qua harness của chúng, có quyền dùng những tool cho phép tìm kiếm và lấy nội dung từ web. Và đôi khi agent kéo vào nội dung từ những nguồn không đáng tin, có thể đã lỗi thời hoặc không chính xác. Một lần nữa, tất cả những điều đó dẫn tới kết quả không tốt: code implement có phần bị bug, hoặc câu trả lời đơn giản là không tối ưu và sai.

Ben hỏi tiếp: vậy Learn MCP Server bước vào câu chuyện này thế nào, có phải đó là lý do nó được build ra không?

Eric xác nhận. Learn MCP Server cho agent một con đường để truy cập tài liệu sản phẩm của Microsoft đáng tin cậy, có thẩm quyền, đến thẳng từ Microsoft. Nó đưa ra đúng phần nội dung, đúng phần kiến thức sản phẩm mà bạn thấy trên trang [learn.microsoft.com](https://learn.microsoft.com) (theo video đăng ngày 30/09/2026). Đó cũng chính là nội dung đang cung cấp sức mạnh cho nhiều Copilot mà bạn có thể đang dùng trong các sản phẩm và dịch vụ khác nhau của Microsoft. Trang tổng quan của Microsoft Learn ghi cụ thể hơn: MCP server này là giao diện tới dịch vụ tri thức (knowledge service) của Learn, thứ đang chạy Ask Learn và Copilot for Azure.

Hai nguồn kiến thức mà Eric so sánh: web tool trong harness có thể kéo về nội dung lỗi thời, còn Learn MCP Server đưa tài liệu sản phẩm chính thức của Microsoft vào cho agent.

## 4. MCP và ba tool: Docs Search, Docs Fetch, Code Sample Search

Learn MCP Server dùng cái mà Eric gọi là Model Context Protocol (MCP), một pattern đã nổi lên trong toàn ngành để chuẩn hóa cách agent tương tác với nhiều loại tài nguyên (resource), tool và dữ liệu. Với Learn, thứ được đưa ra là dữ liệu, tức nội dung.

Theo Eric, điều làm cho MCP endpoint này thật sự hợp với thời đại agentic là pattern giao thức, nhất là với thiết kế giao thức mới hơn đã được phát hành (theo lời anh trong video đăng ngày 30/09/2026), cho phép một kiểu tương tác stateless. Nhờ đó agent có thể làm việc trơn tru với nhiều tool của các MCP server khác nhau, lấy resource, lấy dữ liệu, rồi dùng tất cả để hành động: implement code, tạo ra câu trả lời chất lượng, hoặc dựng ra những bản thiết kế và sơ đồ architecture thật tốt. Trang tài liệu của Microsoft Learn mô tả đây là một remote MCP server dùng streamable HTTP, endpoint là `https://learn.microsoft.com/api/mcp`.

MCP server này đưa ra ba tool:

- **Docs Search**: trả nội dung dưới dạng các chunk hay đoạn trích (snippet).

- **Docs Fetch**: trả về toàn bộ trang tài liệu ở dạng markdown.

- **Code Sample Search**: trả về các đoạn code mẫu có trong nội dung Learn.

Tất cả các tool này cho agent nhiều định dạng khác nhau để lấy và dùng nội dung một cách hiệu quả, giúp nó làm tốt việc tạo code chất lượng cao và câu trả lời chất lượng. Trong README của repo, tên kỹ thuật của ba tool lần lượt là `microsoft_docs_search`, `microsoft_docs_fetch` và `microsoft_code_sample_search` (tool cuối có thêm tham số tùy chọn để lọc theo ngôn ngữ lập trình).

Ba tool Eric liệt kê, mỗi tool trả nội dung ở một định dạng khác nhau để agent chọn cách lấy phù hợp.

## 5. Miễn phí, không cần đăng nhập, và luôn cập nhật

Eric nói thêm: cũng giống như Microsoft Learn, server này miễn phí để dùng và truy cập, và không đòi xác thực (authentication) (theo video đăng ngày 30/09/2026; trang tổng quan của Learn, cập nhật ngày 22/05/2026, cũng ghi không thu phí và không cần authentication). Ben thấy điều đó khá thú vị, rồi hỏi: vậy Learn MCP giữ kiến thức luôn mới và đáng tin bằng cách nào?

Eric giải thích: khi Microsoft viết hoặc đăng tài liệu sản phẩm hay hướng dẫn mới, dù là đẩy thay đổi lên repo hay lên trang Learn, mọi thay đổi đó được phản ánh tự động, ngay lập tức qua Learn MCP Server. Server đưa nội dung ra theo thời gian thực để agent có được kiến thức sản phẩm mới nhất ngay khi nó được công bố (theo lời Eric trong video đăng ngày 30/09/2026). Trang tài liệu chính thức (cập nhật ngày 22/05/2026, đọc lại vào 10/2026) nói chi tiết hơn về cơ chế: dịch vụ tri thức phía sau làm mới từng phần sau mỗi lần nội dung thay đổi và làm mới toàn bộ một lần mỗi ngày. Điều này đảm bảo code được implement chính xác, câu trả lời chính xác, và người dùng có kết quả tốt khi làm việc với sản phẩm và dịch vụ của Microsoft.

Ngoài ra, Microsoft Learn là một nguồn kiến thức sản phẩm có quản trị (governed). Nội dung trải qua quy trình viết và review kỹ, kiểm tra tính đúng, kiểm tra an toàn (safety check), và bảo trì theo vòng đời. Đội Learn cũng đưa vào rất nhiều tín hiệu từ sản phẩm và từ nội dung, cho họ biết khi nào một trang cần sửa hoặc cần cập nhật. Ben tóm lại: như vậy là tạo ra rất nhiều sự tin tưởng vào nội dung, cho cả developer lẫn người dùng cuối, và anh nói rất vui khi nghe điều đó.

Cách Eric mô tả nội dung đi tới agent: được viết, review và kiểm tra, đẩy lên repo hoặc trang Learn, rồi xuất hiện qua MCP server; các tín hiệu từ sản phẩm báo khi nào trang cần cập nhật.

## 6. Kết nối từ đâu: VS Code, Visual Studio, Claude Code, Codex

Ben hỏi: các tool và AI assistant khác nhau thực tế kết nối tới Learn MCP Server bằng cách nào?

Eric trả lời: Learn MCP Server chạy được ở bất cứ đâu có hỗ trợ giao thức MCP. Tính tới lúc quay video (đăng ngày 30/09/2026), danh sách đó gồm các AI agent, các công cụ developer như VS Code hay Visual Studio, Claude Code của Anthropic, Codex của OpenAI, và rất nhiều dịch vụ client agentic khác.

Vì MCP, theo Eric (video đăng ngày 30/09/2026), đến giờ đã là một pattern tích hợp được thiết lập vững, việc bắt đầu cũng khá dễ và thẳng. Tùy client bạn dùng, bạn có thể cài Learn MCP Server như một connector, qua một kho plugin hoặc kho extension, hoặc lấy phần config có sẵn trong repo của đội Learn. Phần config chuẩn mà README của repo đưa ra cho hầu hết client là:

```
{
"servers": {
"microsoft-learn": {
"type": "http",
"url": "https://learn.microsoft.com/api/mcp"
}
}
}
```

Cũng trong README (tính tới 10/2026), Claude Code có lệnh cài plugin `/plugin install microsoft-docs@claude-plugins-official` (gồm cả MCP server và skill), còn Codex có lệnh `codex mcp add "microsoft-learn" --url "https://learn.microsoft.com/api/mcp"`. Đây là cách ghi trong tài liệu, không phải lệnh được chạy trong video.

Eric nhắc lại lời khuyên ở đầu video: nếu bạn đang build một AI agent, anh rất khuyến khích bạn thật sự cân nhắc đưa Learn MCP Server vào làm một thành phần chính trong setup agentic đó, để có kết quả tốt nhất khi làm việc với sản phẩm và dịch vụ của Microsoft (lời khuyên của Eric, theo video đăng ngày 30/09/2026).

Bất kỳ client nào hỗ trợ MCP đều nối được vào cùng một server; Eric nêu VS Code, Visual Studio, Claude Code, Codex và các AI agent.

## 7. Demo: đưa Learn MCP Server vào context của agent trong VS Code

Ben nhận xét hai người đã nói khá nhiều, có vẻ Learn MCP Server có rất nhiều thứ, và hỏi Eric có demo nào cho xem không. Eric nói có, rồi mở demo lên.

Bài toán của Eric: anh muốn tạo một ứng dụng giúp phân loại (classify) hình ảnh nằm trong Azure Blob Storage của mình. Anh mở VS Code. Việc anh nghĩ tới trước hết khi phát triển app này là phải chắc chắn agent đang dùng kiến thức sản phẩm có thẩm quyền nhất, đến từ Learn. Một cách để ép điều đó, nói chung, là bấm nút Add Context, vào mục Tools, rồi chọn Learn MCP Server, ở đây còn có tên gọi khác là Microsoft Docs MCP. Thế là server này đã nằm trong context của agent.

![VS Code mở trang Welcome, bên phải là khung Chat trống với ô nhập Describe what to build](https://homus.dev/photos/KH5fQCLhXrg-0751.jpg)

VS Code lúc bắt đầu demo: bên trái là trang Welcome, bên phải là khung Chat của agent với ô nhập "Describe what to build", chế độ Agent đang bật.

Rồi Eric gõ yêu cầu cho agent. Anh đọc to nội dung như sau:

```
Hey, I want to create an app that will help me classify images in my Azure blob storage. But first draft me an architecture diagram that illustrates how the app will auto classify new images stored in blob storage.
```

Trên màn hình, dòng đầu của tin nhắn hiện là "I want to create an app to help me classify images in my azure blob storage. But...", phần còn lại bị thu gọn.

## 8. Agent kết hợp nhiều MCP server và vẽ sơ đồ architecture

Eric để agent làm việc. Agent suy luận (reasoning), rồi dùng tool Docs Search, một trong các tool mà Learn MCP Server đưa ra. Nó cũng dùng cả Azure MCP Server. Eric chỉ ra ở đây tính kết hợp (composability) giữa các MCP server khác nhau: agent có thể dùng cả một bộ tool để hoàn thành một nhiệm vụ. Về cuối, Docs MCP server lại được dùng, cụ thể là tool Docs Fetch.

Eric cuộn lên để xem lại agent đã làm gì. Lúc đầu nó chạy Docs Search, công cụ tìm kiếm và truy xuất của Learn MCP Server, để lấy về những đoạn tài liệu liên quan. Từ kết quả đó, nó biết cần dùng tiếp Docs Fetch để lấy trọn trang của những đoạn trích mà lần chạy Docs Search đầu đã trả về. Ở bước thứ hai, Azure MCP Server cũng được dùng. Eric nhấn mạnh chi tiết này quan trọng, vì nó cho thấy các MCP server có thể dùng song song, nối tiếp, hoặc ghép lại với nhau để giúp agent làm xong việc.

Agent đã phác xong sơ đồ architecture. Eric phóng to và nói "voila": sơ đồ architecture cho ứng dụng của anh đã được vẽ ra. Anh biết agent đang dùng best practice và hướng dẫn tốt nhất có trên Learn để làm việc này (theo lời Eric trong video đăng ngày 30/09/2026), nên anh khá tự tin rằng architecture này, và cả việc phát triển app, sẽ an toàn, bảo mật, chạy đúng và có hiệu năng tốt.

![VS Code với sơ đồ Mermaid architecture bên trái và câu trả lời của agent bên phải, có các lần gọi Microsoft Docs Fetch và Azure MCP](https://homus.dev/photos/KH5fQCLhXrg-1023.jpg)

Kết quả demo: bên trái là sơ đồ Mermaid với Azure Functions classification worker, Azure Cosmos DB lưu kết quả, nhánh độ tin cậy thấp đi vào Human review queue; bên phải là các lần agent gọi Azure MCP và "Ran Microsoft Docs Fetch", rồi phần Draft Architecture và Automatic Flow.

Trên màn hình, đoạn trả lời của agent ghi rằng hướng dẫn hiện có (tại thời điểm demo, video đăng ngày 30/09/2026) đổi một lựa chọn quan trọng: Azure Custom Vision có lịch ngừng hoạt động vào ngày 25/09/2028, nên bản nháp dùng Azure Machine Learning AutoML cho việc phân loại tùy chỉnh, đồng thời để phần inference có thể thay thế được. Agent mô tả thiết kế là một pipeline hướng sự kiện (event-driven) với một worker idempotent, một model endpoint có thể thay thế và một nhánh review cho các dự đoán có độ tin cậy thấp. Phần Automatic Flow liệt kê: một ảnh được upload vào blob container `incoming`; Event Grid phát ra một event `Microsoft.Storage.BlobCreated` đã lọc; Service Bus làm bộ đệm cho lưu lượng và thử lại khi gặp lỗi tạm thời. Trên sơ đồ còn có nhánh nhãn đã sửa (Corrected labels) đi vào dữ liệu huấn luyện được chọn lọc, và một đường telemetry.

## 9. Bắt đầu từ đâu, và lời chào kết

Ben khen đây là thứ rất hay, rồi hỏi: vậy một người muốn bắt đầu dùng thứ này ngay hôm nay thì nên đi đâu?

Eric trả lời: hãy bắt đầu bằng repo GitHub của đội ([github.com/MicrosoftDocs/mcp](https://github.com/MicrosoftDocs/mcp)). Ở đó có một nút cài nhanh để cài MCP server thẳng vào VS Code. Đội cũng đăng rất nhiều hướng dẫn và cập nhật trực tiếp lên repo đó, cùng với bài viết trên Learn về MCP server, link sẽ có trong phần ghi chú của tập.

![Ben Brauer và Eric Imasogie, dưới là hai đường link github.com/MicrosoftDocs/mcp và learn.microsoft.com/training/support/mcp](https://homus.dev/photos/KH5fQCLhXrg-1203.jpg)

Hai địa chỉ hiện ở cuối tập: repo github.com/MicrosoftDocs/mcp và trang tổng quan learn.microsoft.com/training/support/mcp.

Ben cảm ơn Eric, nói anh rất vui khi thấy Microsoft giúp các agent bám vào kiến thức sản phẩm thật và mới, và cảm ơn Eric đã dẫn mọi người đi qua. Eric cảm ơn vì được mời, và mời mọi người để lại feedback thẳng trong repo: đội rất muốn nghe trực tiếp từ người dùng, và họ liên tục đẩy cập nhật để cải thiện Learn MCP Server.

Ben kết thúc: link của mọi thứ trong tập có trong phần mô tả video, khán giả có thể để lại góp ý hoặc câu hỏi cho Eric ở phần bình luận, và anh mời mọi người like, subscribe kênh để chờ tập tiếp theo của Azure Essentials Show.

## Nguồn và liên kết

- Tên gốc: Keep Your AI Accurate with Microsoft Learn MCP Server
- Sự kiện: [YouTube](https://homus.dev/events/youtube)
- Video gốc: [https://www.youtube.com/watch?v=KH5fQCLhXrg](https://www.youtube.com/watch?v=KH5fQCLhXrg)

- Kênh YouTube Microsoft Developer (Ben Brauer & Eric Imasogie): [youtube.com/channel/UCsMica-v34Irf9KVTh6xx-g](https://www.youtube.com/channel/UCsMica-v34Irf9KVTh6xx-g)

- Repo Microsoft Learn MCP Server (README có nút cài cho VS Code, config chuẩn, endpoint, bảng ba tool và cách cài cho từng client): [github.com/MicrosoftDocs/mcp](https://github.com/MicrosoftDocs/mcp)

- Trang tổng quan Microsoft Learn MCP Server (remote server dùng streamable HTTP, không cần authentication, không thu phí, cách làm mới nội dung): [learn.microsoft.com/training/support/mcp](https://learn.microsoft.com/training/support/mcp)

Nguồn: https://homus.dev/talks/keep-your-ai-accurate-with-microsoft-learn-mcp-server · cập nhật 2026-10-19
