Token导航 LogoToken导航TokenDH.com
Memex Twos MCP logo
文档知识stdio官方级别未说明来源级核验

Memex Twos MCP

MCP Server

Memex Twos MCP是一个将Twos应用导出的数据转换为可查询知识库的服务,支持通过自然语言查询个人任务历史,适用于个人知识管理和任务回顾。

工具数

0

提示词数

0

GitHub Stars

3

资源数

0
知识管理本地处理PythonClaudeClaude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

Zarathustrum

提供方

Zarathustrum

最后核验

2026/5/17 20:21

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python scripts/setup_wizard.py

详细介绍

Memex Twos MCP

转变你的 应用程序导出到Claude的可查询知识库中。

![License: MIT](LICENSE) ![Python 3.10+](https://www.python.org/)

这是什么?

Memex Twos MCP是一款 模型上下文协议 该服务器允许您通过Claude使用自然语言从Twos生产力应用程序查询您的个人“事物”历史。

不要手动搜索成千上万的东西,问问克劳德:

  • “去年夏天,我对家居装修有什么看法?”
  • “给我看看我和爱丽丝计划的一切”
  • “查找标记为#work from January的内容”

特性

  • 所有内容的全文搜索(FTS5)
  • 用于时间分析的日期范围查询
  • 人员和标签过滤
  • 模式分析构建块
  • 自动数据整理(删除重复项,修复质量问题)
  • 通过Claude Code进行可选的人工智能语义分析
  • 本地优先隐私:您的数据保留在您的计算机上
  • 面向初学者的交互式设置向导

快速开始

1.导出您的Twos数据

在Twos应用程序中:设置->导出-> 带时间戳的Markdown

重要提示: 您必须选择“带时间戳的Markdown”(不是纯Markdown)。解析器需要时间戳来提取日期和组织数据。

2.运行安装向导

git clone https://github.com/yourusername/memex-twos-mcp.git
cd memex-twos-mcp
./setup_wizard.sh /path/to/Twos-Export.md

就是这样! 向导将:

  • 创建虚拟环境(如果需要)
  • 安装依赖项
  • 将导出转换为JSON
  • 清理和整理您的数据(删除重复项,修复质量问题)
  • 将清理后的数据加载到SQLite
  • 生成Claude桌面配置

可选: 指定自定义Claude配置位置:

./setup_wizard.sh /path/to/Twos-Export.md /path/to/claude_desktop_config.json

备选方案: 直接运行Python向导以进入交互模式:

python scripts/setup_wizard.py
# Or with explicit paths:
python scripts/setup_wizard.py --export-file /path/to/Twos-Export.md --claude-config /path/to/claude_desktop_config.json

要全局覆盖Claude配置自动检测,请设置 MEMEX_CLAUDE_CONFIG.

3.配置Claude

重新启动Claude Desktop并尝试: “我的任务数据库中有什么?”

Windows用户: 关闭Claude Desktop窗口有时不会退出该过程。如果“重新启动”后MCP配置未加载,请通过任务管理器(Ctrl+Shift+Esc)完全终止Claude→ 找到“克劳德”→ 结束任务),然后重新启动应用程序。

需求

必要的

  • Python 3.10或更高版本
  • Twos应用程序,可导出数据
  • Claude Desktop(用于使用MCP服务器)

可选(用于AI功能)

从三家LLM提供商中选择一家进行人工智能数据整理和实体分类:

  1. LM工作室 (本地/免费)-推荐给注重隐私的用户
  2. 克劳德代码CLI (订阅)-使用您的Claude订阅配额
  3. 无烟煤API (每个代币付费)-直接API访问

注: AI功能是可选的。MCP服务器仅适用于基本梳理。

LLM配置

使用YAML配置文件配置首选提供程序(推荐):

  1. 复制示例配置:
   cp .llm_config.yaml.example .llm_config.yaml
  1. 编辑 .llm_config.yaml 使用您的提供商设置:
   # For LM Studio (local, free, private)
   default_provider: lmstudio
   providers:
     lmstudio:
       endpoint: http://localhost:1234

   # For Claude CLI (uses subscription)
   # default_provider: claude-cli

   # For Anthropic API (pay-per-token)
   # default_provider: anthropic-api
   # providers:
   #   anthropic-api:
   #     api_key: sk-ant-api03-...
  1. 你准备好了! 脚本将使用您配置的提供程序 --ai-analysis--ai-classify 旗帜。

重要提示: 配置文件被gitignored,因此您的API密钥保持私有。

安装LM Studio(推荐)

