Obsidian Vault MCP
Obsidian 知识库的 MCP 服务,提供语义搜索和知识图谱分析能力。
特性
- 混合搜索:BM25 关键词 + 向量语义 + RRF 融合 + PageRank 加权
- 轻量高效:mmap 索引加载,内存占用 ~300MB
- 后台索引:启动不阻塞,增量更新
- 零配置:开箱即用
安装
uv tool install obsidian-vault-mcp --python 3.12
工具列表
| 工具 | 说明 |
|---|---|
vault_search |
搜索笔记,支持 bm25/semantic/hybrid 三种模式 |
vault_read |
读取笔记完整内容 |
vault_list |
列出笔记,支持目录过滤和最近修改筛选 |
vault_links |
获取笔记的反向链接和出链关系 |
vault_tags |
获取标签统计或按标签查找笔记 |
vault_related |
查找语义相似的相关笔记 |
工具详情
vault_search - 搜索笔记
query: 搜索关键词或问题mode: 搜索模式(bm25=关键词匹配,semantic=语义理解,hybrid=混合,默认 hybrid)limit: 返回数量(1-50,默认 10)
vault_read - 读取笔记
path: 笔记路径,如folder/note.md
vault_list - 列出笔记
folder: 目录过滤,如projects/recent_days: 只返回最近 N 天修改的笔记limit: 返回数量(1-200,默认 50)
vault_links - 链接关系
path: 笔记路径- 返回:backlinks(反向链接)和 outgoing(出链)
vault_tags - 标签查询
tag: 标签名(可选),不传则返回所有标签统计
vault_related - 相关笔记
path: 笔记路径limit: 返回数量(1-30,默认 10)
使用
Vault 路径配置
优先级:--vault 参数 > OBSIDIAN_VAULT_PATH 环境变量 > 当前目录
# 命令行参数
obsidian-vault-mcp --vault /path/to/vault
# 环境变量
export OBSIDIAN_VAULT_PATH=/path/to/vault
obsidian-vault-mcp
Claude Code 配置
命令行添加:
claude mcp add obsidian-vault \
-e OBSIDIAN_VAULT_PATH=/path/to/vault \
-- obsidian-vault-mcp
项目 .mcp.json(放在 vault 目录下):
{
"mcpServers": {
"obsidian-vault": {
"type": "stdio",
"command": "obsidian-vault-mcp",
"env": {
"OBSIDIAN_VAULT_PATH": "${PWD}"
}
}
}
}
索引机制
- 启动时后台初始化(不阻塞主线程)
- BM25 索引使用 mmap 加载,内存高效
- 向量索引使用 LanceDB 持久化
- PageRank 图谱缓存到磁盘
- 每 10 分钟检查文件变动,增量更新
配置
在 vault 目录下创建 .obsidian/vault-mcp.json:
{
"embedding_model": "BAAI/bge-small-zh-v1.5",
"index_interval": 600
}
embedding_model: 向量模型(默认 bge-small-zh-v1.5)index_interval: 索引更新间隔秒数(默认 600)
开发
git clone https://github.com/chyax98/obsidian-mcp.git
cd obsidian-mcp
uv sync
uv run obsidian-vault-mcp --vault /path/to/vault
License
MIT
Metadata
Release files for obsidian-vault-mcp 1.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| obsidian_vault_mcp-1.1.0.tar.gz | 123.0 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| obsidian_vault_mcp-1.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 142.2 kB
Release files / obsidian_vault_mcp-1.1.0.tar.gz
| Download URL | obsidian_vault_mcp-1.1.0.tar.gz |
|---|---|
| Size | 123.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e02e187884d2a745d5f5ebe03fafde01f6c8b03ba42ce052e9eb88178356af0c
|
|
BLAKE2b-256 checksum How to use checksums |
2bcf6d21244d8634fefdc9716ac2333d9fd47561f34c7296e062bbb9b575fd01
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.13 {"installer":{"name":"uv","version":"0.9.13"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / obsidian_vault_mcp-1.1.0-py3-none-any.whl
| Download URL | obsidian_vault_mcp-1.1.0-py3-none-any.whl |
|---|---|
| Size | 19.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c53b8dc96c07f7ad7b265c987098cb4e97f045ed66b3056e368a9e5f5aa2e79f
|
|
BLAKE2b-256 checksum How to use checksums |
ade08585d5e6c8753cd8e4aa123ae8c7a3f77e1980ed4cd9578d235c48052fcb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.13 {"installer":{"name":"uv","version":"0.9.13"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Security for obsidian-vault-mcp 1.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.