20/06/2026 · 7 phút đọc

MCP và Code Graph: Giải pháp tối ưu Context Window cho AI với Codebase lớn

Khi làm việc với dự án lớn, việc ném toàn bộ codebase vào prompt là một sự lãng phí tài nguyên và làm giảm độ chính xác của AI. Hãy học cách điều hướng Agent bằng các công cụ ngữ cảnh chuyên biệt.

AI AgentAgentic AIPerformanceAutomation

Cuộc khủng hoảng tràn bộ nhớ ngữ cảnh (Context Window Inflation)

Khi các AI Coding Agent (như Cursor, Claude Engineer hay GitHub Copilot) ngày càng thâm nhập sâu vào quy trình làm việc hàng ngày, các kỹ sư thường đối mặt với một vấn đề nhức nhối: Sự phình to của Context Window.

Đa số mọi người khi gặp một lỗi phức tạp hoặc muốn refactor một tính năng lớn thường có thói quen: ném toàn bộ thư mục gốc vào AI, hoặc để Agent tự do quét (scan) toàn bộ repository. Hệ quả của tư duy "càng nhiều ngữ cảnh càng tốt" này là:

  • Hiệu ứng "Kim rách đáy bể" (Lost in the Middle): Khi kích thước ngữ cảnh vượt quá mức cần thiết, mô hình ngôn ngữ lớn (LLM) bắt đầu bị nhiễu thông tin, dẫn đến việc bỏ sót các chỉ dẫn quan trọng ở giữa prompt và sinh ra mã nguồn sai lệch (Hallucination).
  • Tốc độ phản hồi rùa bò: Agent mất quá nhiều thời gian để xử lý hàng nghìn dòng code không liên quan trước khi đưa ra câu trả lời.
  • Chi phí token phi mã: Việc lặp đi lặp lại việc gửi toàn bộ codebase qua API sẽ ngốn sạch tài nguyên tài chính của dự án một cách vô ích.

Để tối ưu hóa sức mạnh của AI trong kỷ nguyên hiện tại, chúng ta phải chuyển dịch từ tư duy "Brute-force Context" (Quét toàn bộ) sang "Targeted Context" (Ngữ cảnh có mục tiêu). Chìa khóa nằm ở việc thiết lập một Chính sách Công cụ (Tool Policy) nghiêm ngặt dựa trên Code GraphModel Context Protocol (MCP).


Cơ chế vận hành của Tool Policy: Định hướng Agent qua Công cụ Chuyên biệt

Thay vì để Agent tự mò mẫm trong bóng tối, một dự án chuẩn production cần cấu hình một bộ quy tắc phân phối công cụ. Agent bắt buộc phải sử dụng các công cụ trung gian để trích xuất chính xác cấu trúc liên kết thay vì đọc trực tiếp tệp tin thô diện rộng.

Rendering Mermaid diagram...

1. CodeGraph: Khảo sát cấu trúc liên kết và Phân tích Bán kính ảnh hưởng (Blast Radius)

Khi sửa đổi một Component dùng chung (Shared UI), Agent không được phép mở từng file để xem ai đang import nó. Đó là lúc CodeGraph (hoặc các công cụ phân tích Cây cú pháp trừu tượng - AST) phát huy tác dụng.

  • Cách hoạt động: CodeGraph xây dựng một bản đồ liên kết (Dependency Graph) của toàn bộ dự án. Khi Agent cần sửa file src/components/ui/button.tsx, nó sẽ chạy lệnh truy vấn đồ thị để biết chính xác có những Feature nào đang tiêu thụ component này.
  • Lợi ích tối ưu: Thay vì nạp 100 file vào context, Agent chỉ nạp đúng file button.tsx và danh sách các dòng code cụ thể bị ảnh hưởng. Điều này giúp ngăn chặn hoàn toàn việc Agent vô tình làm gãy (break) giao diện của các domain lân cận.

2. Model Context Protocol (MCP): Chuẩn hóa cổng kết nối tri thức ngoại vi

Model Context Protocol (MCP) là một giao thức mã nguồn mở mang tính cách mạng, cho phép các LLM kết nối an toàn với các nguồn dữ liệu và công cụ bên ngoài thông qua một API chuẩn hóa. Thay vì cài cắm thủ công, MCP biến các nguồn tri thức thành các "Service" mà Agent có thể chủ động truy vấn khi cần.

Trong phát triển Frontend, hai máy chủ MCP (MCP Servers) bắt buộc phải cấu hình trong dự án bao gồm:

MDN MCP — Tra cứu chuẩn xác Web Platform & Accessibility (A11y)

