← 返回目录
E

enquire-mcp

社区
你的 Obsidian 知识库成为所有 AI 代理的私有记忆与文档智能引擎。
GitHub 源仓库 ↗
★ 33 Stars 分类 · 其他 热门 源版本 0db770a4dca3
67FMRS · C

enquire-mcp 是一个功能全面的 Obsidian MCP 服务器,以本地优先和隐私保护为核心,提供强大的混合检索和 RAG 能力。适合专业人士和隐私敏感用户。注意其丰富的功能需要一定配置,且包含实验性特性,建议等待稳定版本。

可靠性
10/20
安全与权限
16/20
维护活跃度
12/20
文档质量
15/20
安装易用性
14/20
查看 FMRS 评分方法 →

enquire-mcp 是一个本地优先的 MCP 服务器,能将你现有的 Obsidian 知识库(包含 Markdown、PDF、Canvas 和 Bases)转化为一个持久、可查询的知识数据库,供任何兼容 MCP 的 AI 代理使用。它支持混合检索(BM25、TF-IDF、多语言嵌入)、基于 BGE 的本地重排序、HNSW 向量索引、新鲜度感知及引用来源。默认只读,服务期间无云端调用,支持 50 多种语言。

工具能力

obsidian_search
进行混合检索(RRF 融合),返回带引用的笔记和 PDF 结果。
obsidian_hyde_search
使用 HyDE 增强查询后检索,提高语义召回。
obsidian_search_text
按文本内容搜索笔记。
obsidian_full_text_search
使用 FTS5 进行全文搜索。
obsidian_semantic_search
基于嵌入向量的语义搜索。
obsidian_embeddings_search
直接进行嵌入向量搜索。
obsidian_find_similar
查找与给定笔记相似的笔记。
obsidian_resolve_wikilink
解析维基链接到目标笔记。
obsidian_get_backlinks
获取指向笔记的反向链接。
obsidian_get_outbound_links
获取笔记的向外链接。
obsidian_get_note_neighbors
获取笔记的邻居(直接链接的笔记)。
obsidian_get_unresolved_wikilinks
获取笔记中未解析的维基链接。
obsidian_find_path
在笔记图中查找两个笔记之间的路径。
obsidian_get_communities
检测笔记中的主题社区(GraphRAG-light)。
obsidian_frontmatter_get
获取笔记的前置元数据。
obsidian_frontmatter_search
按前置元数据搜索笔记。
obsidian_dataview_query
执行 Dataview 查询。
obsidian_list_tags
列出笔记中所有标签。
obsidian_read_note
读取笔记的内容。
obsidian_list_notes
列出知识库中的笔记。
obsidian_get_recent_edits
获取最近编辑的笔记。
obsidian_stale_notes
列出过时或陈旧的笔记。
obsidian_open_questions
列出未解决的问题或待办。
obsidian_context_pack
生成与上下文相关的笔记集合。
obsidian_chat_thread_read
读取聊天线程文件。
obsidian_open_in_ui
在 Obsidian 界面中打开笔记。
obsidian_stats
获取知识库统计信息。
obsidian_read_pdf
从 PDF 中提取文本(含页码)。
obsidian_list_pdfs
列出知识库中的 PDF。
obsidian_ocr_pdf
对 PDF 页面进行 OCR。
obsidian_read_canvas
读取 Canvas 文件内容。
obsidian_list_canvases
列出知识库中的 Canvas 文件。
obsidian_list_bases
列出知识库中的 Bases(数据库)。
obsidian_read_base
读取一个 Base 的内容。
obsidian_query_base
对 Base 执行查询。
obsidian_create_note
创建一个新的笔记。
obsidian_append_to_note
向笔记追加内容。
obsidian_rename_note
重命名笔记。
obsidian_replace_in_notes
在笔记中替换文本。
obsidian_archive_note
归档笔记。
obsidian_frontmatter_set
设置笔记的前置元数据。
obsidian_chat_thread_append
向聊天线程追加内容。
obsidian_lint_wiki
检查维基链接问题。
obsidian_paper_audit
审核论文或文档的完整性。
obsidian_validate_note_proposal
验证笔记提案。
obsidian_mark_useful
标记检索结果为有用,用于反馈循环。

安装接入

  1. 全局安装:npm install -g @oomkapwn/enquire-mcp。2. 将 MCP 配置添加到你的客户端(详见文档或使用 enquire-mcp configure 命令)。3. 配置示例见 install_config。
claude_desktop_config.json
{
  "mcpServers": {
    "obsidian": {
      "command": "npx",
      "args": ["-y", "@oomkapwn/enquire-mcp", "serve", "--vault", "/path/to/vault"]
    }
  }
}

选型与风险

适合谁

  • 注重隐私、希望本地运行 AI 记忆的用户。
  • 使用多个 AI 客户端,需要统一记忆层的人。
  • 熟悉 Obsidian 并希望保留 Markdown 可移植性的用户。

不适合谁

  • 需要云端同步或远程访问(除非自行设置 HTTP 传输并代理)的用户。
  • 希望无需本地模型下载或无需任何技术配置即可使用的用户。
  • 只需要简单全局搜索而无 AI 集成的用户。

所需权限

  • 读取 Obsidian 知识库目录(必需)。
  • 创建和编辑笔记(仅在启用 `--enable-write` 时)。
  • 下载模型和语言包(仅通过 `setup`、`build-embeddings`、`install-model`、`install-ocr-lang` 命令)。

风险与副作用

  • 输入提示注入:知识库内容可能包含指令,需在提示中声明内容为数据而非指令。
  • 写操作:如果启用写权限,可能意外修改笔记,建议使用 `dry_run` 和版本控制。
  • 本地模型下载:首次需要下载模型(约 118MB),确保网络可靠。
  • 路径遍历:确保 vault 路径正确且客户端不会访问 vault 外部文件(服务器已加强验证)。

常见排障

  1. 1. 确认 vault 路径正确且存在。
  2. 2. 检查 MCP 配置中的命令和参数是否为绝对路径。
  3. 3. 运行 `enquire-mcp doctor` 诊断就绪状态。
  4. 4. 确保防火墙允许本地进程通信(仅需 stdio 时)。
  5. 5. 查看版本兼容性:README 和 CHANGELOG 中提到与 Claude Desktop 可能存在兼容性问题。

使用场景

为 AI 代理提供长期记忆,在会话间保留项目历史、决策和知识。
作为个人第二大脑,支持多种语言和格式的语义检索。
用于代理式 RAG 和上下文工程,提供可解释的检索评分和引用。

支持客户端

Claude Desktop部分支持
Claude Code完整支持
Cursor部分支持
VS Code部分支持
ChatGPT (custom GPT)部分支持
Codex部分支持
OpenClaw部分支持