对于本地免费AI处理:

  1. 下载LM工作室: https://lmstudio.ai/
  2. 加载模型 (例如,拉玛、米斯特拉尔)
  3. 启动本地服务器 (默认端口1234)
  4. 配置:endpoint: http://localhost:1234.llm_config.yaml

优点:

  • 100%本地,无数据发送到外部服务器
  • 免费使用
  • 无需订阅或API费用
  • 离线工作

安装Claude Code CLI(替代方案)

如果您更喜欢使用Claude订阅:

  1. 安装Claude Code命令行界面:
   npm install -g @anthropic/claude-code
   # or follow: https://code.claude.com/docs/quickstart
  1. 验证安装:
   claude --version
  1. 配置:default_provider: claude-cli.llm_config.yaml

使用Claude CLI时:

  • 使用您的Claude订阅配额(与Claude Desktop相同)
  • 处理时间:典型数据集2-5分钟
  • 需要互联网连接
  • 所有数据都保持在本地(Claude Code在您的计算机上运行)

无烟煤API(备选方案)

对于API的直接访问:

  1. 获取API密钥: https://console.anthropic.com/
  2. 配置: 添加 api_key.llm_config.yaml

注: 按代币付费定价适用。

安装spaCy NER(可选,推荐)

为了准确提取人员,减少80%的误报:

pip install -e ".[ner]"
python -m spacy download en_core_web_sm

为什么使用NER?

  • 使用NER: 准确识别真实姓名(约90%的精度)
  • 没有NER: 使用正则表达式回退,容易出现误报(动词如“Set”、“Plan”,月份如“March”、“May”)

用途:

# With NER (recommended, default)
python3 src/convert_to_json.py data/raw/twos_export.md -o data/processed/twos_data.json

# Without NER (faster but less accurate)
python3 src/convert_to_json.py data/raw/twos_export.md -o data/processed/twos_data.json --no-ner

示例:

  • 《遇见爱丽丝》→ NER提取“爱丽丝”✅ | 正则表达式提取“Alice”✅
  • “设置提醒”→ NER未提取任何内容✅ | 正则表达式提取“Set”❌
  • “三月会议”→ NER未提取任何内容✅ | 正则表达式提取“March”❌

安装语义搜索(可选)

对于结合词汇(BM25)和语义(向量)搜索的混合搜索:

pip install sentence-transformers sqlite-vec

# Download embedding model (~90MB)
python -c "from sentence_transformers import SentenceTransformer; SentenceTransformer('all-MiniLM-L6-v2')"

为什么要使用语义搜索?

  • 仅限词汇: 匹配精确的关键字-“医生预约”找到“医生”和“预约”
  • 语义: 了解概念-“体检”还包括“医生预约”、“牙医就诊”
  • 更适合“搬家”、“健康问题”、“工作项目”等概念性查询

用途:

# Load data with embeddings (default)
python3 scripts/load_to_sqlite.py data/processed/twos_data_cleaned.json

# Disable embeddings (faster loading)
MEMEX_DISABLE_EMBEDDINGS=1 python3 scripts/load_to_sqlite.py data/processed/twos_data_cleaned.json

# Migrate existing database to add embeddings
python3 scripts/migrate_add_embeddings.py data/processed/twos.db

在克劳德桌面中:

# Keyword search (exact matches)
"Search for the exact word 'doctor'"

# Semantic search (understands meaning) - automatically selected for conceptual queries
"Find health-related things from last year"  # Finds "doctor", "dentist", "checkup", etc.

演出

  • 嵌入生成:在\<30秒内生成约10K个东西(CPU)
  • 混合搜索:中位数\<200ms(10K个东西)
  • 存储空间:每件约1.5KB(10K件约15MB)

增量摄入

为了在添加新数据或进行更改时更快地更新:

# First load (full rebuild)
python3 scripts/load_to_sqlite.py data/processed/twos_data_cleaned.json

# Subsequent updates (incremental - only new/changed things)
python3 scripts/load_to_sqlite.py data/processed/twos_data_cleaned.json --mode=append

# Or use shorthand
python3 scripts/load_to_sqlite.py data/processed/twos_data_cleaned.json --incremental

# Sync mode (insert new, update changed, delete removed)
python3 scripts/load_to_sqlite.py data/processed/twos_data_cleaned.json --mode=sync

为什么要使用增量模式?

  • 完全重建: 3秒内完成10K,30秒内完成100K
  • 增量: 在约0.3秒内完成100件新事物(速度提高10倍)
  • 只有处理改变的事物,保留不变事物的嵌入
  • 三种模式:

