mcpField
O
Obsidian MCP Server Enhanced

Obsidian MCP Server Enhanced

ローカル
github.com/labeverydayメモリ・ナレッジ2173 週間前に更新

Obsidian MCP Server Enhanced について

Obsidian MCP Server Enhanced は、Obsidian の Local REST API プラグインを介して Amazon Q から Obsidian ボールトを操作できる MCP サーバーです。Obsidian アプリを開かずに利用できます。Obsidian でAI支援によるノート管理を行いたいユーザー向けです。

主な機能

  1. 01ノートの読み取り、作成、更新、追記、削除
  2. 02ボールト内のファイルとフォルダの一覧表示
  3. 03現在アクティブなファイルの取得
  4. 04定義済みセクション付きのデイリーノート作成
  5. 05構造化テンプレートによるミーティングノート作成

活用シーン

  1. 01Amazon Q による Obsidian ノートの参照や整理
  2. 02AI アシスタントによるデイリーノートや議事録の生成

MCP 対応

FastMCP で構築された MCP サーバーで、Amazon Q CLI などの MCP クライアントに obsidian_* 系のツールとプロンプトテンプレートを提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Obsidian MCP Server Enhanced

ステータス:フェーズ 1 完了

Amazon Q と Obsidian を統合するための Model Context Protocol(MCP)サーバーです。

プロジェクト概要

この MCP サーバーを使用すると、Obsidian アプリケーションを開かなくても、Amazon Q から Obsidian の保管庫を操作できます。Obsidian の Local REST API plugin を活用し、ノートの管理、検索、ナレッジ管理機能を提供します。

現在のステータス

  • フェーズ 1(コアインフラストラクチャ):完了
  • 基本的なファイル操作、検索、ノートテンプレートを完全に実装済みです
  • Amazon Q とシームレスに統合できるよう、FastMCP を使用しています
  • プロンプトの登録にはデコレーター方式を採用しています
  • フェーズ 2:必須機能を開始する準備が整っています

機能

現在実装済み
  • ファイル操作:ノートの読み取り、作成、更新、追記、削除
  • 基本的なフォルダー管理:フォルダー内のファイル一覧表示
  • 検索:ノートの基本的な検索機能
  • デイリーノート:事前定義されたセクションを含むデイリーノートの作成
  • 議事録:構造化されたテンプレートを使った議事録の作成
予定されている機能
  • 高度なフォルダー管理:フォルダーの作成、削除、名前変更、移動
  • 整理とメタデータ:タグ、フロントマター、ファイルの整理を管理
  • 高度な検索と探索:コンテンツ、タグ、その他の条件による検索の強化
  • ナレッジ管理:ハイライトの抽出、ノートの編集など
  • 検索と編集:ノートを検索し、情報を 1 つのノートにまとめる
  • ノートの整理:AI の支援を受けて、特定のトピックに関するノートを整理

はじめに

前提条件
  1. Obsidian:Obsidian をインストールし、保管庫を作成します
  2. Local REST API Plugin:Obsidian に Local REST API プラグインをインストールします
  3. Python 3.10+:Python 3.10 以降がインストールされていることを確認します
インストール
  1. このリポジトリをクローンします:

    git clone https://github.com/yourusername/mcp-obsidian-enhanced.git
    cd mcp-obsidian-enhanced
    
  2. 仮想環境を作成します:

    python -m venv venv
    source venv/bin/activate  # On Windows: venv\Scripts\activate
    
  3. 依存関係をインストールします:

    pip install -e ".[dev]"
    
  4. Obsidian API の設定を記述した .env ファイルを作成します:

    OBSIDIAN_API_KEY=your_api_key_from_local_rest_api_plugin
    OBSIDIAN_HOST=127.0.0.1
    OBSIDIAN_PORT=27124
    
Amazon Q CLI との統合

この MCP サーバーを Amazon Q CLI と統合するには、AWS の設定で MCP サーバーを構成します:

  1. ~/.aws/amazonq/mcp.json にファイルを作成するか、既存のファイルを更新します:
{
  "mcpServers": {
    "obsidian-mcp-server": {
        "command": "uv",
        "args": ["--directory", "/path/to/mcp-obsidian-enhanced", "run", "run_server.py"],
        "env": {},
        "disabled": false,
        "autoApprove": []
    }
  }
}
  1. /path/to/mcp-obsidian-enhanced をリポジトリの実際のパスに置き換えます。
サーバーの実行

