mcp-hydrocoder-vision 0.2.0 → 0.3.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.
@@ -1,5 +1,7 @@
1
1
  # Installation Guide
2
2
 
3
+ [中文版](./INSTALL_CN.md) | [English README](./README.md) | [中文 README](./README_CN.md)
4
+
3
5
  ## Prerequisites
4
6
 
5
7
  - Node.js 18+ installed
package/INSTALL_CN.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # 安装说明
2
2
 
3
+ [English Version](./INSTALL_.md) | [英文 README](./README.md) | [中文 README](./README_CN.md)
4
+
3
5
  ## 前置要求
4
6
 
5
7
  - Node.js 18+ 已安装
package/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # MCP HydroCoder Vision
2
2
 
3
+ [English Installation](./INSTALL_.md) | [中文安装](./INSTALL_CN.md) | [中文 README](./README_CN.md)
4
+
3
5
  A vision-language MCP server that enables Claude Code to analyze images using **Qwen3 VL 4B** model running locally via LM Studio.
4
6
 
5
7
  ## Features
package/README_CN.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # MCP HydroCoder Vision
2
2
 
3
+ [English Installation](./INSTALL_.md) | [中文安装](./INSTALL_CN.md) | [English README](./README.md)
4
+
3
5
  基于 **Qwen3 VL 4B** 模型的本地视觉语言 MCP 服务器,让 Claude Code 能够识别和分析图像。
4
6
 
5
7
  ## 功能特性
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mcp-hydrocoder-vision",
3
- "version": "0.2.0",
3
+ "version": "0.3.0",
4
4
  "description": "Vision MCP Server for Claude Code - Qwen3 VL 4B integration",
5
5
  "type": "module",
6
6
  "main": "src/index.ts",
@@ -11,7 +11,7 @@
11
11
  "src/",
12
12
  "README.md",
13
13
  "README_CN.md",
14
- "INSTALL_EN.md",
14
+ "INSTALL_.md",
15
15
  "INSTALL_CN.md",
16
16
  "LICENSE"
17
17
  ],
package/src/index.ts CHANGED
@@ -160,7 +160,8 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
160
160
  const validated = AnalyzeImageInputSchema.parse(args);
161
161
  const mimeType = getMimeType(validated.imagePath);
162
162
  const imageData = await fileToBase64(validated.imagePath);
163
- const prompt = validated.prompt || 'Describe this image in detail.';
163
+ const prompt = validated.prompt ||
164
+ 'Describe all visible elements concisely. Use factual, structured language. Include colors, sizes, positions, and relationships between elements. No fluff. Assume the image is a static screenshot or photograph.';
164
165
 
165
166
  const result = await analyzeImageWithLMStudio(imageData, mimeType, prompt);
166
167
  return {
@@ -173,8 +174,8 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
173
174
  const mimeType = getMimeType(validated.imagePath);
174
175
  const imageData = await fileToBase64(validated.imagePath);
175
176
  const prompt = validated.language
176
- ? `Extract all text from this image. The text is in ${validated.language}.`
177
- : 'Extract all text from this image (OCR).';
177
+ ? `Extract ALL visible text in ${validated.language}. Output only the text, no commentary. Return text in the order it appears.`
178
+ : `Extract ALL visible text. Output only the text, no commentary. Return text in the order it appears.`;
178
179
 
179
180
  const result = await analyzeImageWithLMStudio(imageData, mimeType, prompt);
180
181
  return {
@@ -187,7 +188,7 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
187
188
  const mimeType = getMimeType(validated.imagePath);
188
189
  const imageData = await fileToBase64(validated.imagePath);
189
190
  const framework = validated.framework || 'HTML/CSS/JavaScript';
190
- const prompt = `Analyze this UI/design image and generate ${framework} code that replicates it. Focus on structure, styling, and layout.`;
191
+ const prompt = `Generate ${framework} code matching this design. Include all clickable elements, form submissions, state changes, and dynamic interactions. Use standard practices. Keep code readable and maintainable. Omit unnecessary comments. Do not output code for unsupported frameworks. Output only the code.`;
191
192
 
192
193
  const result = await analyzeImageWithLMStudio(imageData, mimeType, prompt);
193
194
  return {