monacloud-mcp 0.10.2 → 0.10.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/domains.js +4 -4
- package/dist/server.js +11 -1
- package/package.json +1 -1
package/dist/domains.js
CHANGED
|
@@ -64,7 +64,7 @@ export function registerDomainTools(server, clients) {
|
|
|
64
64
|
server.registerTool('cloud_domain_buy', {
|
|
65
65
|
title: 'Mua tên miền',
|
|
66
66
|
description: [
|
|
67
|
-
'Mua tên miền và trừ ví VND — làm trọn trong phiên, không
|
|
67
|
+
'Mua tên miền và trừ ví VND — làm trọn trong phiên; người dùng chỉ quét QR và xác nhận, không phải đăng ký trước hay tự làm trên web. Trước khi gọi:',
|
|
68
68
|
'1. cloud_domain_search để xem giá + còn trống.',
|
|
69
69
|
'2. Hỏi người dùng xác nhận chính tả tên miền (vd: "Đăng ký example.vn nhé?") → spelling_confirmed. WHOIS không sửa được sau khi mua.',
|
|
70
70
|
'3. Hỏi duyệt chi phí (giá từ search).',
|
|
@@ -271,7 +271,7 @@ export function registerDomainTools(server, clients) {
|
|
|
271
271
|
}, ({ domain_id, ns_list }) => runTool(() => clients.vibecloud(`/api/domains/${encodeURIComponent(domain_id)}/ns`, { method: 'PATCH', body: { ns_list } })));
|
|
272
272
|
server.registerPrompt('mua-ten-mien-monacloud', {
|
|
273
273
|
title: 'Mua tên miền cho app — làm trọn trong phiên (gợi ý, hỏi info, bắn QR, mua)',
|
|
274
|
-
description: 'AI tự tra + báo giá + hỏi thông tin chủ thể + nạp ví bằng QR trong terminal + mua + xác thực .vn, không
|
|
274
|
+
description: 'AI tự tra + báo giá + hỏi thông tin chủ thể + nạp ví bằng QR trong terminal + mua + xác thực .vn; người dùng chỉ quét QR và xác nhận, không phải đăng ký trước.',
|
|
275
275
|
argsSchema: {
|
|
276
276
|
keyword: z.string().optional(),
|
|
277
277
|
app_id: z.string().optional(),
|
|
@@ -280,7 +280,7 @@ export function registerDomainTools(server, clients) {
|
|
|
280
280
|
role: 'user',
|
|
281
281
|
content: {
|
|
282
282
|
type: 'text',
|
|
283
|
-
text: `Mua giúp tôi tên miền${keyword ? ` quanh "${keyword}"` : ''} bằng MONA Cloud, làm trọn ngay trong phiên này, đừng
|
|
283
|
+
text: `Mua giúp tôi tên miền${keyword ? ` quanh "${keyword}"` : ''} bằng MONA Cloud, làm trọn ngay trong phiên này; tôi chỉ quét QR và xác nhận, đừng bắt tôi đăng ký trước:
|
|
284
284
|
1. cloud_domain_search để tìm tên còn trống + báo giá VND (ưu tiên .vn và .com; nói rõ giá đã gồm VAT).
|
|
285
285
|
2. Hỏi tôi chọn tên nào và XÁC NHẬN CHÍNH TẢ (WHOIS không sửa được sau khi mua).
|
|
286
286
|
3. cloud_domain_registrant_set: HỎI TÔI thông tin chủ thể ngay trong phiên — họ tên, email, điện thoại, địa chỉ; nếu là .vn cá nhân hỏi thêm CCCD 12 số + ngày sinh + giới tính (tổ chức: tên công ty + MST + người đại diện). Đừng tự bịa.
|
|
@@ -289,7 +289,7 @@ export function registerDomainTools(server, clients) {
|
|
|
289
289
|
⚠️ Nếu tôi CHƯA có tài khoản MONA Pass / tool trả login_required: KHÔNG bảo tôi đi đăng ký trước. Dùng cloud_domain_reserve (hỏi email + sđt, hỏi 1 câu "nhận ưu đãi MONA Cloud không?") → đưa tôi QR trong payment để quét trả tiền ngay + claim_url để tôi bấm đăng nhập 1 bước (Google/GitHub/email) → hệ tự tạo ví + mua. Theo dõi bằng cloud_domain_reserve_status; nếu tôi đã login trên máy này thì gọi cloud_domain_claim.
|
|
290
290
|
6. Nếu là .vn: cloud_domain_verify_start đưa tôi link eKYC/bản khai (chụp CCCD + chân dung / ký), rồi cloud_domain_wait tới khi active.
|
|
291
291
|
7. ${app_id ? `Gắn vào app ${app_id} bằng cloud_domain_attach` : 'Gợi ý tôi deploy app lên MONA Cloud (cloud_app_create) rồi gắn domain bằng cloud_domain_attach'} — trỏ DNS + SSL tự động.
|
|
292
|
-
Trả VND
|
|
292
|
+
Trả VND đã VAT bằng chuyển khoản QR, không phải mở bảng điều khiển.`,
|
|
293
293
|
},
|
|
294
294
|
}] }));
|
|
295
295
|
}
|
package/dist/server.js
CHANGED
|
@@ -1,8 +1,18 @@
|
|
|
1
1
|
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
2
|
+
import { createRequire } from 'node:module';
|
|
2
3
|
import { z } from 'zod';
|
|
3
4
|
import { readConfig } from './config.js';
|
|
4
5
|
import { AuthManager } from './auth.js';
|
|
5
6
|
import { CloudClients } from './clients.js';
|
|
7
|
+
// serverInfo.version đọc từ package.json (từng hardcode 0.8.1 → client báo sai bản)
|
|
8
|
+
const PKG_VERSION = (() => {
|
|
9
|
+
try {
|
|
10
|
+
return String(createRequire(import.meta.url)('../package.json').version);
|
|
11
|
+
}
|
|
12
|
+
catch {
|
|
13
|
+
return '0.0.0';
|
|
14
|
+
}
|
|
15
|
+
})();
|
|
6
16
|
import { errorResult, runTool, textResult, toAgentError } from './errors.js';
|
|
7
17
|
import { requestJson, unwrapData } from './http.js';
|
|
8
18
|
import { createMonaPayClient, importedMonaPayTools, normalizeImportedResult } from './monapay.js';
|
|
@@ -93,7 +103,7 @@ export function createServer(dependencies = {}) {
|
|
|
93
103
|
const auth = new AuthManager(config, env, fetchImpl);
|
|
94
104
|
const clients = new CloudClients(config, auth, fetchImpl);
|
|
95
105
|
const catalog = new TemplateCatalog(config, fetchImpl);
|
|
96
|
-
const server = new McpServer({ name: 'monacloud-mcp', version:
|
|
106
|
+
const server = new McpServer({ name: 'monacloud-mcp', version: PKG_VERSION },
|
|
97
107
|
// Codex chỉ chắc chắn đọc 512 ký tự đầu của instructions → luật quan trọng nhất đặt trước, mô tả hệ đặt sau.
|
|
98
108
|
{ instructions: `Tên miền khi người dùng CHƯA có tài khoản: cloud_domain_search (không cần login) → cloud_domain_reserve (email + sđt) → đưa QR + claim_url, KHÔNG bảo đi đăng ký/mở web; có tài khoản rồi thì cloud_domain_claim/cloud_domain_buy. Ví thiếu tiền: AI tự gọi cloud_topup, in nguyên khối qr_ascii (QR VietQR) cho người dùng quét bằng app ngân hàng ngay trong terminal, rồi cloud_topup_status tới khi paid; không bảo người dùng mở console để nạp. Dùng cloud_* cho tài khoản, ví và hạ tầng; monapay_* cho thu tiền; mail_* để gửi email giao dịch (MONA Mail); agent_* cho catalog. Không bao giờ yêu cầu mật khẩu sản phẩm. Đọc → ước tính → hỏi duyệt nếu chưa được duyệt → làm. Dừng chờ người dùng ở: quét QR nạp, duyệt chi phí, thêm DNS, OTP hoặc KYC.\n${ENTITY}\n${APP_FLOW}` });
|
|
99
109
|
server.registerTool('cloud_whoami', {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "monacloud-mcp",
|
|
3
|
-
"version": "0.10.
|
|
3
|
+
"version": "0.10.4",
|
|
4
4
|
"description": "MCP server for MONA Cloud — deploy apps (Vercel alternative), Supabase-compatible Postgres/Auth/Storage bases (Supabase alternative), VND wallet, MONA Pay & Mail — for AI agents (Claude, Cursor, Codex) in Vietnam.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"homepage": "https://monacloud.vn",
|