feat(§03): 实现 MCP Server 核心 - Storage/Service/Tool/MCP Protocol Layers

**Storage Layer:**
- Database 类(aiosqlite + WAL + 并发保护)
- WikiPage 数据模型
- fix_dirty_states 恢复机制
- FTS5 全文搜索支持
- 完整的 SQLite 表结构

**Service Layer:**
- CacheService(LRU 缓存 + TTL + 大小限制)
- QueryService(查询服务)
- ParserService(Markdown 解析)
- IndexerService(索引服务)
- GraphService(链接图服务)

**Tool Layer (8 个 MCP Tools):**
- wiki_query - FTS5 全文搜索 + 标签过滤
- memory_bridge - 按工具来源浏览
- wiki_status - 索引状态
- wiki_lint - 健康审计
- cross_linker - 缺失链接发现
- tag_taxonomy - 标签一致性
- wiki_synthesize - 跨概念综合分析
- daily_update - 日常维护 + hot.md 生成

**MCP Protocol Layer:**
- MCP 协议解析和封装
- 工具注册和路由
- 错误处理和日志
- stdio 模式支持

**配置和部署:**
- requirements.txt
- config.example.yaml
- ecosystem.config.cjs (PM2)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-26 11:32:43 +08:00
parent 67a53d82de
commit dfd8421dc6
22 changed files with 2561 additions and 0 deletions
+18
View File
@@ -0,0 +1,18 @@
module.exports = {
apps: [{
name: 'wiki-mcp',
script: 'python',
args: '-m mcp_server.main',
cwd: '/Users/chufeng/.openclaw/sanguo_projects/sanguo_llmwiki',
instances: 1,
autorestart: true,
watch: false,
max_memory_restart: '500M',
env: {
PYTHONUNBUFFERED: '1',
WIKI_VAULT_PATH: '/Volumes/KnowledgeBase/wiki-vault',
WIKI_INDEX_PATH: '~/.sanguo-llmwiki/index.db',
LOG_LEVEL: 'INFO'
}
}]
};