- vừa được xem lúc

Xây Dựng MCP Server Bằng TypeScript Sử Dụng MCP Framework

0 0 2

Người đăng: Son Dao Thai

Theo Viblo Asia

MCP là gì? Tại sao chọn MCP Framework?

Trong kỷ nguyên số, nhu cầu truyền thông dữ liệu giữa các thiết bị và hệ thống backend ngày càng cao. MCP (Message Communication Protocol) xuất hiện như một giao thức tối ưu dành cho việc truyền dữ liệu nhị gọn, dễ triển khai, và dễ tích hợp.

MCP Framework - một dự án mở nguồn trên GitHub do QuantGeekDev phát triển - giúc lập trình viên nhanh chóng xây dựng các MCP server bằng TypeScript. Framework này cung cấp sẵn các cấu trúc, middleware, router, message handler giúp tối ưu hóa quá trình xây dựng hệ thống giao tiếp qua giao thức MCP.

Mô Hình Hoạt Động Của MCP Server

MCP server hoạt động dựa trên nguyên lý xử lý message-based, thay vì RESTful API trực tiếp. Toàn bộ giao tiếp dựa trên message ID, command, payload, và response code.

Các thành phần chính trong MCP Server:

  • Transport Layer: Lớp giao tiếp dữ liệu, có thể là TCP/UDP/WebSocket tuỳ theo nhu cầu.

  • Router: Xác định message handler phù hợp dựa trên command/message type.

  • Message Handler: Thực hiện logic xử lý message.

  • Middleware: Cho phép chèn các bước xử lý trung gian như logging, auth, transform dữ liệu.

Luồng hoạt động như sau:

  1. Client gửi message (có command, payload).
  2. MCP Server nhận và parse message.
  3. Router tìm handler phù hợp.
  4. Handler xử lý payload, trả về response.
  5. Server đóng gói response, gửi lại cho client.
graph TD A[Client] -->|Send MCP Message| B[Transport Layer] B --> C[Middleware] C --> D[Router] D --> E[Message Handler] E --> F[Response Generator] F --> G[Transport Layer] G -->|Send Response| A

Hướng Dẫn Viết MCP Server Bằng TypeScript

Bước 1: Cài Đặt Dự Án

npm init -y
npm install @quantgeek/mcp-framework

Bước 2: Tạo Server Cơ Bản

// index.ts
import { MCPServer } from '@quantgeek/mcp-framework'; const server = new MCPServer({ port: 9000 }); server.start(() => { console.log('MCP Server listening on port 9000');
});

Bước 3: Đăng Ký Handler Cho Message

server.router.register('PING', async (ctx) => { ctx.send({ status: 'OK', data: 'PONG' });
});

Bước 4: Sử Dụng Middleware

server.use(async (ctx, next) => { console.log('Received:', ctx.message); await next(); console.log('Responded:', ctx.response);
});

Bước 5: Triển Khai Message Validator (tuỳ chọn)

server.router.register('LOGIN', async (ctx) => { const { username, password } = ctx.message.payload; // Logic đăng nhập if (username === 'admin' && password === '123') { ctx.send({ status: 'OK', token: 'abc123' }); } else { ctx.send({ status: 'FAIL', error: 'Invalid credentials' }); }
});

Bước 6: Khởi Động Server

tsc index.ts && node index.js

Kết luận

MCP là một giao thức truyền thông nhẹ, mỏ, linh hoạt, và MCP Framework mang đến cách tiếp cận nhị gọn và hiệu quả cao khi xây dựng server bằng TypeScript. Qua hướng dẫn trên, bạn đã có thể tạo ra một MCP server đơn giản và tuỳ chỉnh theo nhu cầu.

Bình luận

Bài viết tương tự

- vừa được xem lúc

Không còn ClickOps, giờ là TalkOps! Những MCP Servers hữu ích cho Devops Engineer

Mở đầu. Trong những tháng gần đây MCP Server nổi lên nhưng một chuẩn chung giúp các mô hình ngôn ngữ lớn (LLM) thực hiện được nhiều công việc thay cho người dùng.

0 0 11

- vừa được xem lúc

8 MCP Server Mã Nguồn Mở Mà Các Nhà Phát Triển Nên Sử Dụng

Việc tích hợp AI sinh ngữ vào IDE hoặc ứng dụng trò chuyện và cung cấp cho các agent các "công cụ" để thực hiện công việc đang trở thành một quy trình phổ biến. Model Context Protocol (MCP) là giao th

0 0 10

- vừa được xem lúc

Top 10 máy chủ MCP hàng đầu năm 2025

Bạn đã mệt mỏi với việc phải xây dựng các tích hợp tùy chỉnh cho từng công cụ AI trong hệ sinh thái công nghệ của mình? Bạn không đơn độc. Việc duy trì hàng tá kết nối riêng biệt chính là “kẻ giết chế

0 0 5