A modular MCP server for knowledge management, perception, memory, observation, and reasoning with support for full-text search, semantic retrieval, and multi-domain knowledge organization.
Server has 23 tools with basic schemas and descriptions, but significant quality gaps. Most tool descriptions are present (10-50 chars, below the 50-200 char baseline for LLM optimization). Parameter descriptions exist but are minimal and lack constraint details (enums, ranges, formats). No documented output schemas visible. Error handling is not evident in tool definitions. Tool naming follows verb_noun convention (good), but several tools lack clarity on side effects and prerequisites. No tool annotations (readOnlyHint/destructiveHint) despite clear WRITE vs READ_ONLY risk classifications in metadata.
Recommend external tools and skills based on query
Lazily load context with optional ambient knowledge injection and cross-end activity detection
Full-text search using FTS5 index
Inspect system health including tool latency and anomalies
Generate digest of knowledge in a domain
Explore knowledge topics and related concepts
Identify gaps in knowledge coverage
No tool annotations (readOnlyHint/destructiveHint/idempotentHint) despite clear WRITE vs READ_ONLY risk classifications in metadata. LLMs cannot infer side effects from names alone.
Parameter descriptions are minimal (10-30 chars) and lack constraint details. No enums, ranges, formats, or validation rules visible. E.g., 'scope' in knowledge_search lists examples ('all, 原料, 技能, 作品') but should be an enum.
No documented output schemas. Tools return data but LLMs cannot plan downstream calls without knowing response structure. E.g., does knowledge_search return [id, title, content, score]? Does it support pagination?
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 50 | <=2025-11-25 | v2 |
Inject new knowledge into the knowledge base
Search knowledge base using full-text and semantic retrieval
Search episodic and semantic memory
Get memory statistics and health metrics
Write entry to episodic memory
List active observation rules and monitors
Get observation statistics
Create a new knowledge page
Read a knowledge page
Update an existing knowledge page
Save raw material to the knowledge base
Mark content for refinement
Get refinement status of content
Refresh full-text search index
Get system standard operating procedures
Push user feedback to memory
Tool descriptions are too brief (40-55 chars average vs 50-200 char baseline). Missing WHEN to use, prerequisites, and side effects. E.g., 'memory_write' lacks context on memory types and when episodic vs semantic applies.
No error handling guidance in tool definitions. No recovery hints, retryability classification, or actionable error messages documented. LLMs cannot self-correct on failures.