mcpField
N
n8n

n8n

github.com/rawveg開発4046 回インストール36 週間前に更新
リポジトリ

n8n について

n8nは、n8nのワークフロー構築、デバッグ、デプロイを支援するドキュメントベースのスキルです。ワークフローデータ、式、コード、AI機能、連携、デプロイを扱い、詳細なリファレンスも含みます。

主な機能

  1. 01ワークフローの設計とデバッグ
  2. 02JavaScript・Python Codeノードのガイド
  3. 03式とデータ変換
  4. 04AIエージェントとRAGワークフロー
  5. 05デプロイ、スケーリング、問題解決

活用シーン

  1. 01失敗したワークフロー実行のデバッグ
  2. 02式やコードによるアイテム変換
  3. 03ツールとメモリを使うAIワークフローの構築
  4. 04セルフホスト可能なn8n環境の設定

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/rawveg/skillsforge-marketplace --skill n8n

インストール後、Claude Code で/n8nを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

plugin.json
references/
index.md
llms.md

詳細

N8N スキル

公式ドキュメントに基づいて作成された、n8n 開発を包括的に支援するスキルです。n8n は、AI 機能とビジネスプロセスの自動化を組み合わせた、フェアコードライセンスのワークフロー自動化ツールです。

このスキルを使用するタイミング

次の場合に、このスキルを使用してください。

  • n8n ワークフローの構築やデバッグ
  • Code ノード(JavaScript または Python)の操作
  • 式やデータ変換の使用
  • AI エージェント、チェーン、RAG ワークフローの実装
  • n8n のデプロイ(Docker、npm、セルフホスト)の設定
  • Webhook、認証情報、インテグレーションのセットアップ
  • ワークフローでのエラー処理
  • キューモードによる n8n のスケーリング
  • カスタムノードの作成や n8n のホワイトラベル化
  • n8n API のプログラムからの使用
  • n8n での LangChain の操作
  • n8n v1.0 への移行

主なコンセプト

コアコンポーネント
  • ワークフロー:ノードを相互に接続した、ビジュアルな自動化フロー
  • ノード:ワークフロー内の個々の操作(トリガー、アクション、ロジックなど)
  • 式:{{ }} 構文を使用してデータにアクセスし、変換するコードスニペット
  • 認証情報:API キーや認証情報を安全に保存する仕組み
  • 実行:データとステータスを含む、個々のワークフローの実行
データ構造
  • n8n はノード間で アイテム(JSON オブジェクトの配列)を受け渡します
  • 各アイテムには、主要なデータを含む json プロパティがあります
  • バイナリデータは binary プロパティに個別に保存されます
  • 式で現在のアイテムのデータにアクセスするには $json を使用します
AI 機能
  • エージェント:ツールを使用して判断を下せる AI
  • チェーン:あらかじめ定義された AI 操作のシーケンス
  • メモリ:コンテキスト用に会話履歴を保存します
  • ツール:AI エージェントが呼び出せる関数
  • ベクトルデータベース:RAG 用の埋め込みを保存し、取得します

クイックリファレンス

例 1:データにアクセスする基本的な式
// Access data from the current item
{{ $json.name }}

// Access data from a specific node
{{ $node["HTTP Request"].json.response }}

// Access all items from a node
{{ $("HTTP Request").all() }}
例 2:認証付き HTTP Request

HTTP Request ノードを使用する場合は、エラーとレート制限を処理します。

// In HTTP Request node settings:
// - Enable "Retry on Fail"
// - Set Max Tries to 3
// - Set Wait Between Tries (ms) to 1000

// For rate limiting, use Batching:
// - Items per Batch: 10
// - Batch Interval (ms): 1000
例 3:Code ノード - データ変換(JavaScript)
// Access input data
const items = $input.all();

// Transform each item
return items.map(item => {
  return {
    json: {
      fullName: `${item.json.firstName} ${item.json.lastName}`,
      email: item.json.email.toLowerCase(),
      timestamp: new Date().toISOString()
    }
  };
});
例 4:Code ノード - データのフィルタリング(Python)
# Filter items based on a condition
output = []

