@bashcat/ai-image-chat-mcp 1.0.6 → 1.0.7
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 +10 -6
- package/dist/index.js +45 -14
- package/dist/index.js.map +1 -1
- package/package.json +4 -2
package/README.md
CHANGED
|
@@ -99,17 +99,19 @@ npm start
|
|
|
99
99
|
|
|
100
100
|
### 環境變數配置
|
|
101
101
|
|
|
102
|
-
| 環境變數
|
|
103
|
-
|
|
104
|
-
| `AI_API_KEY`
|
|
105
|
-
| `AI_API_BASE_URL`
|
|
106
|
-
| `AI_IMAGE_SAVE_PATH` | ❌
|
|
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` | 圖片保存路徑 |
|
|
107
107
|
|
|
108
108
|
### 圖片保存功能
|
|
109
109
|
|
|
110
110
|
- 🖼️ **自動下載**: 生成的圖片會自動下載到指定目錄
|
|
111
111
|
- 📝 **智能命名**: 檔名根據 prompt 自動生成,例如:`台灣男性工程師-2025-06-29T04-40-40-978Z.jpg`
|
|
112
112
|
- 📁 **目錄創建**: 如果指定目錄不存在,會自動創建
|
|
113
|
+
- 🔄 **格式轉換**: 支援 PNG 自動轉換為 JPG,也支援保持原始格式或轉換為 WebP
|
|
114
|
+
- 🎨 **多格式支援**: 支援 JPG、PNG、WebP 輸出格式
|
|
113
115
|
|
|
114
116
|
## 可用工具
|
|
115
117
|
|
|
@@ -122,6 +124,7 @@ npm start
|
|
|
122
124
|
- `prompt` (必需): 圖片生成的提示詞
|
|
123
125
|
- `system_prompt` (可選): 系統提示詞,預設為 "You are a helpful assistant that generates images."
|
|
124
126
|
- `model` (可選): 模型名稱,可選 "gpt-image-1" 或 "gpt-4o-image",預設為 "gpt-4o-image"
|
|
127
|
+
- `output_format` (可選): 輸出圖片格式,可選 "jpg"、"jpeg"、"png"、"webp",預設為 "jpg"
|
|
125
128
|
|
|
126
129
|
**範例:**
|
|
127
130
|
|
|
@@ -129,7 +132,8 @@ npm start
|
|
|
129
132
|
{
|
|
130
133
|
"prompt": "生成一張卡通風格的熊貓宇航員圖片,背景是星空",
|
|
131
134
|
"system_prompt": "You are a creative image generator.",
|
|
132
|
-
"model": "gpt-4o-image"
|
|
135
|
+
"model": "gpt-4o-image",
|
|
136
|
+
"output_format": "png"
|
|
133
137
|
}
|
|
134
138
|
```
|
|
135
139
|
|
package/dist/index.js
CHANGED
|
@@ -7,6 +7,7 @@ import axios from "axios";
|
|
|
7
7
|
import * as fs from "fs";
|
|
8
8
|
import * as path from "path";
|
|
9
9
|
import * as os from "os";
|
|
10
|
+
import sharp from "sharp";
|
|
10
11
|
// 載入環境變數
|
|
11
12
|
dotenv.config();
|
|
12
13
|
class AIImageChatMCPServer {
|
|
@@ -36,28 +37,51 @@ class AIImageChatMCPServer {
|
|
|
36
37
|
}
|
|
37
38
|
this.setupToolHandlers();
|
|
38
39
|
}
|
|
39
|
-
generateFilename(prompt) {
|
|
40
|
+
generateFilename(prompt, outputFormat = 'jpg') {
|
|
40
41
|
// 清理 prompt 作為檔名,移除特殊字符並限制長度
|
|
41
42
|
const cleanPrompt = prompt
|
|
42
43
|
.replace(/[^\w\s\u4e00-\u9fff]/g, '') // 保留字母、數字、空格和中文字符
|
|
43
44
|
.replace(/\s+/g, '-') // 將空格替換為連字符
|
|
44
45
|
.substring(0, 50); // 限制長度為50字符
|
|
45
46
|
const timestamp = new Date().toISOString().replace(/[:.]/g, '-');
|
|
46
|
-
|
|
47
|
+
// 確保輸出格式為小寫
|
|
48
|
+
const extension = outputFormat.toLowerCase() === 'jpeg' ? 'jpg' : outputFormat.toLowerCase();
|
|
49
|
+
return `${cleanPrompt}-${timestamp}.${extension}`;
|
|
47
50
|
}
|
|
48
|
-
async downloadAndSaveImage(imageUrl, filename) {
|
|
51
|
+
async downloadAndSaveImage(imageUrl, filename, outputFormat = 'jpg') {
|
|
49
52
|
try {
|
|
50
|
-
const response = await axios.get(imageUrl, { responseType: '
|
|
53
|
+
const response = await axios.get(imageUrl, { responseType: 'arraybuffer' });
|
|
51
54
|
const filePath = path.join(this.saveDirectory, filename);
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
55
|
+
// 根據輸出格式處理圖片
|
|
56
|
+
const normalizedFormat = outputFormat.toLowerCase() === 'jpeg' ? 'jpg' : outputFormat.toLowerCase();
|
|
57
|
+
if (normalizedFormat === 'jpg' || normalizedFormat === 'jpeg') {
|
|
58
|
+
// 轉換為 JPG 格式
|
|
59
|
+
await sharp(Buffer.from(response.data))
|
|
60
|
+
.jpeg({ quality: 90 })
|
|
61
|
+
.toFile(filePath);
|
|
62
|
+
}
|
|
63
|
+
else if (normalizedFormat === 'png') {
|
|
64
|
+
// 保持 PNG 格式
|
|
65
|
+
await sharp(Buffer.from(response.data))
|
|
66
|
+
.png()
|
|
67
|
+
.toFile(filePath);
|
|
68
|
+
}
|
|
69
|
+
else if (normalizedFormat === 'webp') {
|
|
70
|
+
// 轉換為 WebP 格式
|
|
71
|
+
await sharp(Buffer.from(response.data))
|
|
72
|
+
.webp({ quality: 90 })
|
|
73
|
+
.toFile(filePath);
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
// 預設轉換為 JPG
|
|
77
|
+
await sharp(Buffer.from(response.data))
|
|
78
|
+
.jpeg({ quality: 90 })
|
|
79
|
+
.toFile(filePath);
|
|
80
|
+
}
|
|
81
|
+
return filePath;
|
|
58
82
|
}
|
|
59
83
|
catch (error) {
|
|
60
|
-
throw new Error(
|
|
84
|
+
throw new Error(`圖片下載或轉換失敗: ${error instanceof Error ? error.message : String(error)}`);
|
|
61
85
|
}
|
|
62
86
|
}
|
|
63
87
|
extractImageUrlFromContent(content) {
|
|
@@ -103,6 +127,12 @@ class AIImageChatMCPServer {
|
|
|
103
127
|
enum: ["gpt-image-1", "gpt-4o-image"],
|
|
104
128
|
default: "gpt-4o-image",
|
|
105
129
|
},
|
|
130
|
+
output_format: {
|
|
131
|
+
type: "string",
|
|
132
|
+
description: "輸出圖片格式(可選,預設為 jpg)",
|
|
133
|
+
enum: ["jpg", "jpeg", "png", "webp"],
|
|
134
|
+
default: "jpg",
|
|
135
|
+
},
|
|
106
136
|
},
|
|
107
137
|
required: ["prompt"],
|
|
108
138
|
},
|
|
@@ -155,7 +185,7 @@ class AIImageChatMCPServer {
|
|
|
155
185
|
});
|
|
156
186
|
}
|
|
157
187
|
async handleImageGeneration(args) {
|
|
158
|
-
const { prompt, system_prompt = "You are a helpful assistant that generates images.", model = "gpt-4o-image" } = args;
|
|
188
|
+
const { prompt, system_prompt = "You are a helpful assistant that generates images.", model = "gpt-4o-image", output_format = "jpg" } = args;
|
|
159
189
|
if (!prompt) {
|
|
160
190
|
throw new McpError(ErrorCode.InvalidParams, "需要提供 prompt 參數");
|
|
161
191
|
}
|
|
@@ -181,8 +211,8 @@ class AIImageChatMCPServer {
|
|
|
181
211
|
const imageUrl = this.extractImageUrlFromContent(generatedContent);
|
|
182
212
|
if (imageUrl) {
|
|
183
213
|
try {
|
|
184
|
-
const filename = this.generateFilename(prompt);
|
|
185
|
-
savedImagePath = await this.downloadAndSaveImage(imageUrl, filename);
|
|
214
|
+
const filename = this.generateFilename(prompt, output_format);
|
|
215
|
+
savedImagePath = await this.downloadAndSaveImage(imageUrl, filename, output_format);
|
|
186
216
|
}
|
|
187
217
|
catch (saveError) {
|
|
188
218
|
console.error("圖片保存失敗:", saveError);
|
|
@@ -192,6 +222,7 @@ class AIImageChatMCPServer {
|
|
|
192
222
|
let responseText = `圖片生成結果:\n\n${generatedContent}`;
|
|
193
223
|
if (savedImagePath) {
|
|
194
224
|
responseText += `\n\n✅ 圖片已自動保存至: ${savedImagePath}`;
|
|
225
|
+
responseText += `\n📁 輸出格式: ${output_format.toUpperCase()}`;
|
|
195
226
|
}
|
|
196
227
|
return {
|
|
197
228
|
content: [
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,SAAS,EACT,sBAAsB,EACtB,QAAQ,GAET,MAAM,oCAAoC,CAAC;AAC5C,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,KAAqB,MAAM,OAAO,CAAC;AAC1C,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bashcat/ai-image-chat-mcp",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.7",
|
|
4
4
|
"description": "MCP server for AI image generation and chat completion with support for multiple AI providers",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"bin": {
|
|
@@ -15,11 +15,13 @@
|
|
|
15
15
|
},
|
|
16
16
|
"dependencies": {
|
|
17
17
|
"@modelcontextprotocol/sdk": "^0.5.0",
|
|
18
|
+
"axios": "^1.7.7",
|
|
18
19
|
"dotenv": "^16.4.5",
|
|
19
|
-
"
|
|
20
|
+
"sharp": "^0.34.2"
|
|
20
21
|
},
|
|
21
22
|
"devDependencies": {
|
|
22
23
|
"@types/node": "^22.0.0",
|
|
24
|
+
"@types/sharp": "^0.31.1",
|
|
23
25
|
"typescript": "^5.5.0"
|
|
24
26
|
},
|
|
25
27
|
"engines": {
|