Khi Agent cần thiết kế một component phức tạp (như một Accessible Dropdown hoặc luồng xử lý Web Worker), nó không nên tự đoán cú pháp hoặc dùng dữ liệu huấn luyện cũ.

  • Hành vi chuẩn: Agent gọi lệnh qua MDN MCP để lấy tài liệu chuẩn mới nhất của Mozilla về thuộc tính ARIA, các sự kiện bàn phím (onKeyDown), và bảng tương thích trình duyệt (Browser Compatibility).
  • Kết quả: Mã nguồn sinh ra đạt chuẩn WCAG AA về tính tiếp cận mà không cần Kỹ sư phải nhắc nhở hay viết prompt dài dòng.

Context7 / Framework-specific MCP — Đập tan nỗi lo tài liệu lỗi thời

Các thư viện Frontend như Next.js, React 19 hay Tailwind CSS v4 thay đổi cú pháp rất nhanh.

  • Hành vi chuẩn: Khi xử lý các tác vụ nâng cấp hệ thống, Agent sử dụng máy chủ MCP chuyên biệt để đọc tài liệu trực tiếp từ trang chủ của thư viện thay vì quét hệ thống tệp local. Ngữ cảnh đưa vào mô hình luôn là tri thức "sống" và chính xác tuyệt đối tại thời điểm thực thi.

Bảng tra cứu Tool Policy dành cho AI Agent

Dưới đây là bảng phân định công cụ nghiêm ngặt được trích xuất từ quy tắc vận hành của hệ thống, giúp tối ưu hóa tối đa lượng Token tiêu thụ:

Tác vụ thực thiCông cụ bắt buộc sử dụngHành vi bị CẤM (Banned Behavior)
Tìm kiếm từ khóa, hàm, hoặc kiểm tra trạng thái Git trên toàn bộ dự án lớn.RTK Tools (rtk grep, rtk find, rtk git diff)Sử dụng các lệnh gốc (grep, find) gây tràn màn hình console quá 100 dòng.
Refactor hệ thống, thiết kế kiến trúc, hoặc debug các chuỗi lỗi phức tạp chạm vào nhiều module.Sequential Thinking (Tư duy tuần tự hóa đa bước)Sửa code ngay lập tức ở bước đầu tiên mà chưa lập kế hoạch (Technical Plan).
Implement hoặc chỉnh sửa các tính năng liên quan đến Browser APIs, CSS features, hoặc DOM manipulation.MDN MCPTự viết logic dựa trên phán đoán cá nhân hoặc kiến thức cũ.
Xác thực giao diện và luồng hoạt động End-to-End sau khi kết thúc quá trình chỉnh sửa UI.PlaywrightChỉ nhìn vào mã nguồn và tự phê duyệt (Self-approve) mà không chạy test thực tế.

Quy trình 7 bước tối ưu Context Window (Primary Workflow)

Mọi tác vụ không tầm thường (non-trivial tasks) được giao cho Agent bắt buộc phải đi qua vòng lặp tinh gọn ngữ cảnh sau:

  1. Khảo sát Đồ thị (CodeGraph): Khảo sát cấu trúc và xác định các file liên quan trực tiếp.
  2. Đọc tài liệu mục tiêu: Chỉ mở đúng các tài liệu kỹ thuật cần thiết dựa trên bảng Source Map quy chuẩn.
  3. Lập phương án rút gọn (Short Implementation Plan): Xuất ra một bản kế hoạch ngắn dưới dạng Markdown để con người kiểm duyệt ranh giới.
  4. Thực thi tịnh tiến (Implement): Sửa đổi code bằng các khối Diff nhỏ, atomic.
  5. Kiểm chứng CLI (Verify): Chạy pnpm lintpnpm typecheck để trình biên dịch xác thực.
  6. Rà soát cục bộ (Review): Tự chạy rtk git diff để kiểm tra xem có file nào bị sửa đổi ngoài phạm vi cho phép hay không.
  7. Báo cáo rủi ro: Liệt kê các file đã thay đổi và các điểm cần lưu ý cho Kỹ sư duyệt PR.

Kết luận: Ít hơn là nhiều hơn (Less Context, Better Code)

Sự thông minh của một AI Agent không nằm ở việc nó đọc được bao nhiêu megabyte mã nguồn, mà nằm ở việc nó đọc đúng những gì cần đọc.

Bằng cách thiết lập một Tool Policy chặt chẽ, kết hợp sức mạnh phân tích mối quan hệ của Code Graph và khả năng tra cứu tri thức chuẩn hóa của Model Context Protocol, bạn đã biến AI Agent từ một kẻ "đoán mò hoang phí" thành một chuyên gia phẫu thuật chính xác: tốn ít token hơn, tốc độ phản hồi nhanh gấp nhiều lần, và quan trọng nhất là đưa ra những dòng code chuẩn production tuyệt đối.