次のコマンドでサーバーを実行します:

python run_server.py

MCP Inspector でテストするには:

npx @modelcontextprotocol/inspector uv --directory ./ "run" "run_server.py"

利用可能なツール

ツール名説明
obsidian_read_noteObsidian の保管庫からノートの内容を取得します
obsidian_create_noteObsidian の保管庫に新しいノートを作成します
obsidian_update_noteObsidian の保管庫にある既存のノートを更新します
obsidian_append_note既存のノートに内容を追記します
obsidian_delete_noteObsidian の保管庫からノートを削除します
obsidian_list_filesObsidian の保管庫内のファイルとフォルダーを一覧表示します
obsidian_get_active_fileObsidian で現在アクティブなファイルを取得します
obsidian_create_daily_note事前定義されたセクションを含むデイリーノートを作成します
予定されているツール(フェーズ 2)
ツール名説明
obsidian_searchObsidian の保管庫内のノートを検索します
obsidian_summarize_noteノートの内容を要約します
obsidian_search_and_compileノートを検索し、情報をまとめます
obsidian_organize_notes特定のトピックに関するノートを整理します

利用可能なプロンプト

このサーバーは、デコレーター方式を使用してプロンプトテンプレートを提供します:

議事録
@mcp.prompt("meeting-notes")
async def meeting_notes_prompt(
    title: str,
    date: str = "",
    participants: str = "",
    folder: str = "Meetings",
    tags: List[str] = None
) -> Dict[str, Any]:
    """Create a meeting note with the given details."""
    # Implementation...
ノートの作成
@mcp.prompt("create-note")
async def create_note_prompt(
    title: str,
    content: str,
    folder: str = "",
    tags: List[str] = None
) -> Dict[str, Any]:
    """Create a new note with the given details."""
    # Implementation...
ノートの整理
@mcp.prompt("organize-notes")
async def organize_notes_prompt(
    topic: str,
    folder: str = ""
) -> Dict[str, Any]:
    """Organize notes related to a specific topic."""
    # Implementation...

設定オプション

環境変数説明デフォルト
OBSIDIAN_API_KEYLocal REST API プラグインの API キー(必須)
OBSIDIAN_HOSTObsidian が実行されているホスト127.0.0.1
OBSIDIAN_PORTAPI のポート27124
OBSIDIAN_PROTOCOL使用するプロトコルhttps
OBSIDIAN_VERIFY_SSLSSL 証明書を検証するかどうかfalse
OBSIDIAN_TIMEOUT接続タイムアウト(秒)10
LOG_LEVELログレベル(INFO、DEBUG など)INFO

実装ロードマップ

フェーズ 1:コアインフラストラクチャ(完了)
  • ✅ FastMCP による基本的なサーバー設定
  • ✅ 設定管理
  • ✅ Obsidian API クライアント
  • ✅ 基本的なファイル操作
  • ✅ 基本的なフォルダー管理ツール
フェーズ 2:必須機能(計画中)
  • 高度な検索機能
  • メタデータ管理
  • テンプレートの改善
  • ノート整理機能
  • 検索およびコンパイル機能
  • ノートの要約
フェーズ 3:高度な機能(計画中)
  • ナレッジ管理ツール
  • 一括操作
  • 高度な検索機能
フェーズ 4:最適化と仕上げ(計画中)
  • パフォーマンスの最適化
  • エラー処理の強化
  • 包括的なロギング
  • 詳細なドキュメント

API を直接テストする

curl を使用して、Obsidian Local REST API のエンドポイントを直接テストできます。

フォルダー内のファイルを一覧表示する
curl -X GET "http://127.0.0.1:27124/vault/FolderName?list=true" \
  -H "Authorization: Bearer YOUR_API_KEY"
ノートを読み込む
curl -X GET "http://127.0.0.1:27124/vault/path/to/note.md" \
  -H "Authorization: Bearer YOUR_API_KEY"
ノートを作成/更新する
curl -X PUT "http://127.0.0.1:27124/vault/path/to/note.md" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: text/markdown" \
  -d "# Note Title\n\nNote content here."
ノートを検索する
curl -X POST "http://127.0.0.1:27124/search/simple" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "query=search_term"

コントリビューション

コントリビューションを歓迎します!ガイドラインについては、CONTRIBUTING.md ファイルをご覧ください。

ライセンス

このプロジェクトは MIT License のもとでライセンスされています。詳細については LICENSE ファイルをご覧ください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。