wanyi
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@wanyiRecall my past mistakes about stop-loss rules"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
WanYi Memory Core 万忆中枢
Never-forgetting full-quantity memory system — Event-sourced long-term memory for AI agents: process memory, mistake books, experience crystallization, confidence-based decision blocking, counterfactual branches, cross-domain analogy, trajectory replay, proactive partner, semantic vector retrieval, reranker, memory graph, time decay and metacognitive knowledge-gaps. Ships as a local-first MCP server with 23 tools. Your data never leaves your machine.
🎬 Live Demo: Interactive demo page · source code
docs/demo.html
Why this is different
Most memory systems store your data in the cloud, need a heavy dependency stack, or only do keyword search. wanyimem is local-first, single-file SQLite, and installs with one dependency (numpy).
wanyimem | typical memory server | |
Data | never leaves your machine (zero telemetry) | cloud / SaaS |
Infra | SQLite single file, no separate vector DB | Qdrant / Neo4j / Postgres |
Defaults | shadows the agent, blocks high-risk actions, opens counterfactual branches | stores & retrieves |
Resources | runs on 2-core / 2GB | heavier |
Evolves | zero-participation (learns from your mistakes automatically) | manual "remember this" |
23 MCP tools, open source (MIT), Python 3.10+, pip install wanyimem.
Related MCP server: SharedBrain
Why
LLM agents forget. Every chat window is amnesia: preferences, lessons, and hard-won experience evaporate when the session ends.
WanYi Memory Core is a local-first, full-quantity, self-evolving memory system:
Event sourcing — an append-only WAL is the single source of truth. Nothing is ever deleted; decay only affects retrieval ranking.
Semantic recall — hybrid retrieval: BM25 keywords + local Chinese embedding (BAAI/bge-small-zh-v1.5) + reranker (BAAI/bge-reranker-base) + knowledge-graph expansion + explicit time decay. Vector search is hybrid itself: exact cosine below
ANN_MIN_COUNT, and asqlite-vecANN pre-filter + exact re-rank above it — so it stays fast at scale without sacrificing recall quality.Metacognition — when recall is weak, the system admits it and records a knowledge-gap instead of hallucinating an answer.
Decision guardrails — high-risk actions (all-in, revenge-trading, force-push, rm -rf) trigger confidence-based blocking with counterfactual branches: you see what would have happened if you had listened.
Zero-participation evolution — no need to say "remember this"; the system decides what to store, consolidates overnight, and surfaces weekly trajectory reviews.
Install
pip install wanyimem # core
pip install "wanyimem[all]" # + vector/reranker models + sqlite-vec ANN (use [ann] for ANN only)Requires Python 3.10+. Models (embedding ~95MB, reranker ~1.1GB) are downloaded on first use from HuggingFace; set HF_ENDPOINT=https://hf-mirror.com if you are in mainland China.
Before the PyPI release lands, you can also install directly from GitHub (identical code):
pip install "git+https://github.com/17861102832/wanyimem.git"
CLI & Automation
Beyond the MCP server, wanyimem ships two console commands after pip install wanyimem:
wanyi-export --db memory.db --out memory.md # readable, diff-able Markdown mirror of all memory (read-only)
wanyi-auto --db memory.db # one AutoMoat pass: honest counterfactual auto-settlement + consolidation + analog patrol
wanyi-auto --db memory.db --loop 3600 # periodic scheduler (daemon background; off by default)
wanyi-exportrenders the event-sourced store into a human-readable, version-controllable Markdown mirror (grouped by Tao/Method/Technique, plus mistakes / experiences / knowledge-gaps / counterfactual branches / cross-domain patterns).wanyi-autoautomates the guardrails: it honestly settles overdue counterfactual branches (marking themexpiredrather than fabricating a winner), runs sleep + deep consolidation, and surfaces the cross-domain analog patterns most worth recalling.
Quick Start (MCP)
Add to your mcp.json (Claude Desktop, Cursor, Trae, etc.):
{
"mcpServers": {
"wanyi": {
"command": "python",
"args": ["-m", "wanyi.memory_core"],
"env": {
"WANYI_STORE_DIR": "C:/path/to/your/memory"
}
}
}
}Env keys are "Chinese-first, ASCII-fallback": the new
WANYI_STORE_DIR(recommended, more portable) and the legacy万忆中枢_STORE_DIRboth work. Barepythondepends on PATH and may fail; prefer an absolute interpreter path, orpip install wanyimemthen use"command": "wanyi".
Then any agent can call the 23 tools, e.g.:
万忆记录见闻 → "2026年5月基金大跌时我死扛不止损,亏了18%才割肉。"
万忆召回记忆 → query "认赔离场到底对不对" # semantic match even with zero shared keywords
万忆置信度决策检查 → "我要全仓梭哈" # BLOCK if confidence is low, with historical mistakesQuick Start (Library)
from wanyi import WanYiCore
engine = WanYiCore()
engine.tool_record_memory(
content="止损纪律:亏损超过8%必须无条件卖出",
layer="法", mem_type="principle",
)
resp = engine.tool_recall_memory("认赔离场到底对不对", limit=5)
for m in resp["memories"]:
print(m["content"], m.get("_rerank_score"))Features
Area | Capability |
Storage | SQLite + append-only event WAL; Tao/Method/Technique three-layer half-lives |
Retrieval | Keyword BM25 + vector (bge-small-zh) + reranker (bge-reranker-base) + graph expansion + time-decay fields |
Metacognition | knowledge-gap auto-record, |
Guardrails | confidence-based decision blocking, counterfactual branches with auto-settlement, cross-domain analogy bridging |
Proactivity | daily brief on LOAD, due-branch reminders, weekly trajectory replay, risk-keyword alert |
Growth | mistake book, experience crystallization, overnight consolidation, evolution queries |
Privacy | fully local, zero telemetry, no cloud dependency |
Public benchmark (LongMemEval) — session-level retrieval, full results in benchmark/RESULTS.md. Core (BM25 + graph, no models) reaches Recall@5 = 0.960 / MRR = 0.907 on s_cleaned (with ~40 distractor sessions). Reproduce via python benchmark/longmemeval_run.py.
Benchmark — reproducible mini LongMemEval (14 keyword-mismatched cross-session fact queries, run via python benchmark/recall_benchmark.py):
Version | Recall@5 | MRR |
Core (keyword BM25 + knowledge-graph, no models) | 1.000 (14/14) | 0.857 |
Full (bge-small-zh vector + bge-reranker-base rerank) | 1.000 (14/14) | 0.857 |
Every query is intentionally phrased with different keywords than its answer (e.g. 本地数据库怎么提高并发写 → WAL模式, 记忆系统最怕什么 → 事件溯源), so 14/14 reflects genuine semantic recall, not string matching. The knowledge-graph channel (active in the core, model-free) already lifts BM25 to parity here; the vector + reranker path shows its edge on larger-scale semantic expansion ("pip install wanyimem[all]" downloads the models).
Docs
Contributing
See CONTRIBUTING.md. Report vulnerabilities privately via SECURITY.md.
License
MIT © 2026 Zhao Xikun
Available Tools
23 tools万忆主动搭档A
护城河#5「主动搭档」:从被动工具升级为主动搭档,不等用户开口自动出击。brief今日简报(待结算分支+到期提醒+高命中跨域模式+决策健康提示,LOAD钩子自动调用)、proactive_check主动体检(到期/超期/重复踩坑)、weekly_review每周轨迹回放复盘(stats+route+review合成总结)、alert风险关键词扫描(文本中出现梭哈/追涨/全仓/删库/强推等风险词立即告警并建议过拦截)。
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | weekly_review回顾天数 | |
| text | No | alert必填:要扫描风险的文本 | |
| action | No | brief/proactive_check/weekly_review/alert | brief |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden, and it does disclose useful behavior: proactive/automatic invocation ('不等用户开口自动出击', 'LOAD钩子自动调用') and immediate alerting with interception advice. It does not state whether actions are read-only, whether summaries are persisted, or what outputs are returned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense and front-loaded with the core concept, then packs all four actions and their triggers into a single paragraph. It is efficient, though the run-on structure and the '护城河#5' marker add a bit of noise and could be organized as bullets.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given four sub-behaviors and no output schema or annotations, more would be expected: return shapes, side effects, and whether alert is the only action requiring text are left implicit. The description still covers the main invocation paths (action values, triggers, key inputs), so it is adequate but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3; the description adds value by explaining what each action does and mapping text to alert scanning with concrete risk-word examples and days to weekly_review cadence. It meaningfully enriches the bare parameter descriptions rather than merely repeating the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear meta-purpose (proactive auto-acting partner) and enumerates four distinct sub-operations, each with a specific verb and resource: brief今日简报, proactive_check主动体检, weekly_review每周轨迹回放复盘, and alert风险关键词扫描. However, it never explicitly differentiates from siblings such as 万忆轨迹回放 or 万忆触发LOAD钩子, whose domains partly overlap.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Each action has an implicit or explicit trigger: brief is called by the LOAD hook, proactive_check targets 到期/超期/重复踩坑, weekly_review is described as weekly, and alert fires on risk keywords. This provides clear context for when to use the tool, though there are no when-not-to-use statements or explicit routing to alternative sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
万忆加载进度C
加载历史存档 — 按checkpoint_id、task_name或全量查询
| Name | Required | Description | Default |
|---|---|---|---|
| task_name | No | 任务名(列出该任务所有存档) | |
| checkpoint_id | No | 存档ID(精确加载单个) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden. It discloses query modes but omits critical traits: possible side effects (e.g., whether loading triggers LOAD hooks, given a sibling named 万忆触发LOAD钩子 exists), return format, behavior when both parameters are supplied, and error handling. This is a significant gap for a state-loading tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with zero filler, front-loaded with the verb and resource, followed by the query modes. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no output schema and no annotations, the description should explain return behavior, parameter precedence, and side effects. It covers only the query modes superficially, leaving an agent unable to predict what a load returns or whether it mutates state.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds marginal value by introducing the 全量 query option (calling with no parameters), which is not explicitly stated in the schema, but it does not clarify parameter interaction like mutual exclusivity between task_name and checkpoint_id.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('加载历史存档' — load historical archives) and enumerates the three query modes (checkpoint_id, task_name, 全量). This is clear and informative, though it does not explicitly differentiate itself from sibling tools like 万忆触发LOAD钩子 or 万忆轨迹回放.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives. The query modes imply use cases, but there are no exclusions, no named alternatives, and no mention of whether this tool should be preferred over 万忆触发LOAD钩子 for state restoration or 万忆轨迹回放 for replay scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
万忆反事实之镜A
护城河#2「反事实之镜」:在关键决策点开平行分支(事实路径 vs 反事实路径),到期自动结算对比。每次BLOCK/CAUTION拦截时自动开立;支持手动open开分支、settle记录实际结果并自动判定verdict(fact_won/counter_won/neutral)、list_open查待结算、list_settled查已结算、auto_check_due自动检查到期。counter_won时自动沉淀入错题本并强化置信度拦截。
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | 标签数组 | |
| action | No | open/settle/list_open/list_settled/get/auto_check_due | open |
| lesson | No | settle可选:手动指定教训 | |
| branch_id | No | 分支ID(settle/get必填) | |
| fact_path | No | 事实路径:taken(做了)/avoided(没做) | taken |
| risk_level | No | critical/high/medium/low(影响默认结算天数) | medium |
| counter_path | No | 反事实路径描述(不填则根据风险自动生成) | |
| fact_outcome | No | settle必填:实际发生的结果 | |
| decision_text | No | open必填:决策点描述 | |
| decision_type | No | trade/write/code/other | other |
| counter_outcome | No | settle可选:反事实结果推算(不填则自动推算) | |
| settlement_days | No | 多少天后结算(critical=3天/high=7天/medium=14天/low=30天默认) | |
| confidence_target_id | No | 关联的置信度检查target_id(拦截联动时自动填) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations supplied, the description carries the full disclosure burden and does it well: it reveals automatic triggers (auto-open on interception), deferred behaviors (auto-settle when due, auto-verdict determination), and cross-tool side effects (counter_won auto-sinks into the error notebook and reinforces confidence interception). It omits output/return behavior and error handling, but the core behavioral traits are disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core mechanism is front-loaded, and each subsequent clause conveys distinct information: trigger condition, manual actions, verdict values, and downstream effects. The opening self-reference ('护城河#2「反事实之镜」') is mild filler, and the single dense run-on sentence is harder for an agent to parse than structured sentences, but nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 13 parameters and 6 actions but no annotations and no output schema, the description covers the open→settle→verdict lifecycle and downstream effects well. However, it omits the 'get' action that appears in the schema's action enum, says nothing about return values or list output shapes for list_open/list_settled, and provides no error or edge-case guidance—gaps an agent cannot fill from structured data.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter is already documented in structured form and the baseline applies. The description adds workflow-level semantics (risk_level drives auto-generation of counter_path and settlement days; settle auto-judges verdict from outcomes), but it largely restates what the schema already says rather than adding meaning beyond it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a concrete mechanism: opening parallel fact/counterfactual branches at decision points and auto-settling them for comparison. It enumerates the sub-actions (open/settle/list_open/list_settled/auto_check_due), the verdict outcomes (fact_won/counter_won/neutral), and the workflow linkage, which clearly distinguishes it from the sibling memory/experience/confidence tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear trigger conditions: automatic branch opening on every BLOCK/CAUTION interception, plus manual open at key decision points, and explicit purposes for list_open/list_settled/auto_check_due. It does not name sibling alternatives or state when not to use the tool, which would push this to a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
万忆召回记忆C
四通道混合检索(v5.0):BM25关键词 + 倒排索引 + 知识图谱 + 语义向量(v5.1),reranker精排(v5.2)+ 时序衰减显性化(v5.4)+ 知识空白元认知(弱召回自动记录gap)
| Name | Required | Description | Default |
|---|---|---|---|
| layer | No | 层级过滤:道/法/术/器/all | all |
| limit | No | 返回条数上限 | |
| query | Yes | 检索关键词/查询文本 | |
| space | No | 空间过滤:全局级/个人级/项目级 | |
| project | No | 项目名过滤 | |
| use_graph | No | 是否启用图谱扩展检索 | |
| min_confidence | No | 最低置信度阈值 0~1 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral disclosure burden. It does reveal non-obvious behavior: reranking, explicit temporal decay, and automatic gap recording on weak recall. However, it does not explain the scope or permanence of the gap-recording side effect, nor return behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the core retrieval concept, but it is a dense run-on packed with version markers and parenthetical implementation details. Version numbers like v5.0-v5.4 add noise without helping an agent decide how to use the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given seven parameters, no output schema, and no annotations, the description is incomplete for correct invocation. It does not state what the return value looks like, when this tool should be preferred, or how it differs from sibling retrieval tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters. The description adds some context for the use_graph parameter by mentioning the knowledge-graph channel, but it does not materially clarify parameter formats, ranges, or relationships beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies 万忆召回记忆 as a retrieval tool by naming '检索' and specifying a four-channel hybrid retrieval process. However, it does not explicitly distinguish itself from sibling tools like 万忆图谱搜索, which overlaps with the knowledge-graph channel mentioned here.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as 万忆图谱搜索 or 万忆知识空白. It describes internal mechanics but not the intended selection criteria or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
万忆园艺师B
园艺师后台(KektorDB式):深巩固(矛盾检测+冗余检测+洞见提炼+技能结晶+每日思考档案)/ 仅写每日日志
| Name | Required | Description | Default |
|---|---|---|---|
| action | No | consolidate(深巩固)/daily_log(每日档案) | consolidate |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden. It usefully enumerates sub-behaviors of deep consolidation and says the daily-log mode 'only writes' the daily log. However, it does not state whether consolidation mutates existing memories, whether it is reversible, or what side effects occur.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is compact, but the dense parenthetical list and the '/ 仅写每日日志' slash make the structure ambiguous. '园艺师后台(KektorDB式)' is also unexplained filler. A bulleted or explicit mode-by-mode layout would be clearer.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and no annotations, the description should say what the tool returns, when to choose each mode, and whether consolidation has side effects on stored memories. It covers only the high-level operations, leaving an agent without enough context to confidently select it over sibling consolidation tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already covers the one action parameter, but the description adds meaning beyond the property comment: it expands 'consolidate' into four concrete analysis steps and clarifies 'daily_log' as writing only the daily log. That is valuable enrichment.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names concrete operations: deep consolidation with contradiction detection, redundancy detection, insight extraction, skill crystallization, and daily-log writing. This is not a tautology and is reasonably specific, though the slash between the two modes is ambiguous and no sibling tool is named for differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to call this tool versus siblings such as 万忆睡眠巩固 or 万忆知识压缩. The action choices consolidate/daily_log are listed, but no contextual trigger, prerequisites, or exclusions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
万忆图谱搜索A
知识图谱扩展检索 — 从实体节点出发多跳遍历,发现语义关联记忆(v5.3记忆写入时自动建边:semantic-similar/same-category)
| Name | Required | Description | Default |
|---|---|---|---|
| depth | No | 遍历深度 | |
| limit | No | 返回条数上限 | |
| query | Yes | 搜索关键词/实体名 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral transparency burden. It discloses the graph construction mechanism (automatic edge creation on write, with edge types semantic-similar/same-category) and the traversal nature of the search. However, it does not clarify whether the operation is read-only, how paging or result shapes behave, or any rate-limit/performance implications of multi-hop traversal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one dense, front-loaded sentence that immediately states the action, resource, and mechanism. The parenthetical about v5.3 auto-edge-creation adds useful graph semantics without bloating the text. No filler or redundant restatement of the tool name exists.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given three parameters, no output schema, and no annotations, the description covers the main operational aspects: entity-based query, multi-hop depth, semantic association discovery, and the underlying edge types. It does not describe return-value structure or explicitly address edge cases, but for a retrieval-oriented tool the provided context is largely sufficient. The main gap is the absence of any statement about safety or side effects, but the description's '检索' wording implies read-only behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already explains query, depth, and limit. The description adds the conceptual framing that the query is an entity and depth corresponds to hops, but this is largely implied rather than explicitly tied to parameters. It does not add meaningful parameter semantics beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: it performs knowledge-graph expansion retrieval via multi-hop traversal from an entity node to discover semantically related memories. This clearly distinguishes it from siblings like 万忆召回记忆 or 万忆轨迹回放 because it emphasizes graph structure and multi-hop traversal. The scope is concrete and not a tautology of the tool name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes the usage context reasonably clear: an agent should use this tool when it has an entity and wants to explore related memories through graph edges. It neither explicitly names alternatives nor gives when-not-to-use guidance, but the traversal-oriented framing implies when it is appropriate relative to sibling tools. No misleading guidance is present.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
万忆存档进度A
存档任务进度 — 支持跨会话冷续传,保存任务名、阶段、进度百分比、完整状态
| Name | Required | Description | Default |
|---|---|---|---|
| phase | Yes | 当前阶段 | |
| state | Yes | 完整任务状态快照(任意JSON) | |
| task_name | Yes | 任务名称 | |
| progress_pct | Yes | 进度百分比 0~100 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses a useful behavioral trait: cross-session persistence for cold resume. However, it does not state whether saving overwrites existing progress, what authorization or side effects are involved, or what the response looks like.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence that delivers the core purpose, the key behavioral benefit, and the saved fields in minimal space. No filler or redundant phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The definition is adequate for basic invocation, especially given the complete schema. However, with no annotations and no output schema, it does not explain return values, overwrite semantics, or error conditions, which are useful for an agent handling persistence operations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already fully documents all four parameters. The description essentially restates the parameter list in prose without adding constraints, default values, or interaction details, so it adds no significant semantic value beyond the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses specific verb '存档' and resource '任务进度', and explicitly enumerates what is saved: task name, phase, progress percentage, and full state. It also mentions the cross-session cold-resume capability, making the tool's purpose unambiguous and distinct from the sibling '万忆加载进度'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase '支持跨会话冷续传' clearly conveys the intended use case: persist task progress so work can be resumed across sessions. It does not explicitly mention alternatives or exclusions, but the context is clear enough for an agent to select this tool over its load counterpart.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
万忆导入档案A
更新用户偏好档案(交易风格/风险偏好/写作风格/个人信息等),同时存入道级钉住记忆
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | 用户档案数据(任意键值对) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It does disclose a meaningful side effect: '同时存入道级钉住记忆' (also stored into Dao-level pinned memory). However, it does not clarify merge versus replace behavior, reversibility, or any access constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One compact sentence front-loads the main action, groups examples in parentheses, and appends the side effect. No redundant or filler content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter tool with 100% schema coverage, the description is mostly adequate but leaves gaps: no explanation of whether the data merges with existing profile fields, what '道级钉住记忆' fully implies, or what result the agent should expect given there is no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already fully describes the sole parameter 'data' as '用户档案数据(任意键值对)'. The description adds practical value by enumerating likely key categories such as trading style, risk preference, writing style, and personal info, helping an agent populate the arbitrary object.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: '更新用户偏好档案' (update user preference profile), with concrete examples of covered fields. The target resource is distinct from all sibling memory tools such as 万忆错题本, 万忆经验库, and 万忆召回记忆.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The parenthetical examples ('交易风格/风险偏好/写作风格/个人信息等') imply when to use the tool, but there is no explicit guidance about when not to use it or which sibling tool to choose instead. Usage is inferred rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
万忆更新交易锚点C
更新交易策略锚点 — 分板块管理你的核心交易逻辑与参数
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | 该板块的锚点数据 | |
| section | Yes | 锚点板块名(如:风控/选股/择时/仓位管理等) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It conveys that this is an update operation, but it does not specify whether existing data is overwritten or merged, whether a missing section is created, what effects occur on other sections, or what the operation returns.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. The key action '更新交易策略锚点' appears first, followed by a concise explanatory clause. It is appropriately sized for the tool's apparent scope.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of a nested 'data' object, required parameters, no output schema, and no annotations, the description is too brief to be fully actionable. It does not define what an anchor is, what data structure is expected, or the semantics of updating a section, leaving significant ambiguity for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters already have basic descriptions. The tool description adds the context of section-based management but does not clarify the internal structure of the 'data' object or provide parameter-level details beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action and resource: '更新交易策略锚点' (update trading strategy anchor) and adds that it manages core trading logic and parameters by section. This clearly separates it from the memory-oriented sibling tools by domain. However, the concept of '锚点' is left undefined and no explicit sibling differentiation is made.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, such as creating a new anchor, storing progress, or loading progress. The description merely implies the purpose without stating conditions, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
万忆查询进化A
最近进化记录:谁变了、为什么变、置信度变化 — 进化的可观测性,任何聊天框都能查到真实发生在文件系统上的进化
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | 返回条数 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
没有 annotations,描述承担了行为说明负担。它明确这是“查询/可观测性”操作,并交代了返回内容和数据来源(真实发生在文件系统上的进化),行为透明。虽未显式说“只读”,但“查询”和“可观测性”已足够暗示无副作用。
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
单句描述,破折号前给出核心信息,破折号后补充观测性与数据真实性,没有冗余内容。语言简洁且关键信息前置,每个部分都服务于帮助代理理解工具。
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
工具只有 1 个可选参数,无 output schema,复杂度低。描述覆盖了目的、输出维度和数据来源,足以支撑正确调用;缺少明确的使用条件,但未影响基本完整性。
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
input schema 覆盖率为 100%,唯一参数 limit 已在 schema 中有“返回条数”的描述,因此描述无需额外解释参数。描述本身也未增加超出 schema 的参数语义,符合无补偿需求时的基线 3 分。
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
描述以“最近进化记录”开头,明确资源与查询意图,并具体列出“谁变了、为什么变、置信度变化”等返回维度。这使其与记忆、存档、导入等兄弟工具形成清晰区分,代理无需打开 schema 即可判断用途。
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
描述没有说明何时使用此工具、何时不该使用,也没有点名任何替代工具。“任何聊天框都能查到”仅暗示通用可访问性,未提供选择依据或排除条件,使用指引明显不足。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
万忆睡眠巩固A
睡眠巩固周期:记忆衰减 + 重要度增强 + 相似合并 + 低价值归档,定期运行
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden and does disclose core effects: memory decay, importance boosting, similar merging, and low-value archiving. It does not clarify whether the decay or archiving is destructive, reversible, or requires user confirmation, which is material for a maintenance operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence with no filler; the main action is front-loaded and the four component operations are listed clearly. Every part earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-parameter batch operation, the description covers the main effect set but leaves ambiguity about side effects, reversibility, and how results are surfaced. Since there are no annotations or output schema, a bit more operational detail would make it fully actionable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema already exhaustively covers invocation requirements, which warrants the baseline score of 4. The description adds useful context about what the no-argument operation actually does.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a specific batch operation (sleep consolidation) and enumerates its four sub-behaviors: memory decay, importance enhancement, similar merging, and low-value archiving. It is not a tautology, though it does not explicitly contrast with sibling tools like 万忆知识压缩 or 万忆记忆自检.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase '定期运行' indicates that the tool is intended for periodic scheduled maintenance rather than immediate on-demand use. However, it does not provide explicit when-to-use or when-not-to-use guidance, nor does it name any alternative tool to prefer in other situations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
万忆知识压缩A
对指定层级进行全量压缩 — 保留摘要+元数据,原始内容归档,释放存储空间
| Name | Required | Description | Default |
|---|---|---|---|
| layer | No | 要压缩的层级:道/法/术/器 | 术 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden and handles it well: it discloses that compression is full-scale, that summaries and metadata are retained, that original content is archived rather than deleted, and that storage is freed. It does not discuss reversibility or permissions, so it stops short of a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single em-dash-joined sentence packs action, scope, retained data, archival behavior, and the storage benefit with no filler. Key information is front-loaded and every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool with no output schema, the description is largely complete: the target and outcome are clear, and the archival guarantee addresses the main safety concern. It lacks explicit usage guidance and any statement about reversibility, but those are modest gaps at this complexity level.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline of 3 applies. The description only echoes 'specified layer' and adds no meaning beyond the schema's layer enum and default value, which are already documented in the input schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: full compression of a specified layer, with concrete outcomes (retain summaries/metadata, archive originals, free storage). It is clearly the compression tool among the siblings, though it does not explicitly name or contrast an alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase '释放存储空间' implies the intended purpose and '指定层级' implies scope selection, so usage context is somewhat implied. However, the description gives no explicit when-to-use guidance, no exclusions, and no mention of alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
万忆知识空白A
v5.1元认知「知道自己不知道什么」:召回太弱时自动记录知识空白,系统主动承认库存薄弱。list列出待补充空白(按被查中次数排序,越常查越该补)、close标记已补充(gap_id+note)、stats统计(开放数/已关闭数/最薄弱领域TOP)。结合语义向量检索,让万忆在检索到强结果时自信、搜不到时坦承,而不是瞎编。
| Name | Required | Description | Default |
|---|---|---|---|
| note | No | close可选:补充来源说明 | |
| limit | No | list返回条数上限 | |
| action | No | list/close/stats | list |
| gap_id | No | close必填:知识空白ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden; it discloses that the tool auto-records gaps when recall is weak, sorts list by hit count, requires gap_id+note for close, and explains the behavioral aim of confident-vs-honest responses. It stops short of describing persistence, auth, or side effects beyond recording gaps, but for a memory-management tool this is strong context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four sentences, front-loaded with the metacognitive purpose, then dense but parseable operation specs. Every clause earns its place—no fluff. Technical version number and framing terminology are compact and meaningful for an advanced agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 4 optional params, no output schema, and no annotations, this is nearly complete: it covers purpose, operations, parameter roles, and behavioral philosophy. It doesn't state what list/stats return structurally, but the description communicates intent well enough for selecting and invoking; remaining gap is minor.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds meaning by tying each action to its purpose, clarifying that gap_id is for close and note is the supplement source, and that list sorts by hit frequency. This goes beyond raw schema descriptions meaningfully.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource (knowledge gaps) and the three operations (list/close/stats) with clear verbs. It also distinguishes this tool from siblings like 万忆记忆自检 and 万忆召回记忆 by framing it as the 'knowing what you don't know' mechanism tied to retrieval weak spots.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly states when to use the tool (when recall is too weak, when system should acknowledge weak inventory) and how it links to semantic vector retrieval. It doesn't explicitly say 'when not to use' or name alternatives, but the metacognitive framing and operation list imply usage boundaries clearly enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
万忆经验库C
经验库(ExpeL式):成功路径沉淀的可复用模式,跨任务迁移复用
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | 返回条数 | |
| task_name | No | 按任务筛选 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must disclose behavior. It only describes the content/purpose in nominal terms; it does not say whether the call is read-only, whether it returns a list or a single pattern, or how limit/task_name affect execution. '沉淀' even introduces ambiguity about whether the tool stores or retrieves.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is extremely short and contains no filler, but it is under-specified rather than feature-complete. A single noun-phrase clause conveys purpose without separating what the tool does from when it should be used.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations and no output schema, the description should explain the return shape and invocation behavior; it instead only restates the conceptual role of the experience library. The optional parameters are documented in the schema, but the high-level behavior and output remain unspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: limit is documented as 返回条数 and task_name as 按任务筛选. The description adds no parameter detail, but the schema already carries the full burden, so a baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource (经验库) and its content (成功路径沉淀的可复用模式), and hints at cross-task reuse, so it is not a tautology. However, it lacks an explicit action verb such as '查询' or '检索', leaving the agent to infer that this tool retrieves experience patterns rather than, say, creating or consolidating them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'跨任务迁移复用' offers a plausible use case: retrieve reusable patterns from successful paths to apply to new tasks. But the description does not explicitly state when to prefer this tool over siblings like 万忆轨迹回放 or 万忆错题本, nor does it mention exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
万忆置信度决策检查A
护城河#1「拦截之眼」:对即将执行的高风险决策做认知置信度检查。支持:check(决策拦截,自动识别梭哈/追涨/不止损/删库/强推等风险动作,置信度不足时BLOCK并亮历史错题)/validate(对某判断投支持票)/challenge(投反对票)/review(FSRS复习)/get(查置信度)/rank(置信度排名)/needs_review(待复习清单)。在做重仓、追涨、删库、强推等高风险动作前必调用。BLOCK/CAUTION时自动联动护城河#2开立反事实分支。
| Name | Required | Description | Default |
|---|---|---|---|
| action | No | check/validate/challenge/review/get/rank/needs_review | check |
| reason | No | 反馈理由(challenge时强烈建议填) | |
| signal | No | 反馈信号:validate(支持)/challenge(反对) | validate |
| target_id | No | 目标ID(可选,不填则由decision_text自动生成) | |
| target_type | No | 目标类型:decision/memory/strategy/skill | decision |
| elapsed_days | No | 距上次复习天数(review用) | |
| decision_text | No | 要检查/反馈的决策描述(check/validate/challenge必填) | |
| recall_success | No | review时必填:回忆是否成功 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that the tool can BLOCK low-confidence decisions, surface historical mistakes, and automatically trigger moat #2 to open counterfactual branches. This reveals critical side effects and control-flow behavior beyond the bare schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense and front-loaded with the core purpose, then flows into action semantics, usage instructions, and behavioral consequences. It is slightly long and packed into a single paragraph, but every sentence contributes useful information with minimal waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 8 parameters, no annotations, and no output schema, the description covers the main decision points: supported actions, required inputs, high-risk trigger contexts, and block/linkage behavior. It does not describe return values or error conditions, but the essential selection and invocation guidance is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds meaning by explaining the role of each action value, indicating which actions require decision_text, and clarifying validate/challenge as support/opposition votes. This goes beyond the schema's short field descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly defines the tool as a cognitive confidence check for high-risk decisions, enumerates all seven supported actions (check/validate/challenge/review/get/rank/needs_review), and names concrete risk scenarios. This makes the purpose specific and distinct from the sibling memory tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly states when to use the tool: '在做重仓、追涨、删库、强推等高风险动作前必调用' (must call before high-risk actions). It does not discuss when not to use it or name a specific alternative, but the mandated usage context is strong and actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
万忆触发LOAD钩子A
HOOK-LOAD:会话启动时自动注入记忆 — 道级钉住记忆、法级高频记忆、断点续传检查
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It does disclose the main behavior: automatic memory injection at startup, including pinned/high-frequency memory and checkpoint-resume checking. However, it omits side effects, failure handling, read-only vs. mutating behavior, and what happens when no memory exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact, front-loaded sentence. Every clause adds useful information about the hook type, the trigger, the action, and the memory categories involved, with no filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameter-free hook, the trigger and primary behavior are present, and there is no output schema to account for. However, the internal terminology is undefined, and the lack of side-effect or invocation details leaves the description adequate but not fully complete for an agent deciding whether or how to call it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and schema description coverage is 100%, so the baseline is 4. There is no parameter detail for the description to add, and it correctly avoids inventing any.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the operation ('auto-inject memory'), the trigger ('session startup'), and the memory categories involved ('pinned', 'high-frequency', 'checkpoint-resume check'). It is distinct from the STORE hook and load-progress siblings, though it does not explicitly name an alternative sibling and relies on unexplained internal terms like '道级' and '法级'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The trigger context is stated explicitly: this hook runs automatically at session startup. However, there is no guidance on when not to use it, whether it should ever be manually invoked, or how it compares with related siblings such as 万忆加载进度 or 万忆触发STORE钩子.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
万忆触发STORE钩子A
HOOK-STORE / HOOK-REFLECT:会话结束时归档 + 反思 — 提炼决策、模式、技能、复盘
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | 模式:full(存储+反思)/reflect(仅反思)/store(仅存储) | full |
| skills | No | 技能列表 | |
| memories | No | 其他记忆列表 | |
| patterns | No | 模式列表 | |
| decisions | No | 决策列表 | |
| raw_notes | No | 原始笔记文本 | |
| postmortems | No | 复盘列表 | |
| session_summary | No | 会话摘要 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry behavioral disclosure; it explains that the tool archives and reflects, extracting decisions, patterns, skills, and postmortems. However, it does not disclose side effects such as persistence, overwriting, or whether reflection results are stored separately, leaving some behavioral ambiguity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence that front-loads the hook type and core action. It is not bloated, though the 'HOOK-STORE / HOOK-REFLECT' prefix partly repeats the tool name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 8 optional parameters, no annotations, and no output schema, the description is too sparse. It does not explain the mode parameter, what a successful call returns, prerequisites, or how this hook relates to the sibling LOAD hook and other memory tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description's mention of decisions, patterns, skills, and postmortems mirrors existing parameter names but adds no meaning beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('归档 + 反思') and identifies the target artifacts ('决策、模式、技能、复盘'), making the tool's purpose clear. It is distinguishable from the LOAD hook by the STORE/REFLECT framing, though it does not explicitly name any sibling or contrast.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly scopes usage to '会话结束时' (at session end), which is a clear usage context. It does not mention when not to use it or compare it with alternatives like LOAD hooks, but the timing guidance is practical and sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
万忆记录见闻B
将一条新知识/观察/经验记录入全量记忆库,自动分类、打标签、建索引
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | 标签列表 | |
| layer | No | 层级:道/法/术/器 | 术 |
| space | No | 空间:全局级/个人级/项目级 | 全局级 |
| pinned | No | 是否钉住(永不遗忘) | |
| source | No | 来源标识 | |
| content | Yes | 记忆内容文本 | |
| privacy | No | 隐私级别:公开/内部/机密 | 内部 |
| project | No | 所属项目 | |
| task_id | No | 关联任务ID | |
| category | No | 分类标签 | |
| mem_type | No | 记忆类型:observation/insight/pattern/principle/preference/postmortem/skill | observation |
| confidence | No | 置信度 0~1 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does disclose useful automatic behavior: classification, tagging, and indexing. But it does not explain output behavior, side effects on existing memories, privacy handling, or whether writes are idempotent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with no filler. It conveys the core action and the key automatic behaviors efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 12 parameters, no annotations, no output schema, and 22 sibling tools, the description is too minimal to fully orient an agent. It does not guide selection among sibling tools, clarify the relationship between automatic tagging and user-provided tags, or describe what happens after recording.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The tool description adds no parameter-level meaning, and its claim of automatic tagging could theoretically conflict with user-provided tags/category, which is left unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action (record) and a specific resource (full memory library), and adds automatic classification, tagging, and indexing behavior. It is clear what the tool does, but it does not explicitly distinguish this from specialized sibling tools such as 万忆经验库 or 万忆错题本.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool should be used for new knowledge, observations, or experiences via '将一条新知识/观察/经验记录入'. However, there is no explicit guidance on when not to use it or how it differs from sibling memory-recording/import tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
万忆记忆自检A
全库健康度检测:记忆总数、各层分布、索引状态、FTS状态、图谱状态
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden and does disclose the behavioral scope by listing the health dimensions it evaluates. The term '检测' implies a read-only diagnostic operation, and the enumerated status checks give the agent a concrete sense of what will be inspected, though side effects and output format are not detailed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact line that front-loads the core purpose and then compactly lists the specific checks. There is no redundant or filler text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter diagnostic tool, the description covers the essential information: what is being checked and at what level (full-library). It does not specify output format or performance cost, but given the simplicity of the tool this is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so there is no parameter meaning to convey. The description appropriately focuses on the tool's checks instead of parameter details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('检测') and resource ('全库健康度') and enumerates the exact aspects checked: total memory count, layer distribution, index status, FTS status, and graph status. This clearly distinguishes it from sibling tools focused on operations like recording, recalling, or searching.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for diagnosing overall memory health, but it does not explicitly state when to prefer it over alternatives or mention any prerequisites or exclusions. The usage context is inferable from the content but not directly guided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
万忆跨域桥接B
护城河#3「跨域类比迁移」:把交易/写作/开发各领域的教训抽象成跨域底层模式,然后跨域桥接——让交易的教训自动提醒写作/开发,反之亦然。BLOCK/CAUTION拦截时自动联动。abstract沉淀模式(abstract_name+essence+keywords)、bridge给定当前决策找跨域同构模式、list_patterns按命中率列出、get看详情。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | 返回条数上限 | |
| action | No | bridge/abstract/list_patterns/get | bridge |
| domain | No | 当前领域:trade/write/code/other | other |
| essence | No | abstract必填:底层本质描述(跨域通用) | |
| keywords | No | abstract可选:触发关键词数组 | |
| pattern_id | No | get必填:模式ID | |
| source_ref | No | abstract可选:来源记忆ID/分支ID | |
| abstract_name | No | abstract必填:跨域模式名(如'无视止损纪律') | |
| decision_text | No | bridge必填:当前决策/场景描述 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
没有annotations,描述承担了主要行为披露责任;它说明了跨域桥接、BLOCK/CAUTION自动联动、按命中率列表、查看详情等行为,比完全沉默好。但未说明abstract沉淀模式是否有持久化副作用、bridge返回什么结构、get和list失败时的行为,行为透明度仍不完整。
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
两句话覆盖了四个子操作和核心跨域迁移逻辑,信息密度高,动作列举紧凑,没有明显冗余。缺点是「护城河#3」和未解释的BLOCK/CAUTION术语占用了一定理解成本,但整体仍算精简。
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
在无output schema、无annotations的情况下,描述覆盖了四个action的主要用途和参数约束,并暗示了部分返回行为(如list_patterns按命中率、get看详情)。但缺少对输出形状、limit如何应用、domain如何筛选、以及抽象模式后是否返回ID或确认信息等说明,对一个9参数的多模式工具来说只是刚好够用。
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
input-schema对所有9个参数都有描述,且已经标注了abstract必填、bridge必填、get必填等条件,因此description无需重复基础语义。描述额外将参数组合归入四个action,便于快速理解调用姿势,但未补充limit作用范围、domain如何影响bridge结果等更深层语义,价值有限。
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
描述明确说明工具的核心动作:把交易/写作/开发各领域的教训抽象成跨域底层模式,再进行跨域桥接,并能与兄弟工具如「万忆经验库」「万忆图谱搜索」区分开。但开头「护城河#3」和使用BLOCK/CAUTION这类内部术语,使整体表达不够口语化,且未直接对比任一兄弟工具,因此未到5分。
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
描述按action列举了abstract、bridge、list_patterns、get各自的用途与参数组合,并提到BLOCK/CAUTION拦截时自动联动,提供了可执行的调用语境。但没有明确说明何时应优先使用本工具而非其他记忆工具,也没有给出when-not或替代工具的显式指引。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
万忆轨迹回放A
护城河#4「分支轨迹回放」:把历史所有反事实分支串成决策时间线,让你一眼看见每次听劝/不听劝的走向。timeline按时间回放全部分支、stats决策生涯统计(结算率/counter_won率/听劝验证率/风险分布/洞察)、route对比「实际路径 vs 如果全听劝路径」两条虚拟人生、review最近N天决策回顾。决策生涯可视化,越用越看得清自己的进化曲线。
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | review必填:回顾窗口天数 | |
| limit | No | timeline返回条数上限 | |
| action | No | timeline/stats/route/review | timeline |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden, and it does so well by detailing what each action does: timeline replays all branches chronologically, stats provides specific metrics like settlement rate and risk distribution, route compares actual versus all-obey paths, and review summarizes recent decisions. It does not explicitly state read-only behavior or output structure, but the visualization/replay framing makes the non-mutating nature reasonably clear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well structured: core purpose first, action breakdown second, and user benefit last. The '护城河#4' branding and the somewhat repetitive closing sentence add minor noise, but overall every section earns its place and the length is appropriate.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with three optional parameters and no annotations or output schema, this description covers all significant behavior: the four modes, the main data categories, and the role of the review window. It does not describe exact response shapes or edge cases, but it is sufficient for an agent to select the tool and invoke it with reasonable confidence.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description adds real value by explaining the semantics of the action values and linking days to the review window and limit to timeline. This helps an agent understand how the parameters affect output beyond their terse schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's core purpose: replaying historical counterfactual branches into a decision timeline and visualizing decision evolution. It enumerates four concrete action modes (timeline/stats/route/review), giving a specific verb and resource. However, it does not explicitly differentiate itself from potentially overlapping siblings like 万忆反事实之镜 or 万忆查询进化.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies that the tool is for retrospective decision-career visualization and analysis, with each action serving a distinct purpose. It does not explicitly say when to prefer this tool over alternatives or when not to use it, leaving the selection largely to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
万忆过程存档A
过程记忆(ExpeL式):将任务执行的一个阶段(规划/尝试/纠错/反思/结论)存入轨迹档案,失败自动沉淀错题本,成功结论自动沉淀经验库,可设记忆锚点断点恢复
| Name | Required | Description | Default |
|---|---|---|---|
| phase | Yes | 阶段:规划/尝试/纠错/反思/结论 | |
| content | Yes | 该阶段的完整过程内容 | |
| outcome | No | 结果:neutral/success/failure,failure自动入错题本 | neutral |
| task_name | Yes | 任务名称 | |
| process_id | No | 轨迹ID(续写同一条轨迹时传入) | |
| anchor_state | No | 设置记忆锚点(断点恢复所需状态) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, this description carries the burden, and it does disclose important side effects: failures automatically become mistake-book entries, successful conclusions automatically become experience-library entries, and an anchor_state enables breakpoint recovery. It does not mention idempotency, overwrite behavior, or authorization requirements, but the core behavioral profile is transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one information-dense sentence with every clause doing work: scope, phase values, automatic side effects, and anchor capability. It could be lightly restructured for readability, but it contains no filler and leads with the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 6 parameters and a nested anchor_state object, the description covers the key behavioral contracts: what gets stored, how outcomes are classified, and why anchor_state exists. It does not explain what the call returns, whether process_id creates vs continues a trace, or the exact structure of anchor_state, but the combination with the detailed schema is sufficient for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description adds useful semantics beyond the schema: it enumerates the five phase values, explains what outcome=failure does automatically, and gives purpose to anchor_state (断点恢复). This extra context helps the agent choose correct values even though the schema already describes them.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the exact operation — store one phase (planning/attempt/error-correction/reflection/conclusion) of a task execution into a trajectory archive — and distinguishes this from sibling tools by noting automatic precipitation into the mistake book and experience library. It names the resource (轨迹档案) and the scope (task execution phases), so an agent can identify it immediately.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes clear it is for recording intermediate execution phases and that failures/successful conclusions are auto-routed to 万忆错题本 and 万忆经验库, which tells the agent when this tool is the right choice. It does not explicitly state exclusions or name an alternative for querying/replaying traces, so it misses the top bar for explicit when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
万忆错题本A
错题本(Reflexion式):查看错题/高频错误模式/补充教训。失败决策自动沉淀为反例条目,跨会话防重复犯错
| Name | Required | Description | Default |
|---|---|---|---|
| action | No | list(查看)/patterns(高频模式)/lesson(补充教训) | list |
| lesson | No | 教训内容(lesson动作需要) | |
| task_name | No | 按任务筛选 | |
| mistake_id | No | 错题ID(lesson动作需要) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
当前没有任何注解,因此描述承担了行为披露的全部责任。它披露了'失败决策自动沉淀为反例条目'和'跨会话'这两点,说明工具会自动记录失败且数据具有持久性,这对agent理解副作用有实际价值。但描述未提及补写教训是否产生持久写入、是否需要权限限制,也没有说明返回形式,信息仍不够完整。
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
描述只有两句话,第一句列出核心功能,第二句补充关键行为,信息前置且没有冗余词。每个分句都贡献了独立信息,括号中的'Reflexion式'也提供了方法论线索,整体紧凑高效。
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
描述给出了明确的目的和一个关键行为,参数层面也由schema完全覆盖,但缺少输出schema和注解,导致agent无法预知调用返回的内容格式,也没有失败或边界场景的提示。对一个4个可选参数的工具来说,描述达到最低可用标准,但仍有明显信息缺口。
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
输入schema对所有4个参数都有详细描述,schema_description_coverage为100%,所以参数含义主要由schema承担。描述中的'查看/补充'只是重复了action枚举(list/patterns/lesson)的含义,没有为参数添加新的语义或边界条件,因此按基线给3分。
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
描述以'错题本(Reflexion式):查看错题/高频错误模式/补充教训'开头,明确列出了具体动词(查看、补充)和资源(错题、模式、教训),并借助'失败决策自动沉淀为反例条目'这一特性与其他记忆类兄弟工具产生区分。但没有显式点名与哪个工具不同或给出对比条件,因此未达到满分。
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
描述用'跨会话防重复犯错'明确给出了使用情境——在会话间回顾错误教训以避免重蹈覆辙,这为agent提供了清晰的调用上下文。但它没有说明何时不使用、也没有列出替代工具或排除条件,所以给4分而不是5分。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
23 tool updates
v0.1.0- First observed
万忆主动搭档 - First observed
万忆加载进度 - First observed
万忆反事实之镜 - First observed
万忆召回记忆 - First observed
万忆园艺师 - First observed
万忆图谱搜索 - First observed
万忆存档进度 - First observed
万忆导入档案 - First observed
万忆更新交易锚点 - First observed
万忆查询进化 - First observed
万忆睡眠巩固 - First observed
万忆知识压缩 - First observed
万忆知识空白 - First observed
万忆经验库 - First observed
万忆置信度决策检查 - First observed
万忆触发LOAD钩子 - First observed
万忆触发STORE钩子 - First observed
万忆记录见闻 - First observed
万忆记忆自检 - First observed
万忆跨域桥接 - First observed
万忆轨迹回放 - First observed
万忆过程存档 - First observed
万忆错题本
TDQS
Scored across 23 tools
Most tools target a distinct memory lifecycle or guardrail function, and the detailed descriptions help separate recall from graph search, consolidation from deep gardening, and the various moat tools. A few pairs (LOAD hook vs. proactive partner's brief, sleep consolidation vs. gardener) could still be confused at first glance.
All tools share the consistent 万忆 prefix, but the second element mixes noun-style names like 错题本 and 园艺师 with verb-object names like 记录见闻 and 更新交易锚点. The naming is readable, but there is no uniform verb_noun convention across the set.
With 23 tools, this sits in the heavy range, and many tools bundle multiple subcommands, making the actual surface even larger. The count is not absurd for a comprehensive memory-and-reflection system, but it feels over-scoped for a typical MCP server.
The server covers memory writing, recall, compression, consolidation, self-checks, hooks, progress persistence, and proactive guardrails very extensively. However, there is no explicit general memory update or delete/forget tool, which leaves a notable gap in the core CRUD lifecycle for arbitrary memories.
Maintenance
Related MCP Connectors
Persistent memory for AI agents. Semantic search, memory graph, W3C DID identity.
Persistent memory for AI agents. EU-hosted, privacy-first, hybrid recall, contradiction detection.
Persistent memory and knowledge graphs for AI agents. Hybrid search, context checkpoints, and more.
- memnodeOAuthdev.memnode
Persistent, inspectable memory for AI agents with lineage, correction, and a hosted MCP endpoint.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceProvides persistent AI agent memory using a local vector database for long-term semantic storage and short-term session scratchpads. It enables low-latency memory operations including search, storage, and bulk management without external cloud dependencies.-
- AlicenseNot gradedqualityBmaintenanceLocal-first, multi-user shared memory for AI agents with semantic search, offline support, and team synchronization.MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to maintain persistent, local memory with retrieval-augmented search, knowledge graphs, and context surfacing, without any cloud dependencies.180MIT
- AlicenseAqualityAmaintenanceGives AI agents persistent, local-first memory using SQLite and on-device embeddings, enabling semantic search and recall across sessions with no cloud calls.87MIT