使用说明
黑曜石文件系统mcp
基于Docker的MCP服务器,通过HTTP提供对黑曜石保管库的文件系统访问。使用官方 @modelcontextprotocol/server-filesystem 随着 supergateway 用于HTTP传输。
零自定义代码。Docker容器中只有两个维护良好的包。
快速开始
cp .env.example .env
# Edit .env to set VAULT_PATH to your Obsidian vault directory
docker compose up -d
MCP服务器将在 http://localhost:3102/mcp.
配置
| 变量 | 默认值 | 描述 |
|---|---|---|
VAULT_PATH |
./vault |
黑曜石保险库目录的路径 |
MCP_PORT |
3102 |
暴露MCP服务器的主机端口 |
Claude代码配置
添加到您的 .claude.json 或项目MCP配置:
{
"mcpServers": {
"obsidian": {
"type": "http",
"url": "http://localhost:3102/mcp"
}
}
}
可用工具
| 工具 | 说明 |
|---|---|
read_text_file |
读取文件(支持头/尾行限制) |
read_multiple_files |
在一次调用中读取多个文件 |
read_media_file |
以base64格式读取图像/音频 |
write_file |
创建或覆盖文件 |
edit_file |
基于行的编辑,支持模拟运行 |
create_directory |
创建目录(递归) |
move_file |
移动/重命名文件 |
list_directory |
列出目录内容 |
list_directory_with_sizes |
列出文件大小和排序 |
directory_tree |
递归JSON树结构 |
search_files |
按名称模式搜索Glob风格的文件 |
get_file_info |
文件元数据(大小、日期、权限) |
list_allowed_directories |
显示可访问的目录 |
建筑
AI Agent / Claude Code
| Streamable HTTP
supergateway (HTTP :3101)
| stdio
@modelcontextprotocol/server-filesystem
| Node.js fs
/vault (Docker bind mount)
为什么存在
大多数黑曜石MCP服务器是:
- 过度设计 (12k+LOC,有需要修补的漏洞)
- 仅限stdio (远程访问没有HTTP传输)
该项目将官方MCP文件系统服务器与超级网关相结合,以获得一个生产就绪、可远程访问的MCP服务器,无需自定义代码。
