
n8nの公式 Instance-level MCPをセルフホスト環境で試す
はじめに
今回紹介するのは、n8n 本体に組み込まれた公式の「Instance-level MCP」です。
何ができるかというと、Claude Code などの AI クライアントから n8n インスタンスに
直接接続して、ワークフローの検索・実行・新規作成・編集をチャットで操作できます。
ワークフロー構築機能は v2.14.0 から追加され、公式が推奨するバージョンは v2.18.5 以上。
Docker Compose環境でひととおり試したので、設定手順と実際の動作をまとめます。
n8nのMCPは2種類ある
n8nのMCP機能には2種類あります。混同しやすいので最初に整理します。
| Instance-level MCP(今回) | MCP Server Trigger ノード | |
|---|---|---|
| 公開単位 | インスタンス単位 | ワークフロー単位 |
| 認証方式 | OAuth2 / Access Token | 任意(自前実装) |
| 主な用途 | ワークフロー管理・構築全般 | 特定ツールの公開 |
| 設定の手間 | インスタンス設定で一元管理 | ワークフローごとに設計が必要 |
使い分けはシンプルで、すでに動いているワークフローを AI から操作したいなら
Instance-level MCP、特定のワークフローを独自ツールとして MCP に公開したいなら
MCP Server Trigger ノードです。
MCP Server Triggerは以前の記事でも試していましたね。
Instance-level MCP でできること
接続した AI クライアントから使えるツールは3カテゴリです。
- ワークフロー管理:ワークフローの検索、詳細取得、実行
- ワークフロー構築:新規作成、既存の編集(v2.14.0〜)
- データテーブル操作:n8n のデータテーブルの読み書き
ひとつ頭に入れておきたい制約があります。MCP に公開するワークフローは
インスタンス全体で共通です。クライアントごとのスコープ分離はなく、
接続しているクライアントは全員同じワークフロー群を見ています。
セルフホスト環境での設定してみる
Claude Codeから接続するためにn8n側の設定をしていきます。
前提環境
- n8n v2.18.5(Docker Compose)
- インスタンスオーナーまたは管理者権限のアカウントで有効の設定
- ユーザー権限のアカウントも用意
Step 1:MCP 機能を有効化
Settings > Instance-level MCP を開き、「Enable MCP access」をクリックします。
管理者権限がないとこの設定画面自体が表示されません。

有効化すると、公開中のワークフロー一覧・接続済み OAuth クライアント一覧・
Connection details ボタンが表示されます。


Step 2:Access Token を発行
認証方式は OAuth2 と Access Token の2択です。OAuth2 はクライアントが n8n にリダイレクトして認可するフローで、Claude Desktop のような GUI クライアント向けです。Claude Code のような CLI ツールからは Access Token の方がシンプルに設定できるので、今回はこちらを使います。
「Connection details」ボタンから「Access Token」タブを開きます。
初回アクセス時にトークンが自動生成されています。
次回以降は伏字表示になり、コピーボタンも無効化されます。
トークンを紛失した場合は再生成できますが、旧トークンは即時失効します。
接続済みのクライアントをすべて更新する必要があります。

Step 3:ワークフローを公開
デフォルトではどのワークフローも MCP に公開されていません。
ワークフローごとに個別に有効化する必要があります。
公開方法は3つありますが、一番手っ取り早いのはワークフローエディタからです。
- 右上の
...メニューを開く - Settings を選択
- Available in MCP をトグルオン

Instance-level MCPの画面で有効にしたワークフローが表示されるようになりました。

