小红书内容创作自动驾驶 — 基于 Claude Code Skill 的 AI Agent 全流程自动化
This MCP server exposes 2 image generation tools with significant quality gaps. Both tools have reasonable descriptions (120-150 chars, within the 10-1024 baseline), but parameter schemas lack essential documentation and type precision. Input schemas ARE visible in the code, but many parameters have incomplete descriptions or ambiguous types. The generate_cover tool accepts a 'style' enum but doesn't document valid values in the parameter description itself, only in the tool description. The screenshot_html tool's integer parameters (width, height) lack min/max constraints. Neither tool has documented output schemas (what fields/metadata the PNG files contain, or what the function returns beyond 'a PNG'). Error handling is absent: no guidance on what happens if fonts are missing, if the output path is invalid, if HTML rendering fails, or how to recover. The server lacks any indication of how an LLM should know whether to use generate_cover vs screenshot_html, the distinction is unclear without domain expertise. Both tools perform file I/O (WRITE risk), but there's no mention of path validation or injection guards. Naming is acceptable (verb_noun format: generate_cover, screenshot_html), but descriptions could be more LLM-optimized (e.g., stating WHEN to use each tool and what the input/output relationship is).
Generates 1242x1660px (3:4 portrait) cover images with Chinese text, optimized for Xiaohongshu's image requirements. Supports multiple template styles: gradient, minimal, list, and bold.
Screenshots an HTML cover template to PNG using Playwright. Converts HTML files to PNG images with specified dimensions (default 1242x1660px).
Parameter type and constraint documentation incomplete. 'style' and 'scheme' parameters accept enum values but lack explicit enum definitions in parameter descriptions. 'width' and 'height' are integers with no min/max bounds stated. Baseline: 100% of A+ tools document constraints; this server documents 0%.
No output schema documentation. Both tools return PNG files, but the MCP tool definition does not specify return type, structure, or what metadata (file path, dimensions, success status) the caller receives. Baseline: 100% of A+ tools have documented return types.
No error handling or recovery guidance. Missing handling for: font not found (PingFang fallback exists in code but not documented), invalid output paths, HTML rendering failures, disk full, permission denied. Pattern missing: recovery-guide.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 49 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 0 | - | v1 |
Path parameters ('output', 'output_path', 'html_path') accept raw user strings with no validation logic visible. Risk of path traversal attacks (e.g., passing '../../../etc/passwd'). No sanitization or constraint documentation.
Tool selection ambiguity. An LLM given both generate_cover and screenshot_html must infer which to use. Description states generate_cover 'supports multiple template styles' while screenshot_html 'screenshots HTML files', but no guidance on WHEN to choose each. Missing dependency hints.
Parameter 'items' in generate_cover is optional ('list[string]|null') with a description that only mentions 'list' style, but the parameter type union is not formally constrained. LLMs may pass items for 'gradient' style and receive silent failure or unexpected behavior.