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

Obsidian MCP Guard

MCP Server

为Obsidian笔记提供安全的读写工具,包括Markdown格式验证和写入路径隔离,防止代理写入不符合规范的Markdown内容。

工具数

7

提示词数

0

GitHub Stars

0

资源数

0
PythonClaude文档处理Claude DesktopClaude

安装说明

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

作者 / 组织

codeafix

提供方

codeafix

最后核验

2026/5/17 20:20

快速接入

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

命令预览

pip install obsidian-mcp-guard

详细介绍

黑曜石mcp防护装置

](https://pypi.org/project/obsidian-mcp-guard/) ![Python 3.11+](https://www.python.org/downloads/) ![License: MIT](https://opensource.org/licenses/MIT) ![Tests](https://github.com/codeafix/obsidian-mcp-guard/actions)

用于代理安全黑曜石保险库访问的MCP服务器。提供具有lint验证的读/写文件工具,以防止代理写入格式错误的黑曜石标记。

为什么存在

大多数黑曜石MCP服务器允许代理直接写访问,无需降价验证。那些通过Obsidian REST API路由的人获得了一些输入净化,但没有人在编写之前根据Obsidian的降价呈现规则验证内容。黑曜石mcp卫士填补了这一空白:所有写入在接触保管库之前都会根据黑曜岩的标记规则进行验证,如果内容呈现不正确,则写入会被拒绝,并给出一个结构化错误,解释到底违反了哪条规则。写入也可以限制在单个可配置的保管库路径上,为代理提供指定的空间来代表用户创建和管理内容,同时防止意外或失控地写入同一文件系统上的其他保管库。目录遍历攻击在路径解析层被阻止,因此配置错误、行为不端或提示注入的代理无法通过构建以下路径来逃离写保险库 Claude/../OtherVault/note.md

特性

  • 读取/列出/创建/更新/删除/移动 笔记通过 HOST_VAULT_PATH 在主机文件系统上
  • 棉绒验证 在所有使用 mdlint黑曜岩 --阻止违反黑曜石标记规则的写入(未关闭的维基链接、原始HTML、标准标记链接等)
  • 写入保险库隔离 --写入操作被限制在一个可配置的保险库中;在读和写路径上都阻止了目录遍历攻击
  • 可组合create_vault_server() 返回a FastMCP 可以通过以下方式挂载到更大服务器中的实例 import_server()
  • 预验证工具lint_note 让代理在提交写入之前检查内容

安装

pip install obsidian-mcp-guard

对于不希望手动安装的Claude Desktop用户, uvx 无需设置即可直接运行:

uvx obsidian-mcp-guard

对于当地发展:

python -m venv .venv
source .venv/bin/activate
pip install -e .

配置

环境变量默认值描述
HOST_VAULT_PATH*(必填)*包含Vault作为子目录的目录的绝对路径
WRITE_VAULTClaude唯一允许写入操作的vault的名称

预期布局示例 HOST_VAULT_PATH:

/path/to/your/vaults/
    Claude/      ← write operations land here
    Work/        ← readable but not writable
    Personal/    ← readable but not writable

用法

作为独立的stdio服务器

# via the installed CLI entry point
HOST_VAULT_PATH=/path/to/your/vaults obsidian-mcp-guard

# or via python -m
HOST_VAULT_PATH=/path/to/your/vaults python -m obsidian_mcp_guard

Claude桌面/光标配置

{
  "mcpServers": {
    "obsidian": {
      "command": "uvx",
      "args": ["obsidian-mcp-guard"],
      "env": {
        "HOST_VAULT_PATH": "/path/to/your/vaults",
        "WRITE_VAULT": "Claude"
      }
    }
  }
}

克劳德代码

claude mcp add obsidian -- uvx obsidian-mcp-guard

传递环境变量 -e:

claude mcp add obsidian -e HOST_VAULT_PATH=/path/to/your/vaults -e WRITE_VAULT=Claude -- uvx obsidian-mcp-guard

安装到另一个FastMCP服务器

from contextlib import asynccontextmanager
from fastmcp import FastMCP
from obsidian_mcp_guard import create_vault_server

@asynccontextmanager
async def lifespan(app):
    await app.import_server(create_vault_server(
        vault_path="/path/to/your/vaults",
        write_vault="Claude"
    ))
    yield

mcp = FastMCP("my-agent", lifespan=lifespan)

@mcp.tool()
def search_notes(...):
    ...

工具

工具说明
read_note(source)在中返回注释的完整内容 vault/path.md 格式
list_notes(vault, folder?, recursive?)列出vault或子文件夹中的注释路径
create_note(source, content, overwrite?)创建注释;被棉绒错误堵塞
update_note(source, content, mode?)覆盖或附加到注释中;被棉绒错误堵塞
delete_note(source)将笔记移动到 .trash/ (可收回)
move_note(source_path, dest_path, create_dirs?)在书写保险库中移动笔记;重写所有vault文件中的Wiki链接
lint_note(content)无需书写即可预验证内容;回报 {valid, errors, warnings}

发展

make install   # install package + test dependencies
make test      # run tests with coverage (90% minimum)
make build     # build source and wheel distributions
make clean     # remove build artefacts and cache files

贡献.md 获取完整指南。

相关项目

  • mdlint黑曜岩 --lint引擎用于根据Obsidian的渲染规则验证markdown

目录标签

目录标签

PythonClaude文档处理Markdown验证本地部署文件管理Obsidian插件安全写入代理工具

支持客户端

Claude DesktopClaude

接入字段

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

stdio

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

none

工具数量(toolCount,工具数)

7

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdionone部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP