mcpField
J
Joplin MCP Server

Joplin MCP Server

ローカル
github.com/alondmnt生産性1747 週間前に更新

Joplin MCP Server について

Joplin MCP Server は、FastMCP で構築された MCP サーバーで、joppy の Python API を介して Joplin ノートアプリに接続します。AI アシスタントからノート、ノートブック、タグを操作し、ファイルをインポートできます。操作ごとの権限設定とノートブックのアローリストを備え、AI ワークフローで Joplin を使いたい利用者に向いています。

主な機能

  1. 01ノートの検索、取得、作成、更新、削除
  2. 02ノートブックとタグの管理
  3. 03ゴミ箱からのノートとノートブックの復元
  4. 04Markdown、HTML、CSV などのファイルのインポート
  5. 05読み取り、書き込み、更新、削除の権限設定

活用シーン

  1. 01AI アシスタントによる Joplin ノートの検索と整理
  2. 02AI アシスタントを使ったノートへの一括タグ付け
  3. 03既存ファイルの Joplin ライブラリへのインポート

MCP 対応

本プロジェクトは MCP サーバーであり、Joplin のノート、ノートブック、タグ、インポートに関するツールを MCP クライアントに公開します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"alondmnt-joplin": {
"command": "uvx",
"args": [
"joplin-mcp"
],
"env": {
"JOPLIN_TOKEN": "<JOPLIN_TOKEN>",
"JOPLIN_URL": "<JOPLIN_URL>"
}
}
}
}
起動コマンドuvx joplin-mcp
設定が必要な環境変数
JOPLIN_TOKENシークレットWeb Clipper authentication token from a running Joplin instance
JOPLIN_URLOptional override for the Joplin Web Clipper base URL (default http://localhost:41184)

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypijoplin-mcp0.10.0

ツール

19

掲載時のツール一覧 · 2 週間前に更新

このツールにパラメーターはありません。

詳細

Joplin MCP サーバー

Joplinのノート作成アプリ向けに、Python API joppyを介して利用できる、FastMCP ベースの Model Context Protocol(MCP)サーバーです。AI アシスタントが標準化されたインターフェースを通じて、Joplin のノート、ノートブック、タグを操作できるようにします。

目次

できること

この MCP サーバーは、Joplin と包括的に連携するための最適化された 26 個のツールを提供します。

ノートの管理
  • 検索:find_notes(ゴミ箱に入ったノートには trash=True を指定)、find_notes_with_tag、find_notes_in_notebook、get_all_notes
  • CRUD 操作:get_note、get_note_resources(添付画像/PDF から OCR テキストを読み取ります)、get_links、create_note、update_note、edit_note、delete_note
ノートブックの管理
  • 整理:list_notebooks、create_notebook、update_notebook、delete_notebook
タグの管理
  • 分類:list_tags、create_tag、update_tag、delete_tag、get_tags_by_note
  • リンク:tag_note、untag_note
ゴミ箱の管理
  • 復元:restore_from_trash - ゴミ箱に入れたノートやノートブックを復元します
インポート
  • ファイルのインポート:import_from_file - Markdown、HTML、CSV、TXT、JEX ファイルおよびディレクトリをインポートします
システム
  • ヘルスチェック:ping_joplin

クイックスタート

  1. Joplin Desktop → Tools → Options → Web Clipper を開きます
  2. Web Clipper サービスを有効化します
  3. Authorization トークンをコピーします
  4. 以下から使用するクライアントを設定します

対応クライアント

MCP 互換のクライアントであれば、どれでも動作するはずです。以下は、設定手順が記載されているクライアントです。

Claude Desktop

自動インストーラーを実行します。

# Install and configure everything automatically (pip)
pip install joplin-mcp
joplin-mcp-install

# Or use zero-install with uvx (recommended if you have uv)
uvx --from joplin-mcp joplin-mcp-install

# Optional: pin a specific version/range for stability
uvx --from joplin-mcp==0.4.1 joplin-mcp-install
uvx --from 'joplin-mcp>=0.4,<0.5' joplin-mcp-install

このスクリプトでは、次の処理が行われます。

  • Joplin API トークンを設定します
  • ツールの権限(作成/更新/削除)を設定します
  • Claude Desktop を自動でセットアップします
  • 接続をテストします

セットアップ後、Claude Desktop を再起動すれば準備完了です。

Claude Code

よりスマートにツールを使うため(編集と更新の使い分け、長いノートの読み取り、一括タグ付け)、オーケストレーションプラグインをインストールします。

/plugin marketplace add alondmnt/joplin-mcp
/plugin install joplin-mcp

初回使用時に Joplin API トークンの入力を求められます。Joplin ツールの使用中はスキルが自動的に呼び出されます。また、/joplin を使って手動で呼び出すこともできます。

Jan AI
  1. https://jan.aiからJan AI をインストールします

  2. Jan のインターフェースでMCP サーバーを追加します。

    • Jan AI を開きます
    • Settings → Extensions → Model Context Protocol に移動します
    • Add MCP Server をクリックします
    • 次のように設定します。
      • Name:joplin
      • Command:uvx --from joplin-mcp joplin-mcp-server(uv のインストールが必要です)
      • Environment Variables:
        • JOPLIN_TOKEN:your_joplin_api_token_here
    • サーバーを有効にします
  3. Joplin のノートにアクセスしながらチャットを開始できます。

自動セットアップ(代替方法)

# Install and configure Jan AI automatically (if Jan is already installed)
pip install joplin-mcp
joplin-mcp-install

Claude Desktop と同様に、Jan AI が自動検出されて設定されます。

OllMCP(ローカル Ollama モデル)

自動検出(先に Claude Desktop をセットアップした場合)

# Install ollmcp
pip install ollmcp

# Run with auto-discovery (requires existing Claude Desktop config)
ollmcp --auto-discovery --model qwen3:4b

手動セットアップ(単独で動作します)

# Install ollmcp
pip install ollmcp

# Set environment variable
export JOPLIN_TOKEN="your_joplin_api_token_here"

# Run with uvx (requires uv installed)
ollmcp --server "joplin:uvx --from joplin-mcp joplin-mcp-server" --model qwen3:4b

# Or with an installed package (pip install joplin-mcp)
ollmcp --server "joplin:joplin-mcp-server" --model qwen3:4b

使用例

設定が完了すると、AI アシスタントに次のように依頼できます。

  • 「すべてのノートブックを一覧表示して」 - Joplin の整理状況を確認します
  • 「Python プログラミングに関するノートを検索して」 - ナレッジベースを検索します
  • 「今日の朝会のノートを作成して」 - すばやくノートを作成します
  • 「最近の AI ノートに『重要』というタグを付けて」 - タグで整理します
  • 「ToDo を見せて」 - find_notes(task=True) でタスク項目を検索します

ツールの権限

セットアップスクリプトでは、4 つの権限レベルを設定できます。

  • 読み取り(常に有効):ノートを安全に閲覧、検索できます
  • 書き込み(任意):新しいノート、ノートブック、タグを作成できます
  • 更新(任意):既存のコンテンツを変更できます
  • 削除(任意):コンテンツを完全に削除できます

用途や許容できる範囲に合ったレベルを選択してください。

ノートブックの許可リスト

パターンベースのアクセス制御を使用して、AI がアクセスできるノートブックを制限します。設定すると、一致するノートブックとその内容だけが表示され、その他のノートブックはすべて非表示になります。

クイックセットアップ

JSON 設定(joplin-mcp.json):

{
  "token": "your_token",
  "notebook_allowlist": ["Work", "Projects/Public"]
}

環境変数:

export JOPLIN_NOTEBOOK_ALLOWLIST="Work,Projects/Public"
パターン構文

パターンには、gitignore/gitwildmatch の規則が適用されます。

パターン一致する対象例
Workノートブック名との完全一致(すべての子も含む)Work、Work/Tasks、Work/Notes
Projects/*Projects の直下にある子Projects/Alpha、Projects/Beta
Projects/**すべての子孫(再帰的)Projects/Alpha/Tasks/Q1
!Projects/Secret特定のパスを除外(否定)Secret 以外の Projects 内のすべて

否定パターンは常に肯定パターンより優先されます(パスまたはその祖先が否定パターンに一致すると、アクセスは拒否されます)。

動作の仕組み
  • 階層的なアクセス:親ノートブックを許可すると、そのすべての子にもアクセスできます。Projects を許可すると、Projects/Work/Tasks 内のノートにもアクセスできます。
  • 読み取り保護:get_note、get_note_resources、find_notes、get_links — ブロックされたノートブック内のノートは、結果から除外されるか、アクセスを拒否されます。
  • 書き込み保護:create_note、update_note、edit_note、delete_note — ブロックされたノートブック内のノートに対する操作は拒否されます。
  • ノートブック操作:list_notebooks にはアクセス可能なノートブックのみが表示されます。許可リストが設定されている場合、create_notebook はブロックされた親の下だけでなく、トップレベル(parent_name なし)での作成も拒否されます。また、同じポリシーのもとでは、update_notebook によるトップレベル(parent_name="/")への移動も拒否されます。これらの操作を許可すると、エージェントがノートブックを許可リストの適用範囲外へひそかに移動できてしまうためです。許可リストを拡張するには、Joplin UI でノートブックを作成または移動し、notebook_allowlist に追加してからサーバーを再起動してください。
  • 検索結果のフィルタリング:find_notes の結果は、アクセス可能なノートブック内のノートのみを含むようにフィルタリングされます。
  • タグ操作:tag_note、untag_note、get_tags_by_note は、ノートが属するノートブックに対するアクセスを検証します。
  • エラーのプライバシー保護:アクセスがブロックされると、ノートブック名や ID を明かさない汎用エラー「Notebook not accessible」が発生します。
設定例

単一プロジェクトに集中(ノートブック名にスペースを含む場合):

{ "notebook_allowlist": ["Work Projects"] }

除外を含む複数のノートブック:

{ "notebook_allowlist": ["Projects", "!Projects/Secret", "AI", "Reference"] }

グロブパターン:

{ "notebook_allowlist": ["Projects/*", "!Projects/Private"] }

許可リストなし(デフォルト) — すべてのノートブックにアクセス可能:

{ "notebook_allowlist": null }
起動時の動作

サーバーの起動時に、許可リストが検証され、ログに記録されます。

  • 各エントリは既存のノートブックに対して解決されます
  • 解決できないパターンがあると警告が表示されます(ただし、起動が妨げられることはありません)
  • 許可リストからアクセス可能なノートブックを 1 つも解決できない場合は、警告が記録されます

高度な設定

開発用インストール

開発者や最新の機能を利用したいユーザー向け:

git clone https://github.com/alondmnt/joplin-mcp.git
cd joplin-mcp
python bootstrap.py

bootstrap.py はクロスプラットフォーム対応です。./venv の作成を提案し、pip install -e . を実行してから、対話型インストーラーを起動します。現在アクティブな Python 環境にインストールするには、--no-venv を指定してください。

手動での設定

手動で設定する場合や、スクリプトが動作しない場合は、以下の手順に従ってください。

uvx に関する注意:uvx は、Python アプリケーションを恒久的にインストールせずに実行します(uv が必要です:pip install uv)。ユーザー設定ファイル(Claude/Jan の設定など)の読み取りと書き込みが可能なため、セットアップには pip でインストールする場合と同様に uvx --from joplin-mcp joplin-mcp-install を使用できます。

バージョンの固定(任意):長期間使用するクライアント設定や CI では、再現性を高めるため、バージョンを固定するか範囲を指定できます。例:uvx --from joplin-mcp==0.4.1 joplin-mcp-install または uvx --from 'joplin-mcp>=0.4,<0.5' joplin-mcp-install。

1. 設定ファイルを作成する

プロジェクトディレクトリに joplin-mcp.json を作成します。

{
  "token": "your_api_token_here",
  "host": "localhost", 
  "port": 41184,
  "timeout": 30,
  "verify_ssl": false
}
2. Claude Desktop の設定

claude_desktop_config.json に追加します。

オプション A:uvx を使用(インストール不要)

{
  "mcpServers": {
    "joplin": {
      "command": "uvx",
      "args": ["--from", "joplin-mcp", "joplin-mcp-server"],
      "env": {
        "JOPLIN_TOKEN": "your_token_here"
      }
    }
  }
}

uv のインストールが必要です:pip install uv

オプション B:インストール済みのパッケージを使用

{
  "mcpServers": {
    "joplin": {
      "command": "joplin-mcp-server",
      "env": {
        "JOPLIN_TOKEN": "your_token_here"
      }
    }
  }
}
3. その他のクライアント設定例

HTTP、SSE、Streamable HTTP など、異なるトランスポートオプションを含むその他のクライアント設定については、client-config.json.example を参照してください。

このファイルには、以下の設定が含まれています。

  • STDIO トランスポート(デフォルト、最も互換性があります)
  • HTTP トランスポート(基本的な HTTP サーバーモード)
  • SSE トランスポート(gemini-cli および OpenAI クライアントに推奨)
  • Streamable HTTP トランスポート(高度な Web クライアント向け)
  • HTTP-compat トランスポート(最新の /mcp JSON-RPC と従来の /sse//messages クライアントを橋渡しします)
ツールの権限設定

設定を編集して、AI が実行できる操作を細かく調整できます。

{
  "tools": {
    "create_note": true,
    "update_note": true,
    "delete_note": false,
    "create_notebook": true,
    "update_notebook": false,
    "delete_notebook": false,
    "create_tag": true,
    "update_tag": false,
    "delete_tag": false,
    "get_all_notes": false,
    "import_from_file": true
  }
}
環境変数

JSON 設定ファイルの代わりに、または併用して使用できます。

# Connection settings
export JOPLIN_TOKEN="your_api_token_here"
export JOPLIN_HOST="localhost"
export JOPLIN_PORT="41184"
export JOPLIN_TIMEOUT="30"

環境変数は設定ファイルの値をキーごとに上書きします。そのため、MCP クライアントの設定にある env ブロックは、サーバーが検出する設定ファイルの内容より優先されます。変数は実際に設定されている場合にのみ反映されるため、1 つ設定してもファイルの残りの内容には影響しません。優先順位は次のとおりです:直接指定したパラメーター > 環境変数 > 設定ファイル > デフォルト値。

ツールごとの環境変数

JOPLIN_TOOL_<NAME>=true|false を使用して、各ツールを個別に切り替えられます。これらは設定ファイルの設定より優先されます。

環境変数デフォルト
JOPLIN_TOOL_FIND_NOTEStrue
JOPLIN_TOOL_FIND_NOTES_WITH_TAGtrue
JOPLIN_TOOL_FIND_NOTES_IN_NOTEBOOKtrue
JOPLIN_TOOL_FIND_IN_NOTEtrue
JOPLIN_TOOL_GET_ALL_NOTESfalse
JOPLIN_TOOL_GET_NOTEtrue
JOPLIN_TOOL_GET_LINKStrue
JOPLIN_TOOL_CREATE_NOTEtrue
JOPLIN_TOOL_UPDATE_NOTEtrue
JOPLIN_TOOL_EDIT_NOTEtrue
JOPLIN_TOOL_DELETE_NOTEfalse
JOPLIN_TOOL_LIST_NOTEBOOKStrue
JOPLIN_TOOL_CREATE_NOTEBOOKtrue
JOPLIN_TOOL_UPDATE_NOTEBOOKfalse
JOPLIN_TOOL_DELETE_NOTEBOOKfalse
JOPLIN_TOOL_LIST_TAGStrue
JOPLIN_TOOL_CREATE_TAGtrue
JOPLIN_TOOL_UPDATE_TAGfalse
JOPLIN_TOOL_DELETE_TAGfalse
JOPLIN_TOOL_GET_TAGS_BY_NOTEtrue
JOPLIN_TOOL_TAG_NOTEtrue
JOPLIN_TOOL_UNTAG_NOTEtrue
JOPLIN_TOOL_PING_JOPLINtrue
JOPLIN_TOOL_RESTORE_FROM_TRASHtrue
JOPLIN_TOOL_IMPORT_FROM_FILEfalse
ノートブック許可リストの環境変数
環境変数デフォルト説明
JOPLIN_NOTEBOOK_ALLOWLIST(未設定)ノートブックのパターンをカンマ区切りで指定します(例:Work,Projects/*,!Projects/Secret)。未設定の場合は制限なし、設定して空にした場合はすべてのノートブックが拒否されます
HTTP トランスポートのサポート

サーバーは STDIO と HTTP の両方のトランスポートをサポートしています。

# STDIO (default)
joplin-mcp-server --config ~/.joplin-mcp.json

# HTTP transport (development, from repo)
PYTHONPATH=src python -m joplin_mcp.server --transport http --port 8000 --config ./joplin-mcp.json

# Opt-in HTTP compatibility bundle (modern + legacy SSE endpoints)
PYTHONPATH=src python -m joplin_mcp.server --transport http-compat --port 8000 --config ./joplin-mcp.json
# or keep --transport http and export MCP_HTTP_COMPAT=1/true to toggle the same behavior.
HTTP クライアントの設定

注意:Claude Desktop は現在 STDIO トランスポートを使用しており、HTTP/SSE の設定を直接読み込みません。以下の例は、ネットワークトランスポートをサポートするクライアント向けです。

{
  "mcpServers": {
    "joplin": {
      "transport": "http",
      "url": "http://localhost:8000/mcp"
    }
  }
}
設定リファレンス
基本設定
オプションデフォルト説明
token必須Joplin API 認証トークン
hostlocalhostJoplin サーバーのホスト名
port41184Joplin Web Clipper のポート
timeout30リクエストのタイムアウト(秒)
verify_sslfalseSSL 証明書の検証
ツールの権限
オプションデフォルト説明
tools.create_notetrue新しいノートの作成を許可
tools.update_notetrue既存のノートの変更を許可
tools.edit_notetrue精密な編集(検索/置換、末尾への追加、先頭への追加)を許可
tools.delete_notefalseノートの削除を許可(デフォルトでは無効 — 破壊的な操作)
tools.create_notebooktrue新しいノートブックの作成を許可
tools.update_notebookfalseノートブックのタイトルと絵文字アイコンの変更を許可
tools.delete_notebookfalseノートブックの削除を許可(デフォルトでは無効 — 破壊的な操作)
tools.create_tagtrue新しいタグの作成を許可
tools.update_tagfalseタグのタイトルの変更を許可
tools.delete_tagfalseタグの削除を許可(デフォルトでは無効 — 破壊的な操作)
tools.tag_notetrueノートへのタグの追加を許可
tools.untag_notetrueノートからのタグの削除を許可
tools.restore_from_trashtrueゴミ箱から論理削除されたノートまたはノートブックの復元を許可
tools.find_notestrueノート全体のテキスト検索を許可(タスクによるフィルタリングに対応)
tools.find_notes_with_tagtrueタグによるノートの検索を許可(タスクによるフィルタリングに対応)
tools.find_notes_in_notebooktrueノートブックによるノートの検索を許可(タスクによるフィルタリングに対応)
tools.find_in_notetrue1つのノート内での正規表現検索を許可
tools.get_all_notesfalseすべてのノートの取得を許可(デフォルトでは無効 — コンテキストウィンドウを使い切る可能性があります)
tools.get_notetrue特定のノートの取得を許可
tools.get_note_resourcestrueノートのリソースとその OCR テキストの読み取りを許可
tools.get_linkstrue他のノートへのリンクの抽出を許可
tools.list_notebookstrueすべてのノートブックの一覧表示を許可
tools.list_tagstrueすべてのタグの一覧表示を許可
tools.get_tags_by_notetrue特定のノートのタグの取得を許可
tools.ping_joplintrueサーバー接続のテストを許可
tools.import_from_filefalseファイル/ディレクトリ(MD、HTML、CSV、TXT、JEX)のインポートを許可
ノートブックの許可リスト
オプションデフォルト説明
notebook_allowlistnullアクセスを許可するノートブックパターンのリスト。null = 制限なし。gitignore 形式のパターンに対応:完全一致名、* ワイルドカード、** 再帰、! 否定
コンテンツの公開範囲(プライバシー設定)
オプションデフォルト説明
content_exposure.search_results"preview"すべての検索結果と一覧表示におけるコンテンツの表示範囲:"none"、"preview"、"full"
content_exposure.individual_notes"full"個別のノートにおけるコンテンツの表示範囲:"none"、"preview"、"full"
content_exposure.max_preview_length300コンテンツのプレビューの最大文字数
content_exposure.smart_toc_threshold2000この値を超える長さのノートでは、本文全体の代わりに目次が表示されます
content_exposure.enable_smart_toctrue目次へのフォールバックを無効にし、常にノート本文全体を返します
content_exposure.output_hintsfalse結果に加えて、実行例付きの後続呼び出し(NEXT_STEPS、NEXT_PAGE)を出力します。小規模なモデルには便利ですが、性能の高いモデルでは繰り返しになります

max_preview_length と smart_toc_threshold の値を小さくするか、 search_results を "none" に設定することが、セッションで消費するトークン数を 削減する主な方法です。list_notebooks と list_tags は、エージェントが操作する フィールドのみを返します。アイコン、親 ID、タイムスタンプを含めるには verbose=True を渡してください。docs/content-privacy.md をご覧ください。

Docker

MCP サーバーをコンテナー内で実行します。幅広い互換性を考慮して、デフォルトのトランスポートは HTTP です。環境変数で変更できます。

ビルド
docker build -t joplin-mcp .
実行(デフォルトは HTTP)
docker run --rm \
  -p 8000:8000 \
  -e JOPLIN_TOKEN=your_api_token \
  joplin-mcp
設定をマウントして実行
docker run --rm \
  -p 8000:8000 \
  -v $PWD/joplin-mcp.json:/config/joplin-mcp.json:ro \
  joplin-mcp
トランスポートの選択
  • SSE(ストリーミング):-e MCP_TRANSPORT=sse
  • Streamable HTTP:-e MCP_TRANSPORT=streamable-http
  • STDIO(ポートなし):-e MCP_TRANSPORT=stdio

例(SSE):

docker run --rm \
  -p 8000:8000 \
  -e JOPLIN_TOKEN=your_api_token \
  -e MCP_TRANSPORT=sse \
  joplin-mcp

コンテナーはデフォルトで 0.0.0.0:8000 をリッスンします。一般公開する場合は、リバースプロキシの背後に配置し、そこで TLS を終端してください。SSE の場合は、プロキシのキープアライブとバッファリングが適切に設定されていることを確認してください。

プロジェクト構成

  • src/joplin_mcp/ - メインのパッケージディレクトリ
    • fastmcp_server.py - 26 個のツールと Pydantic 検証型を備えたサーバー実装
    • config.py - 設定管理(ノートブックの許可リストを含む)
    • notebook_utils.py - ノートブックのパス解決、許可リストの照合、キャッシュ
    • server.py - サーバーのエントリーポイント(モジュールおよび CLI)
    • tools/ - ツールの実装(ノート、ノートブック、タグ)
    • ui_integration.py - UI 統合ユーティリティ
  • docs/ - ドキュメント(トラブルシューティング、プライバシー制御、機能強化の提案)
  • tests/ - 単体テストスイート
  • tests/e2e/ - Web Clipper API 経由で実際の Joplin Desktop(3.x)を対象とするエンドツーエンドテスト。「Running Tests」をご覧ください。

テスト

接続をテストします:

# For pip install
joplin-mcp-server --config ~/.joplin-mcp.json

# For development (from repo)
PYTHONPATH=src python -m joplin_mcp.server --config ./joplin-mcp.json

次のように表示されます:

Starting Joplin FastMCP Server...
Successfully connected to Joplin!
Found X notebooks, Y notes, Z tags
FastMCP server starting...
Available tools: 26 tools ready
テストの実行
# Unit tests (no Joplin instance required)
pytest tests/ --ignore=tests/e2e

# E2E tests (requires a running Joplin instance)
JOPLIN_TOKEN=your_api_token \
JOPLIN_HOST=localhost \
JOPLIN_PORT=41184 \
pytest tests/e2e/ -v -m e2e --override-ini="addopts="

E2E テストスイートは、Web Clipper API 経由で実際の Joplin Desktop と通信し、ノートブックの許可リストの適用を含むすべてのツールをテストします。JOPLIN_HOST:JOPLIN_PORT に接続できない場合、テストスイートは自動的にスキップされるため、単体テストと一緒に安全に実行できます。Joplin 3.x が必要です(ゴミ箱のスキーマは 3.0 で導入されており、それ以前のバージョンでは no such column: deleted_time エラーが発生します)。

ツール一覧

ツール権限説明
ノートの検索
find_notes読み取りすべてのノートを全文検索します(タスクによる絞り込みに対応。query="*" を指定して trash=True にすると、ゴミ箱内のノートを一覧表示します)
find_notes_with_tag読み取り特定のタグが付いたノートを検索します(タスクによる絞り込みに対応)
find_notes_in_notebook読み取り特定のノートブック内のノートを検索します(タスクによる絞り込みに対応)
get_all_notes読み取りすべてのノートを新しい順に取得します(デフォルトでは無効)
get_note読み取りID を指定してノートを取得します
find_in_note読み取り1 つのノート内を正規表現で検索します(一致箇所とコンテキストをページ分割して表示し、複数行のアンカーはデフォルトで有効です)
get_links読み取りノートから他のノートへのリンクを抽出します
get_note_resources読み取りノートのリソース(画像、PDF、添付ファイル)を一覧表示し、OCR テキストを読み取ります
ノートの管理
create_note書き込み新しいノートを作成します
update_note更新既存のノートを変更します(ノートブック間の移動を含む)
edit_note更新ノートの内容を正確に編集します(検索・置換、末尾への追加、先頭への追加)
delete_note削除ノートを削除します
ノートブックの管理
list_notebooks読み取りすべてのノートブックを参照します
create_notebook書き込み任意の親ノートブックの下に新しいノートブックを作成します(名前またはパスで指定)。絵文字アイコンも指定できます
update_notebook更新ノートブックの名前や絵文字アイコンを変更したり、別の親ノートブックの下に移動したりできます(parent_name="/" を指定すると最上位に移動します)
delete_notebook削除ノートブックを削除します
タグの管理
list_tags読み取り利用可能なすべてのタグを表示します
create_tag書き込み新しいタグを作成します
update_tag更新タグ名を変更します
delete_tag削除タグを削除します
get_tags_by_note読み取り特定のノートに付いているタグを一覧表示します
タグとノートの関連付け
tag_note更新1 つ以上のタグを 1 つ以上のノートに追加します(リストを受け付けます)
untag_note更新1 つ以上のタグを 1 つ以上のノートから削除します(リストを受け付けます)
ゴミ箱の管理
restore_from_trash更新ゴミ箱に移動したノートまたはノートブックを復元します(item_type='note' または 'notebook' を指定します)
インポートツール
import_from_file書き込みファイルやディレクトリをインポートします(MD、HTML、CSV、TXT、JEX)
システムツール
ping_joplin読み取り接続をテストします

コメント

MCP は初めてですか?

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

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