- append (默认增量):仅插入新内容,最安全的添加方式 - sync:插入新内容、更新已更改、删除已删除(完全同步) - rebuild:全部删除并重新生成(默认行为)

迁移现有数据库:

python3 scripts/migrate_add_incremental.py data/processed/twos.db

它是如何工作的:

  • 内容哈希检测更改(时间戳+内容+section_header)
  • 仅更新已更改的内容,保留现有嵌入
  • 导入审核跟踪跟踪中的所有更改 imports 桌子
  • FTS索引保持自动同步

演出

  • 添加100个新事物(总共10K):~0.3秒(比重建快10倍)
  • 更新100件事(总共10K):~0.5秒(比重建快6倍)
  • 非常适合日常更新或小型数据刷新

查询示例

  • “给我看看去年12月的所有事情”
  • “今年我和鲍勃有什么计划?”
  • “查找有关医生预约的信息”
  • “显示所有标记为#emergency的内容”
  • “我最常见的任务主题是什么?”
  • “给我一个数据库健康检查”

快速健康检查

要验证您的配置是否指向正确的数据库:

python3 scripts/db_count.py

这将打印数据库路径、总事务计数和任何可用的负载元数据。

手动工作流程

如果您更喜欢分步控制而不是安装向导:

基本工作流程(无人工智能)

# 1. Install dependencies
pip install -r requirements.txt

# 2. Convert Twos export to JSON
python3 src/convert_to_json.py data/raw/twos_export.md -o data/processed/twos_data.json

# 3. Groom data (remove duplicates, fix issues)
python3 scripts/groom_data.py

# 4. Load to SQLite
python3 scripts/load_to_sqlite.py data/processed/twos_data_cleaned.json

# 5. Configure Claude Desktop (add MCP server config)
# See MCP_SETUP.md for configuration details

高级工作流(带AI)

# 1-2. Same as basic (install deps, convert to JSON)

# 3. Groom data WITH AI semantic analysis
python3 scripts/groom_data.py --ai-analysis

# 4. Classify and normalize entities
python3 scripts/classify_entities.py --ai-classify --apply-mappings

# 5. Load normalized data to SQLite
python3 scripts/load_to_sqlite.py data/processed/twos_data_cleaned_normalized.json

# 6. Configure Claude Desktop

工作流比较

功能基本高级(AI)
重复删除✅ 完全重复✅ 精确+语义
损坏的引用修复
实体分类✅ 人/地点/动词
案例规范化
模式检测
查询准确性良好优秀
设置时间2分钟5-10分钟
需要克劳德代码

建议: 从基本工作流程开始,如果你想要更好的实体过滤,升级到人工智能。

文档

运作原理

Twos Export (MD)
    ↓
Parser (convert_to_json.py)
    ↓
JSON (twos_data.json)
    ↓
Data Grooming (groom_data.py)
    ↓
Cleaned JSON (twos_data_cleaned.json)
    ↓
Entity Classification (classify_entities.py) [optional]
    ↓
Normalized JSON (twos_data_cleaned_normalized.json)
    ↓
SQLite Database (load_to_sqlite.py)
    ↓
MCP Server (server.py)
    ↓
Claude Desktop

步骤说明:

  1. 解析器 -从Markdown中提取事物、人物、标签、时间戳
  2. 梳理 -删除重复项、修复损坏的引用、检测问题
  3. 实体分类 (可选)-对人、地点和动词进行分类,对名字进行规范化
  4. SQLite -使用全文搜索(FTS5)和索引查询存储数据
  5. MCP服务器 -公开Claude的查询工具(搜索、日期范围、过滤器)
  6. 克劳德桌面版 -任务历史记录的自然语言界面

数据整理

安装向导包括默认运行的自动数据清理:

Python自动修复(快速,免费):

  • 删除完全重复的内容(1分钟内相同的内容)
  • 修复了损坏的父任务引用
  • 检测正常化机会
  • 生成详细的变更报告

可选AI分析:

  • 语义模式检测和主题分类
  • 增强的重复识别
  • 模式改进建议
  • 使用Claude Code订阅配额(选择加入 --ai-analysis)

所有更改都记录到 docs/grooming-reports/ 并且原始数据永远不会被修改。对于手动梳理或调音:

# Basic grooming (always recommended)
python scripts/groom_data.py data/processed/twos_data.json

# With AI semantic analysis
python scripts/groom_data.py data/processed/twos_data.json --ai-analysis

# Tuning options
python scripts/groom_data.py --duplicate-window 14  # More aggressive duplicate detection

DATA_GROOMING_PROMPT.md 了解详情。

实体分类

解析器从任务中提取“people”,但经常将动词、地点和常用词误分类为people(例如,“New”、“Put”、“Seattle”)。实体分类解决了这个问题:

快速工作流

# 1. Extract entities and review summary
python scripts/classify_entities.py

# 2. AI classification (requires Claude Code)
python scripts/classify_entities.py --ai-classify

# 3. Apply classifications to create normalized data
python scripts/classify_entities.py --apply-mappings

# 4. Load normalized data
python scripts/load_to_sqlite.py data/processed/twos_data_cleaned_normalized.json

它的作用

  • 提取物 所有具有频率计数的唯一人员/标签
  • 分类 实体分为:人、地点、项目、动词、其他(人工智能或手动)
  • 正常化 案例变体(例如,“Alice”和“Alice”→ “爱丽丝”)
  • 过滤器 来自people领域的非人实体
  • 蜜饯 原始数据(创建新的规范化文件)

无AI(跳过实体分类)

如果你没有克劳德代码,你可以跳过实体分类:

# Just load the cleaned data directly
python scripts/load_to_sqlite.py data/processed/twos_data_cleaned.json

MCP服务器可以工作,但像“与爱丽丝的事情”这样的查询可能包含错误匹配(例如,句子开头的动词被误分类为人)。

注: 实体分类是可选的,但建议用于提高查询准确性。计划在未来的版本中手动导入/导出CSV。

隐私和安全

  • 所有数据处理都在本地进行
  • 没有任何内容上传到外部服务器
  • MCP连接是本地的(stdin/stdout)

贡献

欢迎捐款。看 贡献.md.

许可证

MIT许可证。看 许可证.

支持

  • 报告bug:使用GitHub问题模板
  • 请求功能:使用GitHub问题模板
  • 阅读文档: MCP_SETUP.md

Memex Twos MCP-常见问题

我需要知道如何编码吗?

不!有一个安装向导可以引导您完成所有操作。你需要熟练地运行一些终端命令,但这很简单。如果你能从Twos导出并复制粘贴命令,那就很好了。

要求是什么?

  • Python 3.10+(大多数系统已经有了这个)
  • Claude Desktop(用于使用MCP服务器)
  • Twos导出文件
  • *可选:* Claude Code CLI,如果你想要AI驱动的数据整理和实体分类(提高准确性)

我的数据是私有的吗?

100%.所有东西都留在你的机器上-除了Claude Desktop查询其API时(与任何Claude对话相同),没有任何东西被上传到外部服务器。MCP服务器通过stdin/stdout在本地运行。

什么是“实体分类”?

Twos解析器有时会将句首动词和地名误分类为人(例如,“New York”→ 名为“新”或“把钥匙收起来”的人→ 名为“Put”的人)。实体分类使用AI来过滤这些变量并规范化名称变体。它是可选的,但会使“与爱丽丝的事情”这样的查询更加准确。

您可以使用AI运行它(需要Claude Code,需要2-3分钟)或完全跳过它。服务器以任何方式工作。

安装需要多长时间?

  • 基本设置(无AI功能):约2分钟
  • AI修饰和实体分类的完整设置:约7-10分钟

AI步骤是可选的,如果你想快速开始,可以稍后运行。

我可以运行什么类型的查询?

以下是我尝试过的一些例子:

  • “我对去年夏天的装修有什么看法?”
  • “向我展示我用\[人名\]计划的一切”
  • “查找标记为#work from January的内容”
  • “我第一次提到地下室项目是什么时候?”
  • “给我一份所有与承包商相关的事情的时间表”

基本上,你可以在Twos中手动搜索任何东西,但克劳德现在可以通过对话来完成,并在几个月内拼凑出线索。

它与Twos API或实时同步一起工作吗?

不,它使用Markdown导出。您从Twos导出,运行转换器,并将其加载到SQLite中。如果你想稍后更新它,只需再次导出并重新运行加载程序。不是实时的,但非常适合回顾和分析。

我能看到一个它工作的例子吗?

我不想发布带有个人数据的截图,但如果人们感兴趣,我很乐意分享示例查询/结果。README中也有一些示例查询。

哇,这是你自己做的吗?

不,这个项目是Claude Code和Codex多次迭代的结果,并得到了Gemini CLI和Perplexity的一点帮助。

我知道如何构建它和我想要的数据流,人工智能在实现和调试方面做了繁重的工作。

目录标签

目录标签

知识管理本地处理PythonClaude本地部署自然语言查询数据转换任务分析

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

token

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiotoken部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP