MCP server for Gemini AI image processing - 基于 Gemini 2.5 Flash 的图片处理 MCP 服务
Single tool with significant quality gaps. Tool name 'send_images_to_gemini' violates verb_noun clarity (ambiguous: does it send, generate, or process?). Description is 400+ chars in Chinese with embedded examples and implementation details, too long, mixes concerns. Input schema present but parameters lack proper type constraints: 'images' accepts Union[str, List[str], None] without enum/pattern validation. No output schema documented. Error handling is minimal (generic try/catch). Tool performs multiple responsibilities: text-to-image generation AND image analysis AND file download/save, should be split. No pagination, no structured response format specified.
使用Gemini AI生成图片(纯文字)或处理现有图片 两种独立模式: 1. 纯文字生图模式 - 只需提供文字描述,无需任何图片 2. 图片处理模式 - 提供图片和提示词进行分析或转换
Tool name 'send_images_to_gemini' is ambiguous. Does it send, generate, process, or analyze? Violates verb_noun clarity. Should be 'generate_image_from_text' or 'analyze_image_with_gemini' depending on primary use case.
Description is 400+ characters in Chinese with embedded implementation details, example values ('生成一只可爱的兔子'), and usage instructions. Violates 10 - 1024 char guideline and mixes prompt-engineering guidance with API docs. LLMs cannot parse Chinese descriptions reliably.
Input schema lacks proper constraints. 'images' parameter accepts Union[str, List[str], None] with no enum, pattern, or format validation. Code contains ad-hoc null-checking logic ('null', 'None', 'undefined' strings) that should be enforced in schema. No validation of file paths, URLs, or base64 format.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 37 | 2026-07-28+ | v2 |
No output schema documented. Tool returns unstructured string with embedded file paths and debug info. LLMs cannot parse response structure, extract image paths for downstream use, or validate success. Should return {success: bool, text: str, images: [str], error?: str}.
Tool combines three distinct responsibilities: (1) text-to-image generation, (2) image analysis, (3) file download/save. Violates single-responsibility principle. Should split into 'generate_image', 'analyze_image', 'download_image' so agents can compose them independently.