Tiếng Việt
← Quay lại Trang chủ

MCP / Agent / Skill / Harness

Bản đồ biên tập về các khái niệm liên quan đến ứng dụng agent

MCP, Agent, Skill và Harness mô tả các mối quan tâm khác nhau trong ứng dụng agent: trao đổi ngữ cảnh, thực thi tác vụ, chỉ dẫn tái sử dụng và runtime chủ. Cách chia bốn phần này là mô hình biên tập của Aphrodite, không phải kiến trúc phổ quát hay khẳng định rằng mọi sản phẩm đều triển khai cả bốn.

Rà soát gần nhất: . Kiến trúc MCP hiện hành (2026-07-28).

Kiến trúc MCP
  1. Claude Code
    1. Harness
      1. Skill
      2. Agent
      3. Tool
      1. MCP
        1. Công cụ / Dữ liệu bên ngoài
🔗

MCP - Model Context Protocol

Giao thức Tầng Kết nối

MCP là giao thức client-server mở để trao đổi ngữ cảnh giữa ứng dụng AI và hệ thống bên ngoài. Host điều phối client; server cung cấp công cụ, tài nguyên và prompt được cấp quyền. MCP không định nghĩa huấn luyện, suy luận hay vòng lặp lập luận nội bộ của Agent.

MCP là gì?

MCP là giao thức truyền thông định nghĩa cách AI có thể:

  • Yêu cầu thực thi một thao tác
  • Lấy dữ liệu bên ngoài
  • Tương tác với ứng dụng cục bộ

Cách hoạt động

  1. MCP client kết nối tới tiến trình cục bộ hoặc dịch vụ từ xa
  2. Client và server trao đổi yêu cầu, phản hồi và thông báo JSON-RPC
  3. Server truy cập công cụ, tài nguyên hoặc prompt được cấp quyền
  4. Client cung cấp kết quả đã chuẩn hóa cho mô hình hoặc giao diện host

Ví dụ cấu hình

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/you/Projects"]
    },
    "git": {
      "command": "uvx",
      "args": ["mcp-server-git", "--repository", "/Users/you/Projects/example"]
    }
  }
}

Trên Windows, có thể cần gọi npx qua cmd /c. Đường dẫn cấu hình khác nhau giữa Claude Desktop, Claude Code, Codex và Cursor. Đã đối chiếu với kho MCP chính thức vào 2026-07-29.

Máy chủ tham chiếu chính thức

Máy chủ tham chiếu của ban chỉ đạo (kho chính thức):

  • Everything
  • Fetch
  • Filesystem
  • Git
  • Memory
  • Sequential Thinking
  • Time

Đây là các bản triển khai phục vụ học tập và tham chiếu, không mặc nhiên phù hợp cho môi trường sản xuất. Hãy dùng MCP Registry để tìm máy chủ bên thứ ba, đồng thời đánh giá danh tính nhà phát hành, quyền, bảo mật và tình trạng bảo trì trước khi áp dụng. Máy chủ đã lưu trữ và máy chủ của nhà cung cấp hoặc cộng đồng thuộc các nhóm riêng.

🤖

Agent - AI Agent

Tầng Thực thi Nhiệm vụ

Agent là hệ thống AI có khả năng tự lập kế hoạch và thực thi các nhiệm vụ phức tạp. Khác với hỏi đáp đơn giản, Agent có thể: hiểu mục tiêu → lập kế hoạch → hành động → đánh giá kết quả → điều chỉnh chiến lược.

Năng lực cốt lõi

  • Hiểu hướng dẫn phức tạp
  • Chia nhiệm vụ lớn thành các bước nhỏ
  • Tự quyết định bước tiếp theo
  • Sử dụng công cụ để hoàn thành thao tác
  • Học hỏi từ kết quả thực thi

Ví dụ sử dụng

Ví dụ Hội thoại Claude Agent

Người dùng: Giúp tôi tái cấu trúc xử lý lỗi trong dự án này

Claude Agent:

Tôi sẽ giúp bạn tái cấu trúc xử lý lỗi. Để tôi phân tích cấu trúc mã hiện tại trước…

  1. Quét mã xử lý lỗi trong dự án
  2. Xác định các mẫu lặp lại
  3. Thiết kế phương pháp xử lý lỗi thống nhất
  4. Thực hiện tái cấu trúc từng module
  5. Chạy kiểm thử để đảm bảo không có lỗi

[Agent tự thực thi tất cả các bước trên]

so với GitHub Copilot

Claude Code và GitHub Copilot đều cung cấp khả năng lập trình theo kiểu agent và rà soát mã trong terminal hoặc IDE. Cách xác nhận quyền, sandbox, lựa chọn mô hình, tác vụ đám mây bất đồng bộ và mức hỗ trợ MCP thay đổi theo sản phẩm, client và phiên bản. Hãy phân biệt rà soát cục bộ với rà soát pull request và tham khảo tài liệu hiện hành.

Rà soát gần nhất: . Nguồn: Tài liệu Claude Code · Tính năng GitHub Copilot.

🛠️

Skill - Mở rộng Năng lực

Tầng Nâng cao Năng lực

