企业微信机器人 MCP HTTP 服务器 - WeChat Work Bot MCP HTTP Server with streamable calling method
The server defines 5 tools with valid JSON schemas and some descriptions, but has significant quality gaps. Tool naming uses appropriate verb prefixes (send_*, test_*). Descriptions are present but sparse and often generic, ranging from 10-60 characters. Parameter descriptions are present in schemas but many lack detail about constraints, valid ranges, or expected formats. Output schemas are not documented in the source code provided. Error handling and recovery guidance are absent. The tools handle sensitive operations (sending messages, files) without visible input validation or security guards. Most parameters lack examples of valid input formats or constraints beyond basic type definitions.
发送文件到企业微信群
发送图片到企业微信群
发送文本或Markdown消息到企业微信群
发送图文消息到企业微信群
测试企业微信机器人连接
Missing output schema documentation. No documented return types for any tool. LLMs cannot plan downstream calls or extract required fields when response structure is not documented.
Sparse parameter descriptions. Many parameters have minimal context. E.g., 'image_path' and 'base64_data' in send_wecom_image lack format guidance ('Must be a valid local file path' vs 'Base64-encoded PNG or JPG, max 5MB'). LLMs cannot infer constraints from type alone.
No error handling guidance. Tools lack documentation of failure modes, recovery paths, or actionable error messages. E.g., if an invalid file path is provided to send_wecom_file, no guidance on what to do next.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 54 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 0 | - | v1 |
No input validation or security guards visible. send_wecom_message accepts arbitrary strings without mentioning length limits or special character handling. send_wecom_file accepts file_path without visible sanitization against path traversal attacks.
Insufficient description length. send_wecom_file ('发送文件到企业微信群' = 'Send file to WeChat Work group', ~15 chars in English) and send_wecom_image ('发送图片到企业微信群' = ~16 chars) are below the 50-char minimum for context clarity. Descriptions do not explain WHEN to use vs alternatives or mention prerequisites.
anyOf schema pattern in send_wecom_image requires either image_path OR base64_data, but there is no documentation explaining when to use which, or error guidance if both/neither are provided. LLMs may struggle with mutual exclusivity.
No rate limiting or request throttling visible. Tools that send messages to WeChat Work groups lack guidance on rate limits. An agent in a retry loop could spam the group without guardrails.