for item in items:
    if item['json']['status'] == 'active':
        output.append({
            'json': {
                'id': item['json']['id'],
                'name': item['json']['name']
            }
        })

return output
例 5:式 - Luxon による日付処理
// Current date
{{ $now }}

// Format date
{{ $now.toFormat('yyyy-MM-dd') }}

// Add 7 days
{{ $now.plus({ days: 7 }) }}

// Parse and format custom date
{{ DateTime.fromISO($json.dateString).toFormat('LLL dd, yyyy') }}
例 6:JWT 認証情報

JWT 認証が必要な API の場合:

// Use JWT credential with:
// - Key Type: Passphrase (for HMAC) or PEM Key (for RSA/ECDSA)
// - Secret: Your secret key
// - Algorithm: HS256, RS256, ES256, etc.

// The JWT credential automatically generates tokens
// Use it in HTTP Request node > Authentication > JWT
例 7:ワークフローでのエラー処理
// In Code node, use try-catch:
try {
  const result = $json.data.someField.toUpperCase();
  return [{ json: { result } }];
} catch (error) {
  // Return error information
  return [{
    json: {
      error: error.message,
      originalData: $json
    }
  }];
}

// Or set up Error Workflow in Workflow Settings
// to catch all failures and send notifications
例 8:HTTP Request のページネーション
// Use pagination to fetch all pages
// In HTTP Request node > Pagination:

// Type: Generic Pagination
// Request URL: {{ $url }}&page={{ $pageNumber }}
// Complete When: {{ $response.body.hasMore === false }}
// Next Page URL: Automatic
例 9:ツールを使用する AI エージェント
// In AI Agent node:
// 1. Connect a Chat Model (OpenAI, etc.)
// 2. Add tools (Calculator, HTTP Request, etc.)
// 3. Configure memory if needed

// The agent can:
// - Analyze user input
// - Decide which tools to use
// - Execute tools and process results
// - Return final answer
例 10:環境変数と静的データ
// Access environment variables
{{ $env.MY_API_KEY }}

// Store workflow static data (persists across executions)
const staticData = getWorkflowStaticData('global');
staticData.lastRun = new Date().toISOString();
staticData.counter = (staticData.counter || 0) + 1;

// Retrieve static data
{{ $workflow.staticData.counter }}

参考ファイル

このスキルには、references/ に包括的なドキュメントが含まれています。

  • llms-txt.md - LLM 向けにフォーマットされた n8n ドキュメント一式

    • インストールとセットアップのガイド
    • ノードのリファレンスドキュメント
    • API ドキュメント
    • コード例とパターン
    • 設定オプション
    • トラブルシューティングガイド
  • llms-full.md - 詳細な技術情報を含む拡張ドキュメント

    • 高度な設定
    • スケーリングとパフォーマンス
    • セキュリティと認証
    • カスタムノードの開発
    • ホワイトラベル化と埋め込みオプション

詳細な情報が必要な場合は、view を使用して特定の参考ファイルを読み取ってください。

このスキルの使い方

初心者向け
  1. 基本的なワークフローの作成から始めます。

    • トリガーノード(Webhook、Schedule、Manual)
    • アクションノード(HTTP Request、Set、Edit Fields)
    • シンプルな {{ $json.field }} アクセスを使って式の構文を学びます
  2. データ構造を理解します。

    • 各ノードはアイテムの配列を出力します
    • データインスペクターを使ってアイテムの構造を確認します
    • Edit Fields ノードでデータ変換を練習します
  3. よくあるパターン:

    • Webhook → HTTP Request → Set → Respond to Webhook
    • Schedule → Code → HTTP Request → Conditional
    • Manual → Loop Over Items → Process Each
中級ユーザー向け
  1. Code ノードを使いこなす:

    • 複雑な変換には JavaScript モードを使用する
    • すべてのアイテムにアクセスするには $input.all() を使用する
    • json プロパティを含む適切な形式のアイテムを返す
  2. 式を使う:

    • 組み込みメソッドを使用する:.first()、.last()、.item
    • Luxon で日付を操作する
    • 複雑な JSON クエリには JMESPath を使用する
  3. エラー処理:

    • Code ノードで Try-Catch を使用する
    • エラーワークフローを設定する
    • API 呼び出しで Retry on Fail を設定する
  4. データ操作:

    • 複数のソースからデータをマージする
    • アイテムを分割してフィルタリングする
    • バッチ処理のためにアイテムをループする