Skill là tập hợp các chỉ dẫn, script và tài nguyên mà tác tử nạp khi cần cho một tác vụ chuyên biệt. Định dạng SKILL.md được công bố công khai và không gắn với một sản phẩm duy nhất; Claude Code là một trong những host nạp chúng. Thông qua Skill, bạn có thể: định nghĩa lệnh thông dụng, đóng gói quy trình làm việc phức tạp, thêm kiến thức chuyên ngành.

Loại Skill

  • Skill cá nhân: lưu trong ~/.claude/skills/ để dùng lại giữa các dự án
  • Skill dự án: lưu trong .claude/skills/ và chia sẻ cùng kho mã
  • Skill plugin: do plugin đã cài cung cấp
  • Khả năng tích hợp: phụ thuộc phiên bản; kiểm tra bằng /help

Ví dụ định nghĩa

---
name: component-docs
description: Generate documentation for Vue components. Use when the user asks to document a component or component library.
---

Component documentation

  1. Inspect component props, emits, slots, and dependencies.
  2. Generate a usage example.
  3. Document accessibility and edge cases.
  4. Link to related components.

Path: ~/.claude/skills/component-docs/SKILL.md

Cách sử dụng

  1. Tạo thư mục chứa SKILL.md hoàn chỉnh tại ~/.claude/skills/<name>/ hoặc .claude/skills/<name>/
  2. Thêm các trường YAML namedescription như ví dụ trên
  3. Mô tả tác vụ hoặc nhắc tên Skill; không giả định có lệnh tích hợp chưa được ghi trong tài liệu
  4. Chạy /help và xem tài liệu hiện hành để xác nhận lệnh theo phiên bản

Lệnh tích hợp

Tên các khả năng tích hợp của Claude Code có thể thay đổi theo phiên bản. Hãy chạy /help hoặc xem tài liệu lệnh hiện hành. Skill cá nhân, dự án và plugin cũng có thể cung cấp lệnh /skill-name.

🧩

Harness - Giàn giáo Agent

Lớp Runtime Host

Ở đây, Harness là thuật ngữ biên tập cho runtime chủ bao quanh mô hình hoặc Agent. Nó có thể kết hợp chỉ dẫn hệ thống, vòng lặp công cụ, trạng thái phiên, bộ nhớ, quyền và tích hợp, nhưng mỗi sản phẩm xác định ranh giới này khác nhau và không bắt buộc có mọi thành phần được trình bày.

Năng lực cốt lõi

  • Lắp ráp system prompt và vòng lặp công cụ
  • Duy trì ngữ cảnh phiên và bộ nhớ dài hạn
  • Tải và lên lịch các Skill và MCP server
  • Cung cấp quyền, sandbox và log
  • Host dưới nhiều dạng (CLI, plugin IDE, daemon, serverless)

Giải phẫu một Harness

Giải phẫu của một Harness tối thiểu (ví dụ Claude Code)

  1. system prompt → CLAUDE.md / giới thiệu repo
  2. tool loop → Read/Edit/Bash/Grep (bộ công cụ tích hợp)
  3. MCP clients → server ngoài qua cấu hình mcpServers
  4. skills → ~/.claude/skills/*.md (tải theo yêu cầu)
  5. runtime → REPL terminal / plugin VS Code / daemon gateway

Các triển khai Harness khác:

  • Codex CLI (openai/codex) — Harness terminal viết bằng Rust
  • OpenClaw — Harness gateway đa kênh đa nền tảng
  • Hermes Agent — Harness với vòng lặp học tập tích hợp
  • Cursor Agent — Harness nhúng trong IDE

Bốn yếu tố Kết hợp

MCP + Agent

MCP + Agent: Agent sử dụng giao thức MCP để gọi công cụ bên ngoài. Ví dụ: khi Agent cần đọc/ghi file, nó hoàn thành thông qua MCP filesystem server.

Agent + Skill

Agent + Skill: Skill là gói kỹ năng của Agent. Khi người dùng gọi một Skill cụ thể, Agent sử dụng các mẫu prompt và quy trình tương ứng.

Skill + MCP

Skill + MCP: Skill có thể đóng gói các lời gọi MCP phức tạp. Ví dụ: một Skill Triển khai có thể gọi các công cụ MCP Git + Docker + CLI.

Harness + ba thành phần

Harness + ba thành phần: Harness là host lắp ráp MCP/Agent/Skill. Sửa tệp cấu hình Harness (ví dụ claudedesktopconfig.json) giống như đấu dây lại host; viết một Skill mới giống như cắm một công cụ mới vào host. Claude Code, Codex CLI và Cursor Agent đều là các thể hiện của mô hình host + bộ ba này.

MCP là giao thức nền tảng, cho phép Agent giao tiếp với thế giới bên ngoài

Agent là thực thể thực thi, lập kế hoạch và thực hiện nhiệm vụ theo nhu cầu người dùng

Skill là phần mở rộng năng lực, giúp các nhiệm vụ cụ thể trở nên hiệu quả và chuyên nghiệp hơn

Harness là lớp runtime host tích hợp ba yếu tố trên thành một agent hoạt động được

Các khái niệm này thường tương tác nhưng không tạo thành stack bắt buộc hay hệ phân cấp phụ thuộc cứng. Ranh giới và cách triển khai khác nhau theo sản phẩm.