説明文を添えておくと AI クライアントがワークフローを正確に識別しやすくなります。
Settings > Instance-level MCP の Workflows タブから後から編集できます。
Step 4(セルフホスト固有):リバースプロキシの確認
nginx や Cloudflare Tunnel を挟んでいる場合、Authorization ヘッダーが
透過されているかを確認してください。Bearer トークンがプロキシ側で落とされると
認証エラーになります。
MCP 機能を完全に無効化したいときは N8N_DISABLED_MODULES=mcp を環境変数に
設定すれば MCP エンドポイントと関連 UI がまるごと消えます。
Claude Code への接続
トークンをシェル履歴にも設定ファイルにも残さずに渡す方法を n8n 公式 YouTube 動画で紹介されていたものをそのまま参考にしています。
Step 1:claude.json にプレースホルダーを書く
以下のコマンドでclaude codeに登録する。
claude mcp add --transport http n8n-mcp \
https://<your-n8n-domain>/mcp-server/http \
--header "Authorization: Bearer N8N_MCP_TOKEN"
もしくは、設定ファイルにプレースホルダーを記述しておきます。
{
"mcpServers": {
"n8n-mcp": {
"type": "http",
"url": "https://<your-n8n-domain>/mcp-server/http",
"headers": {
"Authorization": "Bearer N8N_MCP_TOKEN"
}
}
}
}
Step 2:ターミナルでトークンを安全に注入
以下のコマンドをターミナルに貼り付けて実行します。
read -r -s "?Paste n8n access token: " TOKEN && \
printf '\n' && \
TOKEN="$TOKEN" perl -0pi -e 's/N8N_MCP_TOKEN/$ENV{TOKEN}/once' \
~/.claude.json && \
unset TOKEN
実行するとトークンの入力を求められます。n8n の Settings > Instance-level MCP > Connection details からコピーしたトークンを貼り付けて Enter を押します。
セキュリティの都合上、貼り付けたトークンはターミナルに表示されません。表示されなくても正常です。そのまま Enter を押してください。
これでプレースホルダーが実際のトークンに置き換えられます。read -r -s を使っているのでシェル履歴にもトークンは残りません。
Step 3:接続確認
Claude Code を起動して /mcp コマンドを実行し、ツール一覧が表示されれば接続成功です。

実際に使ってみる

ツールは25個ありました。
事例1:既存ワークフローの一覧取得と実行
プロンプト: 今使えるワークフローは?

現在サーバー側で登録されているリストを取得してくれました。
プロンプろ: では実行できるものは?

Instance-level MCPに公開したものをmcp経由で実行できると教えてくれますね。
プロンプト: ではMCP直接実行できるワークフローを実行して
実行してみましょう。

実行してくれますね。

サーバーの方にもちゃんとログは残っていました。
事例2:新規ワークフローの構築
以下のお題で作ってもらいます。
次の内容のワークフローを作成してください。
RSSフィードを取得してSlackに通知します。
RSSはZennのhttps://zenn.dev/topics/zenn/feed を使って。

結構雑な指示でしたが作ってくれたようです。

中を確認してみます。

Zenn RSS フィード監視 — https://zenn.dev/topics/zenn/feed を1時間ごとにポーリング

良さそうですね。
slackの通知先がgeneralだったので変えてもらいましょう。

これぐらいなら迷わずにやってくれるみたいですね。

変わってる。ヨシ。
では最後に実行させてみます。

RSS Feed Triggerは直接実行できないため、Manual Triggerを追加して実行できるよう修正します。
このままではmcp経由で実行できないからこのように修正をして実行されました。

Slackにも無事通知されることを確認できましたね。

注意点
トークン管理はユーザー責任
Access Token は個人のアカウントに紐付いています。そのトークン経由の操作はすべてそのユーザーとして扱われます。
チームで使うなら、誰がどのトークンを持っているかを把握しておく必要があります。
クライアント単位のスコープ分離はない
「このクライアントにはこのワークフローだけ」という設定はできません。
MCP に公開したワークフローは接続中の全クライアントから見えます。
何を公開するかは意識的に選ぶ必要があります。
おわりに
この機能はコミュニティでも待ち望んでいる人が多く、私自身もやっと公式のものがやってきたのでとても嬉しいですね。
ユーザーは手動での作業を大幅に削減できるようになると思います。AIとの対話でできますしね。
今回は簡単なワークフローを作ったので、そんなに作成では詰まることはなかったですが、
今後は複雑なワークフローの作成もこのmcpで試していきたいと思います。









