
Logseq MCPツール
このプロジェクトは、AI エージェントがローカル Logseq インスタンスと対話できるようにする Model Context Protocol (MCP) ツールのセットを提供します。
インストール
Python 3.11以降がインストールされていることを確認してください
このリポジトリをクローンする
依存関係をインストールします:
pip install -e .
Related MCP server: MCP Toolkit
設定
Logseq で API が有効になっていることを確認してください。
Logseqで、「設定」>「詳細設定」>「開発者モード」>「開発者モードを有効にする」に移動します。
次に、プラグイン > Logseq Developer プラグインをオンにします。
詳細設定でAPIトークンも設定します
Logseqを再起動する
Cursor MCP 構成ファイル (通常は
~/.cursor/mcp.json) で MCP サーバーを構成します。{ "mcpServers": { "logseq": { "command": "/opt/homebrew/bin/uvx", "args": ["logseq-mcp"], "env": { "LOGSEQ_API_URL": "http://localhost:12315", "LOGSEQ_TOKEN": "your-token-here" } } } }
または
次のようにして Claude Code を MCP サーバーを使用するように構成します。
範囲を選択
Stdioを選択
LOGSEQ_API_URL=http://localhost:12315 LOGSEQ_TOKEN=your-token-here /opt/homebrew/bin/uvx logseq-mcp
カーソルとクロードと併用
カーソルのMCPツールへの追加
上記のセットアップセクションに示すようにMCPサーバーを構成します。
カーソルを開いてMCPパネル(サイドバー)に移動します
Logseqツールが利用可能なツールのリストに表示されるはずです。
クロードと一緒に使う
Cursor で Claude を使用する場合は、次のようなプロンプトで Logseq ツールが利用可能であることを通知する必要があります。
「Logseq グラフの操作に役立つ Logseq ツールにアクセスできます。logseq.get_all_pages()、logseq.get_page(name)、logseq.create_page(name) などの関数を使用できます。」
利用可能なツール
すべてのツールは、 logseq名前空間で使用できます。
ページ
logseq.get_all_pages: Logseq グラフ内のすべてのページのリストを取得します。logseq.get_page: 名前で特定のページを取得するlogseq.create_page: 新しいページを作成するlogseq.delete_page: ページとそのすべてのブロックを削除する
ブロック
logseq.get_page_blocks: 特定のページからすべてのブロックを取得するlogseq.get_block: IDで特定のブロックを取得するlogseq.create_block: ページに新しいブロックを作成するlogseq.insert_block: ブロックを別のブロックの子として挿入するlogseq.update_block: 既存のブロックを更新するlogseq.move_block: ブロックを別の場所に移動するlogseq.remove_block: ブロックとそのすべての子ブロックを削除しますlogseq.search_blocks: クエリに一致するブロックを検索する
Logseqの操作
ジャーナルページ
Logseq のジャーナル ページには、特定の形式と属性があります。
ジャーナルページを作成またはアクセスするときは、「mmm dth, yyyy」(例:「2025年4月4日」)という形式を使用します。
ジャーナルページはLogseqによって適切な日付で自動的にフォーマットされます
ジャーナル ページには、Logseq によって自動的に設定される特別な属性があります。
journal?: true - これはジャーナルページであることを示しますjournalDay: YYYYMMDD - 数値形式の日付(例:2025年4月4日の場合は20250404)
例:
await logseq.create_page("Apr 4th, 2025")
重要: journal?属性またはjournalDay属性を手動で設定する必要はありません。適切な日付形式(例: 「2025年4月4日」)でページを作成するだけで、適切な属性を持つジャーナルページとして自動的に設定されます。
ブロック構造とフォーマット
Logseq のブロックには、理解しておくべき重要な特性がいくつかあります。
自動箇条書き: すべてのブロックはLogseq UIで自動的に箇条書きとしてレンダリングされます。
ページリンク: 二重括弧を使用してリンクを作成します:
[[Page Name]]階層ブロック:
ブロック構造データには階層情報が含まれています。
parent: 親ブロックのIDlevel: インデントレベル(トップレベルの場合は1、インデントされたブロックの場合は2以上)left: 左のブロック(通常はインデントされたブロックの親)
ブロックコンテンツ: ブロックを作成するときに、テキストの書式設定を含めることができます。
基本的な Markdown がサポートされています (太字、斜体など)
ブロック内の箇条書きはサポートが限られる場合があります
複数行のコンテンツはサポートされていますが、Logseqの解析ルールの対象となる場合があります。
ジャーナル ブロック: ジャーナル ページで作成されたブロックは特別な属性を継承します。
journal?: 本当journalDay: YYYYMMDD - ジャーナルページと同じ
**注:**ジャーナルページと同様に、これらのブロック属性はLogseqによって自動的に処理されます。ジャーナルページにブロックを作成する際にjournal?属性やjournalDay属性を手動で設定する必要はありません。
一般的なタスクでの使用例
Cursor エージェントの操作: Cursor で Logseq MCP ツールが設定されている場合は、次のようなエージェント プロンプトを出すことができます。
「今日の議題を箇条書きにした『会議メモ』という新しいページを作成します」
「「タスク」セクションを使用して、今日のタスクをジャーナルページに追加します」
「今日のジャーナルエントリを[[プロジェクト計画]]で更新し、その子要素を「完了したマイルストーン1」に設定する」
「グラフで「Python プロジェクト」に関するブロックを検索し、新しいページに整理します」
エージェントは適切な Logseq ツールを使用して、グラフ上でこれらの操作を実行します。