一、整体架构概述
在开始之前,让我们先了解这四个工具的角色:
| 工具 | 角色 | 作用 |
|---|---|---|
| Obsidian | 笔记管理 | 本地 Markdown 笔记管理,支持双向链接 |
| MCP Server | 知识索引 | 将笔记向量化,建立语义搜索能力 |
| OpenCode | AI 大脑 | 本地 AI 编程助手,支持多种模型 |
| Agent Client | 对接桥梁 | 让 Obsidian 能调用 AI 能力 |
整个流程是:Obsidian 管理笔记 → MCP Server 将笔记向量化并提供搜索 API → OpenCode 作为 AI 大脑调用 MCP 服务 → Agent Client 将 AI 能力集成到 Obsidian 中。
二、环境准备
在开始安装之前,请确保你的电脑上已安装:
- Node.js (推荐 v18 或更高版本)
- Ollama (用于本地运行嵌入模型)
- npm (Node.js 包管理器)
查看安装状态:
node --version
npm --version
ollama --version
三、第一步:安装和配置 Obsidian
3.1 下载安装 Obsidian
访问 https://obsidian.md 下载并安装 Obsidian 客户端。创建或选择一个笔记库(Vault)作为你的知识库。
3.2 安装必要插件
- 安装 BRAT 插件
- 打开设置 → 社区插件 → 关闭安全模式
- 点击浏览,搜索"BRAT"并安装
- 通过 BRAT 安装 Agent Client Plugin
- 启用 BRAT 后,点击"Add Beta plugin"
- 输入:https://github.com/agent-client/obsidian-agent-client
- 安装 Obsidian MCP Server
- 同样通过 BRAT 安装:https://github.com/Minhao-Zhang/obsidian-mcp-server
四、第二步:配置 Ollama 和向量化模型
4.1 安装 Ollama
从 https://ollama.com 下载并安装 Ollama。
4.2 拉取嵌入模型
# 拉取轻量级嵌入模型(推荐)
ollama pull nomic-embed-text
# 或者使用阿里 Qwen 的嵌入模型
ollama pull qwen3-embedding:0.6b
4.3 启动 Ollama 服务
ollama serve
Ollama 会自动在 http://localhost:11434 提供 OpenAI 兼容的 API。
五、第三步:配置 Obsidian MCP Server
5.1 配置嵌入模型
- 打开 Obsidian 设置,找到 MCP Server 插件
- 在"Embedding Model"部分进行配置:
| 配置项 | 值 |
|---|---|
| API Endpoint | http://localhost:11434/v1 |
| Model Name | nomic-embed-text |
| API Key | ollama (任意值) |
- 点击"Verify"测试连接
5.2 索引知识库
- 按 Ctrl/Cmd+P 打开命令面板
- 执行"Re-index Vault (MCP Server)"
- 等待索引完成
索引完成后,你的所有笔记都具备了语义搜索能力!
5.3 启动 MCP Server
在命令面板执行"Start MCP Server",服务默认在 http://localhost:9080/sse 运行。
六、第四步:安装和配置 OpenCode
6.1 安装 OpenCode
npm install -g opencode-ai
查看安装路径:
where opencode
6.2 配置 OpenCode
创建配置文件 ~/.config/opencode/opencode.json:
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"my-obsidian-knowledge": {
"type": "remote",
"url": "http://localhost:9080/sse",
"enabled": true
}
},
"model": {
"provider": "ollama",
"model": "qwen2.5:7b"
}
}
6.3 验证 MCP 连接
运行 OpenCode:
opencode
在交互界面输入:
/mcps
如果能看到"my-obsidian-knowledge"已连接,说明配置成功!
七、第五步:配置 Agent Client
7.1 配置自定义 Agent
- 打开 Obsidian 的 Agent Client 插件设置
- 点击"Add custom agent",配置如下:
| 配置项 | 值 |
|---|---|
| Agent ID | openCode |
| Display name | openCode |
| Path | 你电脑上 opencode.cmd 的完整路径 |
| Arguments | acp |
7.2 环境变量配置
在 Agent 配置中添加环境变量:
OPENAI_API_KEY=sk-your-key
OPENAI_BASE_URL=https://dashscope.aliyuncs.com/compatible-mode/v1
OPENAI_MODEL=qwen3-coder-plus
或者如果你使用本地 Ollama:
OPENAI_API_KEY=ollama
OPENAI_BASE_URL=http://localhost:11434/v1
OPENAI_MODEL=qwen2.5:7b
八、第六步:开始使用
8.1 在 Obsidian 中调用 AI
现在,你可以在 Obsidian 中:
- 使用命令面板调用 Agent
- 让 AI 帮你搜索知识库中的相关内容
- 让 AI 根据你的笔记回答问题
8.2 使用示例
示例 1:语义搜索笔记
'帮我找找关于 React Hooks 的笔记'
示例 2:基于笔记问答
'根据我的学习笔记,解释一下什么是闭包?'
示例 3:写作辅助
'帮我整理一下这篇会议记录的重点'
九、进阶扩展
9.1 添加更多 MCP 服务
OpenCode 支持添加多个 MCP 服务,例如文件系统 MCP:
{
"mcp": {
"my-obsidian-knowledge": {
"type": "remote",
"url": "http://localhost:9080/sse",
"enabled": true
},
"filesystem": {
"type": "local",
"enabled": true,
"command": ["npx", "-y", "@modelcontextprotocol/server-filesystem", "D:/projects"]
}
}
}
9.2 使用云端大模型
如果本地模型不够强大,可以使用阿里云百炼、OpenAI 等云端服务:
{
"model": {
"provider": "openai",
"model": "gpt-4",
"apiKey": "sk-xxx",
"baseUrl": "https://api.openai.com/v1"
}
}
十、常见问题
Q1: MCP Server 启动失败?
确保 Ollama 正在运行,且嵌入模型已正确安装。
Q2: 向量搜索结果不准确?
尝试重新索引知识库,或更换嵌入模型。
Q3: OpenCode 无法连接 MCP?
检查 http://localhost:9080/sse 是否可访问,防火墙是否阻止。
总结
通过以上步骤,你已经成功搭建了一个本地私有化的 AI 知识库:
✅ 数据完全本地存储,隐私安全有保障
✅ 支持语义搜索,快速定位相关内容
✅ AI 深度集成,问答、写作、整理样样精通
✅ 可扩展性强,可接入多种 MCP 服务
这个组合让 Obsidian 从一个简单的笔记软件摇身变成了真正的AI 知识管理助手!
