DSH 插件:kankan.email AI Agent 邮箱 — 建邮箱/收信/发信/续租/订单
Server has 6 tools with explicit schemas and descriptions, but quality is inconsistent. Tool names follow verb_noun convention (create_mailbox, list_messages, send_mail, renew_mailbox, pay_order, order_status). Descriptions are present but brief (avg ~60 chars, below the 194-char baseline). Parameters have type definitions and descriptions, but lack constraints (enums, ranges, patterns). No output schemas documented. Error handling is minimal, tools return raw API responses without recovery guidance. Security concern: credentials passed as optional parameters (address, key) rather than server-side injection. No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk levels (WRITE, IRREVERSIBLE operations).
在 kankan.email 创建一个新的 AI Agent 邮箱,返回邮箱地址和 mail_key(请提醒用户妥善保存 mail_key)
列出某个邮箱收到的邮件
查询订单状态
支付订单(如邮箱套餐升级/续费)
续租邮箱(延长有效期)
通过 kankan.email 邮箱对外发送邮件
Credentials (address, key) exposed as optional tool parameters instead of server-side secret injection. Secrets in parameters leak into agent logs and prompt history.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite explicit risk levels. pay_order is IRREVERSIBLE but unmarked; send_mail is WRITE but unmarked. Agents cannot reason about safety.
No output schemas documented. Callers cannot predict response structure. create_mailbox returns {address, mail_key} but this is inferred, not declared.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 59 | 2026-07-28+ | v2 |
Descriptions lack actionable context. 'List messages' (12 chars) does not explain when to call it, what it returns, or pagination behavior. Baseline is 194 chars.
No error recovery guidance. API errors return raw messages ('kankan.email POST /mailboxes failed: ...') without suggesting next steps or retryability classification.