@bashcat/ai-image-chat-mcp 1.0.8 → 1.1.0

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/README.md CHANGED
@@ -6,9 +6,10 @@
6
6
 
7
7
  - 🖼️ **圖片生成**: 使用 AI 模型生成圖片
8
8
  - 💬 **對話完成**: 使用 AI 模型進行智能對話
9
- - **自動保存**: 生成的圖片會自動下載並保存到指定目錄
9
+ - 🚀 **阿里雲 DashScope**: 支援阿里雲 DashScope 高品質文生圖 API
10
+ - 📁 **自動保存**: 生成的圖片會自動下載並保存到指定目錄
10
11
  - 📝 **智能命名**: 檔名根據用戶的 prompt 自動生成
11
- - �🔐 **安全配置**: API 密鑰安全保存在 `.env` 文件中
12
+ - 🔐 **安全配置**: API 密鑰安全保存在 `.env` 文件中
12
13
  - 🎛️ **自定義提示**: 支持自定義系統提示詞,如未提供則使用預設值
13
14
 
14
15
  ## 安裝與設置
@@ -27,6 +28,9 @@ npm install
27
28
  AI_API_KEY=your_api_key_here
28
29
  AI_API_BASE_URL=https://api.laozhang.ai/v1
29
30
  AI_IMAGE_SAVE_PATH=/path/to/your/images/directory
31
+ ALI_API_KEY=your_ali_api_key_here
32
+ # 或者使用
33
+ DASHSCOPE_API_KEY=your_dashscope_api_key_here
30
34
  ```
31
35
 
32
36
  **環境變數說明:**
@@ -34,10 +38,13 @@ AI_IMAGE_SAVE_PATH=/path/to/your/images/directory
34
38
  - `AI_API_KEY`: 您的 AI API 密鑰(必須)
35
39
  - `AI_API_BASE_URL`: API 基礎 URL(可選,預設為 `https://api.laozhang.ai/v1`)
36
40
  - `AI_IMAGE_SAVE_PATH`: 圖片保存路徑(可選,預設為 `~/generated_images`)
41
+ - `ALI_API_KEY`: 阿里雲 DashScope API 密鑰(使用阿里雲功能時必須)
42
+ - `DASHSCOPE_API_KEY`: 阿里雲 DashScope API 密鑰的別名(與 ALI_API_KEY 二選一)
37
43
 
38
44
  **支持的 API 服務商:**
39
45
 
40
46
  - 老張 AI: `https://api.laozhang.ai/v1`
47
+ - 阿里雲 DashScope: `https://dashscope.aliyuncs.com/api/v1`
41
48
  - OpenAI: `https://api.openai.com/v1`
42
49
  - 其他 OpenAI 兼容的 API 服務
43
50
 
@@ -68,7 +75,8 @@ npm start
68
75
  "env": {
69
76
  "AI_API_KEY": "your_api_key_here",
70
77
  "AI_API_BASE_URL": "https://api.laozhang.ai/v1",
71
- "AI_IMAGE_SAVE_PATH": "/path/to/your/images/directory"
78
+ "AI_IMAGE_SAVE_PATH": "/path/to/your/images/directory",
79
+ "ALI_API_KEY": "your_ali_api_key_here"
72
80
  }
73
81
  }
74
82
  }
@@ -89,7 +97,8 @@ npm start
89
97
  "env": {
90
98
  "AI_API_KEY": "your_api_key_here",
91
99
  "AI_API_BASE_URL": "https://api.laozhang.ai/v1",
92
- "AI_IMAGE_SAVE_PATH": "/path/to/your/images/directory"
100
+ "AI_IMAGE_SAVE_PATH": "/path/to/your/images/directory",
101
+ "ALI_API_KEY": "your_ali_api_key_here"
93
102
  }
94
103
  }
95
104
  }
@@ -99,11 +108,13 @@ npm start
99
108
 
100
109
  ### 環境變數配置
101
110
 
