Coding cho Marketer: Clone MCP trong 30 phút
Hướng dẫn marketer tự clone và tùy chỉnh MCP server trong 30 phút không cần kinh nghiệm lập trình.
Lập trình cho nhà tiếp thị: Hướng dẫn từng bước với AI Coding Tools
Bạn là một marketer và nghĩ rằng lập trình là công việc của dân kỹ thuật? Hãy nghĩ lại! Với sự hỗ trợ của AI, bất kỳ ai cũng có thể tự tay xây dựng những công cụ hỗ trợ công việc của mình.
MCP là gì và tại sao bạn cần quan tâm?
MCP (Model Context Protocol) là một giao thức cho phép AI agent kết nối với các công cụ và dịch vụ bên ngoài. Nói đơn giản, MCP giúp AI có thể thực hiện các tác vụ thực tế như gửi email, tạo file, hoặc tương tác với các ứng dụng khác.
Chuẩn bị môi trường
Trước khi bắt đầu, bạn cần cài đặt một số công cụ cơ bản:
# Cài đặt Node.js
# Tải từ https://nodejs.org
# Kiểm tra cài đặt
node --version
# Cài đặt MCP SDK
npm install -g @modelcontextprotocol/sdk
# Cài đặt Node.js
# Tải từ https://nodejs.org
# Kiểm tra cài đặt
node --version
# Cài đặt MCP SDK
yarn global add @modelcontextprotocol/sdk
# Cài đặt Node.js
# Tải từ https://nodejs.org
# Kiểm tra cài đặt
node --version
# Cài đặt MCP SDK
pnpm add -g @modelcontextprotocol/sdk
Yêu cầu hệ thống
- Node.js phiên bản 18 trở lên
- npm hoặc yarn
- Một IDE như VS Code
Clone MCP Template
Thay vì viết từ đầu, chúng ta sẽ clone một template có sẵn và tùy chỉnh theo nhu cầu:
# Clone template
git clone https://github.com/openclaw/mcp-template my-mcp
# Di chuyển vào thư mục dự án
cd my-mcp
# Cài đặt dependencies
npm install
Cấu trúc dự án
Sau khi clone, bạn sẽ thấy cấu trúc thư mục như sau:
my-mcp/
├── src/
│ └── index.ts # File chính
├── package.json
├── tsconfig.json
└── README.md
Tùy chỉnh MCP Server
Đây là bước quan trọng nhất. Bạn cần định nghĩa các tools mà MCP server sẽ cung cấp:
import { Server } from '@modelcontextprotocol/sdk/server/index.js';
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
const server = new Server(
{
name: 'marketing-mcp',
version: '1.0.0',
},
{
capabilities: {
tools: {},
},
}
);
// Định nghĩa các tools
server.setRequestHandler('tools/list', async () => {
return {
tools: [
{
name: 'send_email',
description: 'Gửi email marketing',
inputSchema: {
type: 'object',
properties: {
to: { type: 'string', description: 'Địa chỉ email người nhận' },
subject: { type: 'string', description: 'Tiêu đề email' },
body: { type: 'string', description: 'Nội dung email' },
},
required: ['to', 'subject', 'body'],
},
},
],
};
});
Chạy MCP Server
Sau khi hoàn tất cấu hình, hãy chạy server:
# Chạy ở chế độ development
npm run dev
# Build và chạy production
npm run build
npm start
Kết nối với OpenClaw
Để sử dụng MCP server với OpenClaw, bạn cần thêm cấu hình vào file cấu hình:
{
"mcpServers": {
"marketing-tools": {
"command": "node",
"args": ["/path/to/my-mcp/dist/index.js"],
"env": {
"API_KEY": "your-api-key"
}
}
}
}
Các trường hợp sử dụng cho Marketer
1. Tự động hóa email marketing
Với MCP, bạn có thể tạo các kịch bản gửi email tự động dựa trên hành vi của khách hàng:
// Tạo tool gửi email tự động
async function sendWelcomeEmail(customerEmail: string, customerName: string) {
const emailContent = `
Xin chào ${customerName},
Cảm ơn bạn đã đăng ký!
Chúng tôi rất vui được có bạn.
`;
return await sendEmail({
to: customerEmail,
subject: 'Chào mừng bạn!',
body: emailContent
});
}
2. Tạo báo cáo tự động
Tự động tổng hợp dữ liệu từ nhiều nguồn và gửi báo cáo hàng ngày:
// Tool tạo báo cáo
async function generateDailyReport() {
// Lấy dữ liệu từ các nguồn
const analytics = await getAnalytics();
const sales = await getSalesData();
const campaigns = await getCampaignPerformance();
// Tạo báo cáo
const report = formatReport({ analytics, sales, campaigns });
// Gửi email
await sendEmail({
to: 'marketing-team@company.com',
subject: 'Báo cáo hàng ngày',
body: report
});
return 'Báo cáo đã được gửi thành công';
}
3. Quản lý social media
Đăng bài tự động lên nhiều platform cùng lúc:
// Tool đăng bài lên social media
async function publishSocialPost(platforms: string[], content: string, media?: string[]) {
const results = [];
for (const platform of platforms) {
const result = await postToPlatform(platform, content, media);
results.push({ platform, status: result.success });
}
return results;
}
Best Practices
1. Bảo mật
- Không hardcode API keys trong code
- Sử dụng environment variables
- Validate input từ users
- Implement rate limiting
2. Error Handling
try {
// Thực hiện operation
await performOperation();
} catch (error) {
// Log error
console.error('Operation failed:', error);
// Gửi thông báo lỗi
await notifyAdmin(error);
// Return safe error message
return { error: 'Đã xảy ra lỗi. Vui lòng thử lại sau.' };
}
3. Monitoring
Theo dõi hoạt động của MCP server để phát hiện vấn đề sớm:
// Logging
function logOperation(operation: string, success: boolean, duration: number) {
console.log(JSON.stringify({
timestamp: new Date().toISOString(),
operation,
success,
duration
}));
}
Kết luận
Với MCP, bạn không cần trở thành một lập trình viên để tự động hóa công việc marketing. Chỉ với 30 phút và một chút kiến thức cơ bản về lập trình, bạn có thể xây dựng những công cụ mạnh mẽ hỗ trợ công việc hàng ngày.