上級ユーザー向け
  1. AI と LangChain:

    • カスタムツールを使って AI エージェントを構築する
    • ベクトルデータベースを使って RAG を実装する
    • 会話型ワークフローにメモリを使用する
    • 複数の AI 操作を連結する
  2. スケーリングとパフォーマンス:

    • 分散実行のためにキューモードを設定する
    • データベース設定を最適化する
    • 実行データのプルーニングを使用する
    • タスクランナーを設定する
  3. カスタム開発:

    • カスタムノードを作成する
    • 埋め込み用に n8n をホワイトラベル化する
    • ワークフロー管理に n8n API を使用する
    • AWS/Azure/GCP で外部シークレットを実装する
  4. 高度なパターン:

    • 再利用性を高めるサブワークフロー
    • Webhook の認証と検証
    • JMESPath による複雑なデータ変換
    • SSE/WebSockets によるリアルタイムデータ処理

よくある問題と解決策

HTTP リクエストエラー
  • 400 Bad Request:クエリパラメーターと配列の形式を確認してください
  • 403 Forbidden:認証情報と API の権限を確認してください
  • 429 Rate Limit:Batching または Retry on Fail オプションを使用してください
  • 404 Not Found:エンドポイント URL が正しいことを確認してください
式のエラー
  • v1.0 以降では、式のエラーが発生するとワークフローは失敗します
  • 失敗を捕捉するエラーワークフローを設定してください
  • 式エディターで式をテストしてください
  • プロパティにアクセスする前に、値が undefined でないことを確認してください
データ型の問題
  • 型変換には .toString()、.toNumber() を使用してください
  • {{ $json.field || 'default' }} で null/undefined を処理してください
  • バイナリデータには、バッファーを使った特別な処理が必要です
v1.0 への移行
  • 実行順序の変更(幅優先から深さ優先へ)
  • Code ノードでの Python サポート(Pyodide)
  • ユーザー管理が必須に(BasicAuth は廃止)
  • WebSocket push バックエンドがデフォルトに
  • Node 18.17.0 以降が必要

環境設定

Docker のセットアップ
# Basic n8n with Docker
docker run -it --rm \
  --name n8n \
  -p 5678:5678 \
  -v ~/.n8n:/home/node/.n8n \
  n8nio/n8n

# With environment variables
docker run -it --rm \
  --name n8n \
  -p 5678:5678 \
  -e N8N_BASIC_AUTH_ACTIVE=true \
  -e N8N_BASIC_AUTH_USER=admin \
  -e N8N_BASIC_AUTH_PASSWORD=password \
  -v ~/.n8n:/home/node/.n8n \
  n8nio/n8n
主な環境変数
  • N8N_HOST:ホスト名(デフォルト:localhost)
  • N8N_PORT:ポート(デフォルト:5678)
  • N8N_PROTOCOL:http または https
  • WEBHOOK_URL:外部 Webhook URL
  • N8N_ENCRYPTION_KEY:認証情報の暗号化キー
  • DB_TYPE:データベースの種類(sqlite、postgres)
  • EXECUTIONS_MODE:queue または main(スケーリングには queue)

リソース

公式リソース
学習パス
  • レベル 1 コース:基本的なワークフローの構築
  • レベル 2 コース:高度なデータ処理とエラー管理
  • 動画コース:視覚的に学べるリソース
  • AI チュートリアル:AI ワークフローをゼロから構築する
API と開発

注記

  • このスキルは、n8n の公式ドキュメントから自動生成されました
  • コード例では、構文ハイライトに適切な言語タグを使用しています
  • 例は、ドキュメントにある実際のパターンから抽出されています
  • すぐに活用できる、実用的で実行可能なパターンに重点を置いています

更新

更新されたドキュメントでこのスキルを再生成するには:

  1. 同じ設定でスクレーパーを再実行する
  2. 最新情報を使ってスキルが再構築されます
  3. 新しい例が追加されていないか、クイックリファレンスのセクションを確認する

コメント