跨设备、跨平台的 AI 共享记忆层(CDSMP 架构的工程实现)— MCP Server 暴露记忆工具给任意 MCP 客户端(Claude Code / Cursor / Cline)
Three tools with visible schemas and descriptions, but significant quality gaps. Tool names lack clear action verbs (memory_add vs add_memory). Descriptions are lengthy (200+ chars) and written in Chinese with domain jargon, making them harder for LLMs to parse reliably. Parameters lack type constraints (enums for 'kind', 'migration', 'scope'). No output schema documentation. Error handling is minimal, tools return free-text strings rather than structured responses. No parameter validation guidance. The 'kind' parameter accepts 'fact/procedure/handover' but this is buried in description text, not formalized as an enum. Overall, definitions are present but underspecified for production agent use.
写入一条跨设备记忆:一句话一条最省 token;tags 逗号分隔;migration 可选 local/edge/cloud(默认自动);kind 可选 fact(事实)/procedure(经验)/handover(交接卡:goal:/done:/failed:/next:/refs: 行前缀,新卡自动取代旧卡并常驻注入的工作台)。
列出可预加载到目标设备的记忆(TMT 热度排序 + PAMS 门控)。
检索记忆(三路混合,弱命中已过滤);已知记忆在哪可用 scope 直达(如 tag:dev / kind:procedure / kind:handover);as_context=true 返回带预算可注入块(最新交接卡恒定注入在工作台小节),无高质量命中明确告知不注入。
Tool names lack clear action verbs. 'memory_add' should be 'add_memory', 'memory_search' should be 'search_memory'. LLMs infer intent from verb-noun structure; current names are noun-verb and ambiguous.
Descriptions are 200+ characters, written in Chinese with domain-specific jargon ('CDSMP', 'TMT', 'PAMS', 'UEP'). LLMs struggle with non-English descriptions and dense technical terminology. Descriptions should be 50 - 200 chars, plain English, and explain WHAT/WHEN/WHY.
Parameters 'kind', 'migration', and 'scope' accept constrained values but are defined as free-form strings. No enum constraints in schema. LLMs will hallucinate invalid values like 'kind: memory' or 'migration: hybrid'. Formalize as enums.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 45 | <=2025-11-25 | v2 |
No output schema documented. Tools return free-text strings ('已记忆(...)', '暂无相关记忆, , 本轮不注入'). LLMs cannot parse structured results or chain to downstream tools. Return JSON objects with typed fields.
Error handling is implicit and non-actionable. 'memory_search' returns '(暂无相关记忆, , 本轮不注入,保持沉默)', LLM cannot determine if this is a retry-able failure, user error, or expected behavior. No error classification or recovery guidance.