MCP Server Obsidian Omnisearch について
MCP Server Obsidian Omnisearch は、Omnisearch プラグインの API を通じて Obsidian ボールト内のノートを検索する MCP サーバーです。一致したノートの絶対パスを返すため、他のツールとの連携に利用できます。
主な機能
- 01FastMCP ベースの実装
- 02Omnisearch プラグイン API への問い合わせ
- 03一致ノートの絶対パスの返却
- 04obsidian_notes_search ツールの提供
活用シーン
- 01AI アシスタントによる Obsidian ボールト内のノート検索
- 02MCP クライアントからのキーワードによるノートファイルの特定
MCP 対応
本プロジェクトは MCP サーバーであり、クエリ文字列を受け取って一致するノートの絶対パス一覧を返す obsidian_notes_search ツールを MCP クライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP サーバー Obsidian Omnisearch
FastMCP ベースのサーバーで、REST API インターフェースを通じて Obsidian ヴォールトの検索機能を提供します。
概要
このプロジェクトは、Obsidian ヴォールトのノートをプログラムから検索できる検索サービスを実装しています。FastMCP を使用して検索機能をツールとして公開し、他のサービスと統合できるようにします。
機能
- Obsidian ヴォールトのノートを検索
- REST API 統合
- 一致したノートの絶対パスを返す
- FastMCP ツールとの簡単な統合
前提条件
- Python 3.x
- Omnisearch プラグインをインストールして実行中の Obsidian
- FastMCP ライブラリ
- アクティブな Obsidian ヴォールト
インストール
Smithery 経由でのインストール
Smithery 経由で Claude Desktop 用の MCP サーバー Obsidian Omnisearch を自動的にインストールするには、次のコマンドを実行します。
npx -y @smithery/cli install @anpigon/mcp-server-obsidian-omnisearch --client claude
手動インストール
- リポジトリをクローンします。
git clone https://github.com/anpigon/mcp-server-obsidian-omnisearch.git
cd mcp-server-obsidian-omnisearch
- 依存関係をインストールします。
uv install
設定
Obsidian ヴォールトのパスは、サーバーを実行する際にコマンドライン引数として指定します。
python server.py /path/to/your/obsidian/vault
使用方法
Obsidian Omnisearch API
Obsidian Omnisearch コミュニティプラグインが実行されている必要があります。https://publish.obsidian.md/omnisearch/Inject+Omnisearch+results+into+your+search+engine
Claude Desktop
MacOS の場合: ~/Library/Application\ Support/Claude/claude_desktop_config.json
Windows の場合: %APPDATA%/Claude/claude_desktop_config.json
開発中/未公開サーバーの設定
{
"mcpServers": {
"obsidian-omnisearch": {
"command": "uv",
"args": [
"--directory",
"<dir_to>/mcp-server-obsidian-omnisearch",
"run",
"mcp-server-obsidian-omnisearch",
"/path/to/your/obsidian/vault"
]
}
}
}
公開済みサーバーの設定
{
"mcpServers": {
"obsidian-omnisearch": {
"command": "uvx",
"args": [
"mcp-server-obsidian-omnisearch",
"/path/to/your/obsidian/vault"
]
}
}
}
API リファレンス
ノートの検索
- 関数:
obsidian_notes_search(query: str) - 説明: Obsidian ノートを検索し、一致したノートの絶対パスを返します
- パラメータ:
query: 検索クエリ文字列
- 戻り値: 一致したノートの絶対パスのリスト
開発
ビルドと公開
パッケージを配布用に準備するには、次のようにします。
- 依存関係を同期し、ロックファイルを更新します。
uv sync
- パッケージの配布物をビルドします。
uv build
これにより、dist/ ディレクトリにソース配布物と wheel 配布物が作成されます。
- PyPI に公開します。
uv publish
注: PyPI の認証情報は、環境変数またはコマンドフラグで設定する必要があります。
- トークン:
--tokenまたはUV_PUBLISH_TOKEN - またはユーザー名/パスワード:
--username/UV_PUBLISH_USERNAMEと--password/UV_PUBLISH_PASSWORD
デバッグ
MCP サーバーは stdio 上で実行されるため、デバッグが難しい場合があります。最高のデバッグ 体験のために、MCP Inspector の使用を強くお勧めします。
MCP Inspector は、次のコマンドで npm を使用して起動できます。
npx @modelcontextprotocol/inspector uv --directory /path/to/mcp-server-obsidian-omnisearch run mcp-server-obsidian-omnisearch
起動すると、Inspector はブラウザでアクセスしてデバッグを開始できる URL を表示します。
次のコマンドでサーバーログを確認することもできます。
tail -n 20 -f ~/Library/Logs/Claude/mcp-server-mcp-server-obsidian-omnisearch.log
依存関係
- FastMCP
- requests
- urllib
ライセンス
このプロジェクトは MIT ライセンスの下でライセンスされています。詳細は LICENSE ファイルを参照してください。
コントリビューション
コントリビューションを歓迎します。お気軽にプルリクエストを送ってください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。