obsidian-mcp
obsidian-mcp (Python)
ファイルシステムへの直接アクセスにより、ローカルのObsidianボールトへの読み書きアクセスをLLMクライアント(例:Claude Desktop)に提供するPython製MCP(Model Context Protocol)サーバーです。Obsidian Local REST APIプラグインも、HTTPも、認証トークンも不要です。
これはobsidian-mcp(TypeScript)のPython移植版で、いくつかの意図的な修正と簡素化を加えた上で機能的に同等です。詳細な根拠については、Plans/review-the-typescript-obsidian-mcp-parsed-shamir.mdとISA.mdを参照してください。
警告: このサーバーはボールトへの読み書きアクセス権を持ちます。使用前に(例:git経由で)ノートをバックアップしてください。
要件
Python 3.11以上
Obsidianボールト(Obsidianで少なくとも一度は開かれたディレクトリ、つまり
.obsidian/app.jsonを含むディレクトリ)macOSまたはLinux(Windowsはサポートされていません — ISAの「Out of Scope」を参照)
Related MCP server: Obsidian MCP Server
インストールと実行
uv sync
uv run obsidian-mcp /path/to/your/vault [/path/to/another/vault ...]ボールト名は各ディレクトリのベース名から自動的に生成されます(小文字化され、英数字以外の文字はハイフンに変換され、重複には数値の接尾辞が付きます)。最大10個のボールトまで対応。ボールトのパスは互いにネストしていてはなりません。
Claude Desktopの設定
claude_desktop_config.jsonを編集します(macOS: ~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"obsidian": {
"command": "uv",
"args": ["run", "--directory", "/path/to/py-obsidian-mcp", "obsidian-mcp", "/path/to/your/vault"]
}
}
}ツール
read-note、create-note、edit-note(追加/先頭挿入/置換/削除)、delete-note(デフォルトでは.trash/へのソフト削除)、move-note、create-directory、search-vault(コンテンツ/ファイル名/タグ検索、オプションのmax_results付き)、add-tags、remove-tags、rename-tag(ボールト全体、階層を保持)、list-available-vaults。
また、obsidian-vault://リソーススキーム(ボールトの一覧/情報)とlist-vaultsプロンプトも公開しています。
開発
uv sync --all-extras
uv run pytest -q
uv run ruff check src testsセキュリティに関する注意事項
すべてのツールは、対象パスがボールト内に留まることを検証します(
src/obsidian_mcp/utils/path_safety.py)。シンボリックリンクを考慮した包含チェックも含みます。TypeScript版オリジナルには、この包含チェックが実質的に何もしないという確認済みのバグがありました(非同期の検証関数が
awaitなしで呼び出されていました)。この移植版のパス安全関数はすべて同期であり、構造的にその種のバグを防ぎます。
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables direct file system access to Obsidian vaults with auto-discovery, full-text search, and note operations. Supports reading, writing, and searching across Obsidian notes without requiring plugins or REST API.63,860MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to interact with Obsidian vaults through direct filesystem access, supporting note management, lightning-fast search with SQLite indexing, image analysis, tag/link management, and bulk operations.MIT
- FlicenseAqualityDmaintenanceEnables comprehensive management of Obsidian vaults with full CRUD operations, advanced search, link/tag extraction, backlinks discovery, frontmatter editing, and template-based note creation through natural language.16
- AlicenseAqualityDmaintenanceEnables AI assistants to interact with local Obsidian vaults through direct filesystem access for reading, creating, and managing notes. It features high-performance SQLite indexing for fast searches, regex support, and tools for organizing tags and links without requiring additional plugins.271MIT
Related MCP Connectors
Search and reason over your Obsidian-style Markdown vault, right from ChatGPT.
Search your Obsidian vault to quickly find notes by title or keyword, summarize related content, a…
Connect AI assistants to your GitHub-hosted Obsidian vault to seamlessly access, search, and analy…
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ubahmapk/py-obsidian-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server