使用说明
Flomo MCP Server
通过 Playwright 浏览器自动化实现 flomo 备忘录同步到 Obsidian 知识库的 MCP 服务器。
功能特性
- flomo_login - 打开浏览器登录 flomo,支持微信扫码登录
- flomo_export - 自动导出 flomo 数据到本地
- flomo_sync - 解析导出数据并同步到 Obsidian 知识库
安装
cd E:\AI\mcp\flomo-mcp
npm install
npm run build
npx playwright install chromium
配置
1. 配置环境变量
复制 .env.example 为 .env 并修改:
OBSIDIAN_VAULT_PATH=F:\AllBlue
FLOMO_TARGET_DIR=00收件箱\flomo
2. 配置到 Claude Desktop
编辑 Claude Desktop 配置文件:
- Windows:
%APPDATA%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
添加以下配置:
{
"mcpServers": {
"flomo-mcp": {
"command": "node",
"args": ["E:\\AI\\mcp\\flomo-mcp\\dist\\index.js"],
"env": {
"OBSIDIAN_VAULT_PATH": "F:\\AllBlue",
"FLOMO_TARGET_DIR": "00收件箱\\flomo"
}
}
}
}
工具说明
flomo_login
打开浏览器进行 flomo 登录。支持微信扫码登录,登录成功后会话将被保存。
参数: 无
返回: 登录状态信息
flomo_export
导出 flomo 数据到本地文件。
参数:
- outputPath?: string - 自定义保存路径
- startDate?: string - 开始日期 (YYYY-MM-DD)
- endDate?: string - 结束日期 (YYYY-MM-DD)
- format?: "html" | "json" - 导出格式,默认 html
返回: 导出文件路径和统计信息
flomo_sync
将导出的 flomo 数据同步到 Obsidian 知识库。
参数:
- vaultPath?: string - Obsidian 知识库路径,默认从环境变量读取
- targetDir?: string - 目标目录,默认 "00收件箱\flomo"
- mergeByDate?: boolean - 按日期合并,默认 true
- convertTags?: boolean - 转换标签格式,默认 true
- includeMetadata?: boolean - 包含元数据,默认 true
- exportPath?: string - 自定义导出文件路径
返回: 同步统计信息
使用流程
1. 调用 flomo_login → 打开浏览器扫码登录
2. 调用 flomo_export → 导出 flomo 数据
3. 调用 flomo_sync → 同步到 Obsidian
输出格式
同步后的文件结构:
{vaultPath}/{targetDir}/
├── 2024-03-05/
│ └── memo@2024-03-05.md
├── 2024-03-06/
│ └── memo@2024-03-06.md
└── ...
Markdown 文件格式(与 flomo-importer 兼容):
# Flomo 2024-03-06
> 同步时间: 2024/3/6 12:00:00
📅 [[2024-03-06]] 14:30
memo 内容...
#标签
---
📅 [[2024-03-06]] 15:00
另一条 memo...
---
%% memo-id: flomo-xxx %%
调试
# 使用 MCP Inspector 调试
npm run inspect
# 开发模式(热重载)
npm run dev
注意事项
- 导出频率限制:flomo 免费用户每 7 天只能导出一次
- 登录态持久化:登录状态保存在
./auth-data目录 - 去重机制:通过隐藏的
memo-id实现增量同步
技术栈
- TypeScript + Node.js
- @modelcontextprotocol/sdk - MCP 协议实现
- Playwright - 浏览器自动化
- Cheerio + Turndown - HTML 解析与转换
- Zod - 参数验证
License
MIT