102
- | 環境變數 | 必需 | 預設值 | 說明 |
103
- | -------------------- | ---- | ---------------------------- | ---------------- |
104
- | `AI_API_KEY` | ✅ | - | 您的 AI API 密鑰 |
105
- | `AI_API_BASE_URL` | ❌ | `https://api.laozhang.ai/v1` | API 基礎 URL |
106
- | `AI_IMAGE_SAVE_PATH` | ❌ | `~/generated_images` | 圖片保存路徑 |
111
+ | 環境變數 | 必需 | 預設值 | 說明 |
112
+ | -------------------- | ---- | ---------------------------- | ---------------------- |
113
+ | `AI_API_KEY` | ✅ | - | 您的 AI API 密鑰 |
114
+ | `AI_API_BASE_URL` | ❌ | `https://api.laozhang.ai/v1` | API 基礎 URL |
115
+ | `AI_IMAGE_SAVE_PATH` | ❌ | `~/generated_images` | 圖片保存路徑 |
116
+ | `ALI_API_KEY` | ❌ | - | 阿里雲 DashScope 密鑰 |
117
+ | `DASHSCOPE_API_KEY` | ❌ | - | 阿里雲密鑰的別名 |
107
118
 
108
119
  ### 圖片保存功能
109
120
 
@@ -117,7 +128,7 @@ npm start
117
128
 
118
129
  ### 1. generate_image
119
130
 
120
- 生成圖片的工具。
131
+ 使用老張 AI 生成圖片的工具。
121
132
 
122
133
  **參數:**
123
134
 
@@ -137,7 +148,46 @@ npm start
137
148
  }
138
149
  ```
139
150
 
140
- ### 2. chat_completion
151
+ ### 2. tongyi_wanxiang_generate_image (推薦)
152
+
153
+ 使用通義萬相文生圖完整生圖流程。
154
+
155
+ **參數:**
156
+
157
+ - `prompt` (必需): 正向提示詞
158
+ - `model` (可選): 模型選擇,可選值:
159
+ - `wanx2.1-t2i-turbo`: 速度快 (0.14元/張)
160
+ - `wanx2.1-t2i-plus`: 品質高 (0.20元/張)
161
+ - `wanx2.0-t2i-turbo`: 性價比高,擅長人像 (0.04元/張)
162
+ - `negative_prompt` (可選): 反向提示詞,預設為 "人物"
163
+ - `size` (可選): 圖像分辨率,預設為 "1024*1024"
164
+ - `n` (可選): 生成圖片數量 (1-4),預設為 1
165
+ - `seed` (可選): 隨機數種子
166
+ - `prompt_extend` (可選): 是否開啟智能改寫,預設為 true
167
+ - `watermark` (可選): 是否添加水印,預設為 false
168
+ - `output_format` (可選): 輸出格式,預設為 "jpg"
169
+ - `max_wait_minutes` (可選): 最大等待時間(分鐘),預設為 5
170
+
171
+ **範例:**
172
+
173
+ ```json
174
+ {
175
+ "prompt": "一隻可愛的橘貓坐在櫻花樹下,春天的陽光灑在它身上",
176
+ "model": "wanx2.1-t2i-plus",
177
+ "size": "1024*1024",
178
+ "output_format": "png"
179
+ }
180
+ ```
181
+
182
+ ### 3. tongyi_wanxiang_create_task
183
+
184
+ 創建通義萬相文生圖任務。
185
+
186
+ ### 4. tongyi_wanxiang_query_task
187
+
188
+ 查詢通義萬相文生圖任務結果。
189
+
190
+ ### 5. chat_completion
141
191
 
142
192
  進行對話的工具。
143
193
 
@@ -200,12 +250,33 @@ laozhang_mcp/
200
250
  └── README.md # 說明文檔
201
251
  ```
202
252
 
253
+ ## 通義萬相文生圖集成
254
+
255
+ 本工具支援阿里雲通義萬相文生圖V2版本的三種模型。詳細說明請參考:
256
+ - [通義萬相使用指南](./TONGYI_WANXIANG_GUIDE.md) - 新版詳細指南
257
+ - [DASHSCOPE_INTEGRATION.md](./DASHSCOPE_INTEGRATION.md) - 原版集成說明
258
+
259
+ ### 模型對比
260
+
261
+ | 模型 | 特點 | 價格 | 適用場景 |
262
+ |------|------|------|----------|
263
+ | wanx2.1-t2i-turbo | 速度快 | 0.14元/張 | 快速生成 |
264
+ | wanx2.1-t2i-plus | 品質高 | 0.20元/張 | 精細作品 |
265
+ | wanx2.0-t2i-turbo | 性價比高 | 0.04元/張 | 人像專長 |
266
+
267
+ ### 快速開始
268
+
269
+ 1. 在 [阿里雲百炼平台](https://dashscope.aliyuncs.com/) 獲取 API Key
270
+ 2. 設置環境變數 `ALI_API_KEY`
271
+ 3. 使用 `tongyi_wanxiang_generate_image` 工具生成圖片
272
+
203
273
  ## 注意事項
204
274
 
205
275
  1. 請確保你有有效的 AI API 密鑰
206
- 2. 不要將 `.env` 文件提交到版本控制系統
207
- 3. 圖片生成可能需要較長時間,請耐心等待
208
- 4. API 有使用限制,請適度使用
276
+ 2. 使用阿里雲功能需要設置 `ALI_API_KEY` 或 `DASHSCOPE_API_KEY`
277
+ 3. 不要將 `.env` 文件提交到版本控制系統
278
+ 4. 圖片生成可能需要較長時間,請耐心等待
279
+ 5. API 有使用限制,請適度使用
209
280
 
210
281
  ## 許可證
211
282
 
@@ -0,0 +1,119 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * 老張 MCP 工具使用範例
4
+ *
5
+ * 這個文件展示如何與老張 MCP 工具進行交互
6
+ */
7
+ import { spawn } from 'child_process';
8
+ // 模擬 MCP 客戶端
9
+ class MCPClient {
10
+ serverProcess;
11
+ async start() {
12
+ console.log('🚀 啟動老張 MCP 服務器...');
13
+ // 啟動 MCP 服務器
14
+ this.serverProcess = spawn('node', ['dist/index.js'], {
15
+ stdio: ['pipe', 'pipe', 'inherit'],
16
+ cwd: process.cwd()
17
+ });
18
+ // 等待服務器初始化
19
+ await new Promise(resolve => setTimeout(resolve, 1000));
20
+ console.log('✅ 服務器已啟動\n');
21
+ // 發送初始化請求
22
+ await this.sendRequest({
23
+ jsonrpc: "2.0",
24
+ id: 1,
25
+ method: "initialize",
26
+ params: {
27
+ protocolVersion: "2024-11-05",
28
+ capabilities: {},
29
+ clientInfo: {
30
+ name: "example-client",
31
+ version: "1.0.0"
32
+ }
33
+ }
34
+ });
35
+ // 列出可用工具
36
+ await this.listTools();
37
+ // 示例:生成圖片
38
+ await this.generateImage();
39
+ // 示例:對話完成
40
+ await this.chatCompletion();
41
+ this.stop();
42
+ }
43
+ async sendRequest(request) {
44
+ return new Promise((resolve, reject) => {
45
+ const requestStr = JSON.stringify(request) + '\n';
46
+ this.serverProcess.stdin.write(requestStr);
47
+ // 監聽響應
48
+ this.serverProcess.stdout.once('data', (data) => {
49
+ try {
50
+ const response = JSON.parse(data.toString().trim());
51
+ resolve(response);
52
+ }
53
+ catch (error) {
54
+ reject(error);
55
+ }
56
+ });
57
+ });
58
+ }
59
+ async listTools() {
60
+ console.log('📋 獲取可用工具列表...');
61
+ const response = await this.sendRequest({
62
+ jsonrpc: "2.0",
63
+ id: 2,
64
+ method: "tools/list"
65
+ });
66
+ console.log('可用工具:');
67
+ response.result.tools.forEach((tool) => {
68
+ console.log(` - ${tool.name}: ${tool.description}`);
69
+ });
70
+ console.log('');
71
+ }
72
+ async generateImage() {
73
+ console.log('🖼️ 生成圖片示例...');
74
+ const response = await this.sendRequest({
75
+ jsonrpc: "2.0",
76
+ id: 3,
77
+ method: "tools/call",
78
+ params: {
79
+ name: "generate_image",
80
+ arguments: {
81
+ prompt: "生成一張卡通風格的熊貓宇航員圖片,背景是星空",
82
+ system_prompt: "You are a creative image generator that creates beautiful and detailed images.",
83
+ model: "gpt-image-1"
84
+ }
85
+ }
86
+ });
87
+ console.log('圖片生成結果:');
88
+ console.log(response.result.content[0].text);
89
+ console.log('');
90
+ }
91
+ async chatCompletion() {
92
+ console.log('💬 對話完成示例...');
93
+ const response = await this.sendRequest({
94
+ jsonrpc: "2.0",
95
+ id: 4,
96
+ method: "tools/call",
97
+ params: {
98
+ name: "chat_completion",
99
+ arguments: {
100
+ message: "請幫我寫一首關於春天的詩",
101
+ system_prompt: "You are a professional poet who writes beautiful Chinese poetry.",
102
+ model: "gpt-4"
103
+ }
104
+ }
105
+ });
106
+ console.log('對話回覆:');
107
+ console.log(response.result.content[0].text);
108
+ console.log('');
109
+ }
110
+ stop() {
111
+ console.log('🛑 停止服務器...');
112
+ if (this.serverProcess) {
113
+ this.serverProcess.kill();
114
+ }
115
+ }
116
+ }
117
+ // 運行示例
118
+ const client = new MCPClient();
119
+ client.start().catch(console.error);
package/dist/index.js CHANGED
@@ -15,6 +15,7 @@ class AIImageChatMCPServer {
15
15
  apiKey;
16
16
  baseUrl;
17
17
  saveDirectory;
18
+ dashScopeApiKey;
18
19
  constructor() {
19
20
  this.server = new Server({
20
21
  name: "ai-image-chat-mcp-server",
@@ -28,6 +29,8 @@ class AIImageChatMCPServer {
28
29
  this.apiKey = process.env.AI_API_KEY || "";
29
30
  this.baseUrl = process.env.AI_API_BASE_URL || "https://api.laozhang.ai/v1";
30
31
  this.saveDirectory = process.env.AI_IMAGE_SAVE_PATH || path.join(os.homedir(), "generated_images");
32
+ // 支援 ALI_API_KEY 和 DASHSCOPE_API_KEY 兩種環境變數名稱
33
+ this.dashScopeApiKey = process.env.ALI_API_KEY || process.env.DASHSCOPE_API_KEY || "";
31
34
  if (!this.apiKey) {
32
35
  throw new Error("AI_API_KEY 環境變數未設定");
33
36
  }
@@ -102,6 +105,106 @@ class AIImageChatMCPServer {
102
105
  }
103
106
  return null;
104
107
  }
108
+ // 阿里雲 DashScope 創建任務
109
+ async createDashScopeTask(prompt, negativePrompt, options) {
110
+ if (!this.dashScopeApiKey) {
111
+ throw new Error("ALI_API_KEY 或 DASHSCOPE_API_KEY 環境變數未設定");
112
+ }
113
+ const requestData = {
114
+ model: options?.model || "wanx2.1-t2i-turbo",
115
+ input: {
116
+ prompt,
117
+ negative_prompt: negativePrompt || "人物",
118
+ },
119
+ parameters: {
120
+ size: options?.size || "1024*1024",
121
+ n: options?.n || 1,
122
+ seed: options?.seed,
123
+ prompt_extend: options?.promptExtend !== false,
124
+ watermark: options?.watermark || false,
125
+ },
126
+ };
127
+ try {
128
+ const response = await axios.post("https://dashscope.aliyuncs.com/api/v1/services/aigc/text2image/image-synthesis", requestData, {
129
+ headers: {
130
+ "Content-Type": "application/json",
131
+ "Authorization": `Bearer ${this.dashScopeApiKey}`,
132
+ "X-DashScope-Async": "enable",
133
+ },
134
+ });
135
+ return response.data;
136
+ }
137
+ catch (error) {
138
+ if (axios.isAxiosError(error)) {
139
+ const axiosError = error;
140
+ const errorMessage = axiosError.response?.data?.message || axiosError.message;
141
+ throw new Error(`阿里雲 DashScope 創建任務失敗: ${errorMessage}`);
142
+ }
143
+ throw new Error(`創建任務時發生未知錯誤: ${error}`);
144
+ }
145
+ }
146
+ // 阿里雲 DashScope 查詢任務結果
147
+ async queryDashScopeTask(taskId) {
148
+ if (!this.dashScopeApiKey) {
149
+ throw new Error("ALI_API_KEY 或 DASHSCOPE_API_KEY 環境變數未設定");
150
+ }
151
+ try {
152
+ const response = await axios.get(`https://dashscope.aliyuncs.com/api/v1/tasks/${taskId}`, {
153
+ headers: {
154
+ "Authorization": `Bearer ${this.dashScopeApiKey}`,
155
+ },
156
+ });
157
+ return response.data;
158
+ }
159
+ catch (error) {
160
+ if (axios.isAxiosError(error)) {
161
+ const axiosError = error;
162
+ const errorMessage = axiosError.response?.data?.message || axiosError.message;
163
+ throw new Error(`阿里雲 DashScope 查詢任務失敗: ${errorMessage}`);
164
+ }
165
+ throw new Error(`查詢任務時發生未知錯誤: ${error}`);
166
+ }
167
+ }
168
+ // 阿里雲 DashScope 完整生圖流程
169
+ async generateImageWithDashScope(prompt, negativePrompt, options) {
170
+ // 步驟1: 創建任務
171
+ const createResponse = await this.createDashScopeTask(prompt, negativePrompt, options);
172
+ const taskId = createResponse.output.task_id;
173
+ if (!taskId) {
174
+ throw new Error("創建任務失敗,未獲取到任務ID");
175
+ }
176
+ // 步驟2: 輪詢查詢結果
177
+ const maxWaitMinutes = options?.maxWaitMinutes || 5; // 預設最多等待5分鐘
178
+ const maxAttempts = maxWaitMinutes * 6; // 每10秒查詢一次
179
+ let attempts = 0;
180
+ while (attempts < maxAttempts) {
181
+ const queryResponse = await this.queryDashScopeTask(taskId);
182
+ const taskStatus = queryResponse.output.task_status;
183
+ if (taskStatus === "SUCCEEDED") {
184
+ const results = queryResponse.output.results || [];
185
+ const imageUrls = results.map(result => result.url);
186
+ // 下載並保存圖片
187
+ const savedPaths = [];
188
+ for (let i = 0; i < imageUrls.length; i++) {
189
+ const url = imageUrls[i];
190
+ const filename = this.generateFilename(prompt, options?.outputFormat || 'jpg');
191
+ const savedPath = await this.downloadAndSaveImage(url, filename, options?.outputFormat || 'jpg');
192
+ savedPaths.push(savedPath);
193
+ }
194
+ return savedPaths;
195
+ }
196
+ else if (taskStatus === "FAILED") {
197
+ throw new Error(`圖片生成失敗: ${queryResponse.output.message || "未知錯誤"}`);
198
+ }
199
+ else if (taskStatus === "CANCELED") {
200
+ throw new Error("任務已被取消");
201
+ }
202
+ // 等待10秒後再次查詢
203
+ await new Promise(resolve => setTimeout(resolve, 10000));
204
+ attempts++;
205
+ }
206
+ throw new Error(`圖片生成超時,等待時間超過 ${maxWaitMinutes} 分鐘`);
207
+ }
105
208
  setupToolHandlers() {
106
209
  // 列出可用工具
107
210
  this.server.setRequestHandler(ListToolsRequestSchema, async () => {
@@ -137,6 +240,139 @@ class AIImageChatMCPServer {
137
240
  required: ["prompt"],
138
241
  },
139
242
  },
243
+ {
244
+ name: "tongyi_wanxiang_create_task",
245
+ description: "使用通義萬相文生圖創建圖像生成任務",
246
+ inputSchema: {
247
+ type: "object",
248
+ properties: {
249
+ prompt: {
250
+ type: "string",
251
+ description: "正向提示詞,用來描述生成圖像中期望包含的元素和視覺特點",
252
+ },
253
+ model: {
254
+ type: "string",
255
+ description: "模型名稱",
256
+ enum: ["wanx2.1-t2i-turbo", "wanx2.1-t2i-plus", "wanx2.0-t2i-turbo"],
257
+ default: "wanx2.1-t2i-turbo",
258
+ },
259
+ negative_prompt: {
260
+ type: "string",
261
+ description: "反向提示詞,用來描述不希望在畫面中看到的內容(可選,預設為「人物」)",
262
+ default: "人物",
263
+ },
264
+ size: {
265
+ type: "string",
266
+ description: "輸出圖像的分辨率(可選,預設為 1024*1024)",
267
+ default: "1024*1024",
268
+ },
269
+ n: {
270
+ type: "number",
271
+ description: "生成圖片的數量(可選,範圍 1-4,預設為 1)",
272
+ minimum: 1,
273
+ maximum: 4,
274
+ default: 1,
275
+ },
276
+ seed: {
277
+ type: "number",
278
+ description: "隨機數種子,用於控制模型生成內容的隨機性(可選)",
279
+ minimum: 0,
280
+ maximum: 2147483647,
281
+ },
282
+ prompt_extend: {
283
+ type: "boolean",
284
+ description: "是否開啟 prompt 智能改寫(可選,預設為 true)",
285
+ default: true,
286
+ },
287
+ watermark: {
288
+ type: "boolean",
289
+ description: "是否添加水印標識(可選,預設為 false)",
290
+ default: false,
291
+ },
292
+ },
293
+ required: ["prompt"],
294
+ },
295
+ },
296
+ {
297
+ name: "tongyi_wanxiang_query_task",
298
+ description: "查詢通義萬相文生圖任務結果",
299
+ inputSchema: {
300
+ type: "object",
301
+ properties: {
302
+ task_id: {
303
+ type: "string",
304
+ description: "任務 ID",
305
+ },
306
+ },
307
+ required: ["task_id"],
308
+ },
309
+ },
310
+ {
311
+ name: "tongyi_wanxiang_generate_image",
312
+ description: "使用通義萬相文生圖完整生圖流程(創建任務 + 等待完成 + 下載保存)",
313
+ inputSchema: {
314
+ type: "object",
315
+ properties: {
316
+ prompt: {
317
+ type: "string",
318
+ description: "正向提示詞,用來描述生成圖像中期望包含的元素和視覺特點",
319
+ },
320
+ model: {
321
+ type: "string",
322
+ description: "模型名稱 - turbo速度快(0.14元/張),plus細節豐富(0.20元/張),2.0性價比高(0.04元/張)",
323
+ enum: ["wanx2.1-t2i-turbo", "wanx2.1-t2i-plus", "wanx2.0-t2i-turbo"],
324
+ default: "wanx2.1-t2i-turbo",
325
+ },
326
+ negative_prompt: {
327
+ type: "string",
328
+ description: "反向提示詞,用來描述不希望在畫面中看到的內容(可選,預設為「人物」)",
329
+ default: "人物",
330
+ },
331
+ size: {
332
+ type: "string",
333
+ description: "輸出圖像的分辨率(可選,預設為 1024*1024)",
334
+ default: "1024*1024",
335
+ },
336
+ n: {
337
+ type: "number",
338
+ description: "生成圖片的數量(可選,範圍 1-4,預設為 1)",
339
+ minimum: 1,
340
+ maximum: 4,
341
+ default: 1,
342
+ },
343
+ seed: {
344
+ type: "number",
345
+ description: "隨機數種子,用於控制模型生成內容的隨機性(可選)",
346
+ minimum: 0,
347
+ maximum: 2147483647,
348
+ },
349
+ prompt_extend: {
350
+ type: "boolean",
351
+ description: "是否開啟 prompt 智能改寫(可選,預設為 true)",
352
+ default: true,
353
+ },
354
+ watermark: {
355
+ type: "boolean",
356
+ description: "是否添加水印標識(可選,預設為 false)",
357
+ default: false,
358
+ },
359
+ output_format: {
360
+ type: "string",
361
+ description: "輸出圖片格式(可選,預設為 jpg)",
362
+ enum: ["jpg", "jpeg", "png", "webp"],
363
+ default: "jpg",
364
+ },
365
+ max_wait_minutes: {
366
+ type: "number",
367
+ description: "最大等待時間(分鐘,可選,預設為 5 分鐘)",
368
+ minimum: 1,
369
+ maximum: 10,
370
+ default: 5,
371
+ },
372
+ },
373
+ required: ["prompt"],
374
+ },
375
+ },
140
376
  {
141
377
  name: "chat_completion",
142
378
  description: "使用 AI 進行對話",
@@ -170,6 +406,19 @@ class AIImageChatMCPServer {
170
406
  switch (name) {
171
407
  case "generate_image":
172
408
  return await this.handleImageGeneration(args);
409
+ case "tongyi_wanxiang_create_task":
410
+ return await this.handleTongyiWanxiangCreateTask(args);
411
+ case "tongyi_wanxiang_query_task":
412
+ return await this.handleTongyiWanxiangQueryTask(args);
413
+ case "tongyi_wanxiang_generate_image":
414
+ return await this.handleTongyiWanxiangGenerateImage(args);
415
+ // 保持向後兼容
416
+ case "dashscope_create_task":
417
+ return await this.handleTongyiWanxiangCreateTask(args);
418
+ case "dashscope_query_task":
419
+ return await this.handleTongyiWanxiangQueryTask(args);
420
+ case "dashscope_generate_image":
421
+ return await this.handleTongyiWanxiangGenerateImage(args);
173
422
  case "chat_completion":
174
423
  return await this.handleChatCompletion(args);
175
424
  default:
@@ -242,6 +491,142 @@ class AIImageChatMCPServer {
242
491
  throw new McpError(ErrorCode.InternalError, `未知錯誤: ${error instanceof Error ? error.message : String(error)}`);
243
492
  }
244
493
  }
494
+ async handleTongyiWanxiangCreateTask(args) {
495
+ const { prompt, model, negative_prompt, size, n, seed, prompt_extend, watermark } = args;
496
+ if (!prompt) {
497
+ throw new McpError(ErrorCode.InvalidParams, "需要提供 prompt 參數");
498
+ }
499
+ try {
500
+ const response = await this.createDashScopeTask(prompt, negative_prompt, {
501
+ model,
502
+ size,
503
+ n,
504
+ seed,
505
+ promptExtend: prompt_extend,
506
+ watermark,
507
+ });
508
+ return {
509
+ content: [
510
+ {
511
+ type: "text",
512
+ text: `通義萬相文生圖任務創建成功!\n\n任務ID: ${response.output.task_id}\n任務狀態: ${response.output.task_status}\n使用模型: ${model || 'wanx2.1-t2i-turbo'}\n請求ID: ${response.request_id}\n\n請使用 tongyi_wanxiang_query_task 工具查詢任務結果。`,
513
+ },
514
+ ],
515
+ };
516
+ }
517
+ catch (error) {
518
+ throw new McpError(ErrorCode.InternalError, `創建任務失敗: ${error instanceof Error ? error.message : String(error)}`);
519
+ }
520
+ }
521
+ async handleTongyiWanxiangQueryTask(args) {
522
+ const { task_id } = args;
523
+ if (!task_id) {
524
+ throw new McpError(ErrorCode.InvalidParams, "需要提供 task_id 參數");
525
+ }
526
+ try {
527
+ const response = await this.queryDashScopeTask(task_id);
528
+ const { output } = response;
529
+ let responseText = `通義萬相文生圖任務查詢結果:\n\n`;
530
+ responseText += `任務ID: ${output.task_id}\n`;
531
+ responseText += `任務狀態: ${output.task_status}\n`;
532
+ responseText += `請求ID: ${response.request_id}\n`;
533
+ if (output.submit_time) {
534
+ responseText += `提交時間: ${output.submit_time}\n`;
535
+ }
536
+ if (output.scheduled_time) {
537
+ responseText += `開始時間: ${output.scheduled_time}\n`;
538
+ }
539
+ if (output.end_time) {
540
+ responseText += `完成時間: ${output.end_time}\n`;
541
+ }
542
+ if (output.task_status === "SUCCEEDED" && output.results) {
543
+ responseText += `\n✅ 任務完成!生成了 ${output.results.length} 張圖片:\n`;
544
+ output.results.forEach((result, index) => {
545
+ responseText += `\n圖片 ${index + 1}:\n`;
546
+ responseText += `原始提示詞: ${result.orig_prompt}\n`;
547
+ if (result.actual_prompt) {
548
+ responseText += `優化後提示詞: ${result.actual_prompt}\n`;
549
+ }
550
+ responseText += `圖片URL: ${result.url}\n`;
551
+ });
552
+ if (output.task_metrics) {
553
+ responseText += `\n📊 任務統計:\n`;
554
+ responseText += `總計: ${output.task_metrics.TOTAL}\n`;
555
+ responseText += `成功: ${output.task_metrics.SUCCEEDED}\n`;
556
+ responseText += `失敗: ${output.task_metrics.FAILED}\n`;
557
+ }
558
+ }
559
+ else if (output.task_status === "FAILED") {
560
+ responseText += `\n❌ 任務失敗\n`;
561
+ if (output.message) {
562
+ responseText += `錯誤訊息: ${output.message}\n`;
563
+ }
564
+ }
565
+ else if (output.task_status === "PENDING") {
566
+ responseText += `\n⏳ 任務排隊中,請稍後再次查詢\n`;
567
+ }
568
+ else if (output.task_status === "RUNNING") {
569
+ responseText += `\n🔄 任務處理中,請稍後再次查詢\n`;
570
+ }
571
+ return {
572
+ content: [
573
+ {
574
+ type: "text",
575
+ text: responseText,
576
+ },
577
+ ],
578
+ };
579
+ }
580
+ catch (error) {
581
+ throw new McpError(ErrorCode.InternalError, `查詢任務失敗: ${error instanceof Error ? error.message : String(error)}`);
582
+ }
583
+ }
584
+ async handleTongyiWanxiangGenerateImage(args) {
585
+ const { prompt, model, negative_prompt, size, n, seed, prompt_extend, watermark, output_format, max_wait_minutes } = args;
586
+ if (!prompt) {
587
+ throw new McpError(ErrorCode.InvalidParams, "需要提供 prompt 參數");
588
+ }
589
+ // 模型資訊
590
+ const modelInfo = {
591
+ 'wanx2.1-t2i-turbo': { name: '通義萬相2.1-Turbo', price: '0.14元/張', feature: '生成速度更快' },
592
+ 'wanx2.1-t2i-plus': { name: '通義萬相2.1-Plus', price: '0.20元/張', feature: '圖像細節更豐富' },
593
+ 'wanx2.0-t2i-turbo': { name: '通義萬相2.0-Turbo', price: '0.04元/張', feature: '質感人像與創意設計' }
594
+ };
595
+ const selectedModel = model || 'wanx2.1-t2i-turbo';
596
+ const modelDesc = modelInfo[selectedModel];
597
+ try {
598
+ const savedPaths = await this.generateImageWithDashScope(prompt, negative_prompt, {
599
+ model: selectedModel,
600
+ size,
601
+ n,
602
+ seed,
603
+ promptExtend: prompt_extend,
604
+ watermark,
605
+ outputFormat: output_format,
606
+ maxWaitMinutes: max_wait_minutes,
607
+ });
608
+ let responseText = `通義萬相文生圖像生成完成!\n\n`;
609
+ responseText += `🎨 使用模型: ${modelDesc.name} (${modelDesc.feature})\n`;
610
+ responseText += `💰 計費: ${modelDesc.price}\n`;
611
+ responseText += `✅ 成功生成 ${savedPaths.length} 張圖片\n`;
612
+ responseText += `📁 輸出格式: ${(output_format || 'jpg').toUpperCase()}\n\n`;
613
+ responseText += `保存路徑:\n`;
614
+ savedPaths.forEach((path, index) => {
615
+ responseText += `${index + 1}. ${path}\n`;
616
+ });
617
+ return {
618
+ content: [
619
+ {
620
+ type: "text",
621
+ text: responseText,
622
+ },
623
+ ],
624
+ };
625
+ }
626
+ catch (error) {
627
+ throw new McpError(ErrorCode.InternalError, `生成圖片失敗: ${error instanceof Error ? error.message : String(error)}`);
628
+ }
629
+ }
245
630
  async handleChatCompletion(args) {
246
631
  const { message, system_prompt = "You are a helpful assistant.", model = "gpt-4" } = args;
247
632
  if (!message) {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@bashcat/ai-image-chat-mcp",
3
- "version": "1.0.8",
4
- "description": "MCP server for AI image generation and chat completion with support for multiple AI providers",
3
+ "version": "1.1.0",
4
+ "description": "MCP server for AI image generation and chat completion with support for multiple AI providers including Tongyi Wanxiang",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
7
7
  "ai-image-chat-mcp": "dist/index.js"
@@ -33,7 +33,10 @@
33
33
  "ai",
34
34
  "image-generation",
35
35
  "chat",
36
- "openai-compatible"
36
+ "openai-compatible",
37
+ "tongyi-wanxiang",
38
+ "dashscope",
39
+ "alibaba-cloud"
37
40
  ],
38
41
  "author": "bashcat",
39
42
  "license": "MIT",