SSD Nodes Learn
Panduan Matt ConnorOleh Matt Connor · Dikemas kini 2026-07-24

Cara sambung Claude ke n8n pada VPS

Panduan integrasi Claude dan n8n pada VPS anda. Pelajari cara tetapan kredensial, pilihan model, tiga aliran kerja AI, serta pengiraan kos penggunaan API.

Apa yang anda bina

Tiga aliran kerja AI yang berfungsi pada instans n8n yang anda jalankan: satu webhook yang meringkaskan apa sahaja yang dihantar kepadanya, satu pembaca suapan berjadual yang menukar artikel kepada baris hamparan yang berstruktur, dan satu AI Agent yang memanggil API HTTP secara sendiri untuk menjawab soalan. Ini adalah alternatif tanpa kod (no-code) kepada memanggil Claude API dari Python pada VPS anda — API yang sama, token yang sama, bil yang sama, tetapi orkestrasi berlaku dalam nod n8n dan bukannya skrip.

Saya mengandaikan n8n sudah sedia di belakang HTTPS mengikut panduan n8n self-hosted pada Docker. Jika belum, lakukan itu dahulu — webhook memerlukan titik akhir TLS yang sebenar, dan stor simpanan kredensial yang bakal anda masukkan kunci API memerlukan sandaran encryption-key seperti yang dinyatakan dalam panduan tersebut.

Masalah menarik di sini bukanlah drag-and-drop. Ia adalah pemilihan model bagi setiap nod, medan prompt yang melakukan interpolasi undefined secara senyap, dan hakikat bahawa automasi berjalan tanpa pengawasan — aliran kerja yang menelan kos separuh sen setiap larian adalah murah sehingga gelung cubaan semula (retry loop) menjalankannya sebanyak empat ribu kali semalaman. Kebanyakan panduan ini adalah mengenai perkara tersebut.

Satu kredensial, disulitkan dengan kunci yang anda sandarkan

Dapatkan kunci API daripada Anthropic Console di platform.claude.com — Settings, kemudian API Keys, kemudian cipta kunci dengan nama seperti n8n-vps. Ia hanya dipaparkan sekali. Tambah dana ke akaun atau tetapkan pengebilan; penggunaan API adalah bayar-per-token dan berasingan sepenuhnya daripada sebarang langganan Claude.ai.

Dalam n8n: Credentials, Create credential, pilih Anthropic, tampal kunci ke dalam medan API Key, simpan. Setiap nod Claude dalam setiap aliran kerja merujuk kepada satu kredensial tersimpan ini — anda tidak perlu menampal kunci ke dalam nod.

Dua nota operasi. Pertama, n8n menyulitkan kredensial tersimpan dengan N8N_ENCRYPTION_KEY. Jika anda menetapkan pemboleh ubah persekitaran (env var) tersebut secara eksplisit dalam fail compose anda mengikut panduan n8n, kredensial anda akan selamat semasa pembinaan semula kontena; jika anda membiarkan n8n menjana satu dan kemudian kehilangan volume, setiap kredensial tersimpan — termasuk kunci ini — adalah ciphertext yang tidak boleh dipulihkan. Sandarkan kunci tersebut sekarang jika anda telah melangkauinya. Kedua, anggap stor kredensial n8n sebagai kawasan impak: sesiapa yang boleh menyunting aliran kerja pada instans anda boleh membuat permintaan dengan kunci Anthropic anda. Tetapkan had perbelanjaan dalam Console di bawah Settings supaya instans yang terkompromi atau tidak terkawal mempunyai had siling.

Pilihan model adalah keputusan bagi setiap nod

Menu pilihan model dalam nod Claude n8n diambil secara langsung daripada API, jadi ia menunjukkan apa yang boleh diakses oleh kunci anda. Setakat Julai 2026, barisan model dan harga API bagi setiap sejuta token input/output adalah: Claude Haiku 4.5 (claude-haiku-4-5) pada $1/$5 dengan tetingkap konteks 200K, Claude Sonnet 5 (claude-sonnet-5) pada $3/$15 — harga pengenalan $2/$10 sehingga 31 Ogos 2026 — dan Claude Opus 4.8 (claude-opus-4-8) pada $5/$25, kedua-duanya dengan tetingkap konteks 1M-token. Terdapat juga Claude Fable 5 (claude-fable-5) pada $10/$50 untuk kerja penaakulan yang paling sukar; tiada apa dalam panduan ini yang memerlukannya. Gunakan ID yang tepat itu — varian dengan akhiran tarikh yang anda ingat dari tutorial lama akan menghasilkan ralat 404, dan harga sentiasa berubah, jadi semak platform.claude.com sebelum mempercayai sebarang nombor yang anda baca di mana-mana, termasuk di sini.

Tabiat yang perlu dibina: pilih model bagi setiap nod, bukan bagi setiap platform. Klasifikasi, pengekstrakan, ringkasan, penghalaan — asas automasi — berjalan dengan lancar pada Haiku pada satu pertiga harga senarai Sonnet dan satu perlima harga Opus. Simpan Sonnet untuk ejen dan penaakulan pelbagai langkah, Opus untuk aliran kerja jarang berlaku di mana jawapan yang salah menelan kos lebih tinggi daripada token. Satu aliran kerja dengan lima nod Claude boleh dan patut mencampurkan pelbagai model.

Dua nod Claude, dan mana yang perlu digunakan di mana

n8n menyediakan dua integrasi Anthropic yang berbeza, dan memilih yang salah adalah kesilapan permulaan yang paling biasa.

Nod Anthropic adalah nod aplikasi biasa: satu permintaan masuk, satu respons keluar. Sumber Teksnya mempunyai operasi Message a Model, ditambah operasi untuk menganalisis imej dan dokumen. Gunakan ia apabila logik aliran kerja berada dalam n8n — pencetus, panggilan Claude, nod seterusnya. Aliran kerja 1 dan 2 di bawah menggunakannya atau setara rantaiannya.

Nod Anthropic Chat Model adalah sub-nod — lampiran kecil yang membekalkan model kepada nod akar seperti AI Agent atau Basic LLM Chain. Ia tidak mempunyai pencetus dan tiada output sendiri; ia mendedahkan pemilih model serta pilihan pensampelan seperti Maximum Number of Tokens dan Sampling Temperature. Satu peringatan daripada dokumentasi n8n yang perlu diingat: ekspresi di dalam sub-nod sentiasa diselesaikan terhadap item input pertama, bukan setiap item — letakkan ekspresi setiap item dalam medan prompt nod akar, bukan dalam sub-nod.

Aliran kerja 1: webhook masuk, ringkasan keluar

"Hello-world" untuk automasi AI: apa sahaja yang di-POST ke URL akan diringkaskan dan masuk ke Slack atau peti masuk anda.

  1. Nod Webhook — HTTP Method POST, path summarize. n8n memberikan anda URL ujian dan URL produksi; URL produksi hanya mendengar setelah aliran kerja aktif.
  2. Nod Anthropic — Message a Model, model claude-haiku-4-5, Max Tokens sekitar 300.
  3. Nod Slack (atau Send Email) — hantar teks respons ke saluran.

Prompt adalah tempat di mana ekspresi n8n bertemu dengan Claude. Badan POST masuk di bawah $json.body, jadi medan mesej pengguna kelihatan seperti:

Summarize the following feedback in three bullets, then one line:
verdict: praise | complaint | churn-risk. No preamble.

{{ $json.body.text }}

Letakkan arahan peranan dan format dalam medan prompt sistem nod, bukan mesej pengguna — prompt sistem kekal tetap manakala muatan (payload) berubah, yang mengekalkan tingkah laku yang stabil dan menjadikan prompt mudah dibaca enam bulan dari sekarang. Uji ia dari VPS itu sendiri:

curl -X POST https://n8n.example.com/webhook/summarize \
  -H 'Content-Type: application/json' \
  -d '{"text": "Third support ticket this month about slow disk IO..."}'

Kos setiap larian pada Haiku: muatan 1,200-token ditambah prompt adalah sekitar $0.0012 masuk, 300 token keluar adalah $0.0015 — kira-kira satu perempat sen. Seribu larian sebulan adalah kurang daripada $3. Nod yang sama jika diarahkan ke Opus 4.8 adalah kira-kira lima kali ganda jumlah itu. Nisbah itu, apabila didarab dengan setiap aliran kerja yang anda bina, adalah sebab mengapa tabiat pemilihan model bagi setiap nod itu penting.

Aliran kerja 2: RSS berjadual ke baris berstruktur

Sekarang sesuatu yang mengikut masa, dengan output berstruktur: baca suapan RSS setiap jam, klasifikasikan setiap item, tambah baris ke hamparan.

  1. Schedule Trigger — setiap jam.
  2. RSS Read — URL suapan. Menghasilkan satu item bagi setiap artikel.
  3. Basic LLM Chain — dengan sub-nod Anthropic Chat Model yang ditetapkan ke claude-haiku-4-5, dan sub-nod Structured Output Parser yang memegang skema JSON.
  4. Google Sheets (atau Postgres) — tambah satu baris bagi setiap item.

Structured Output Parser adalah apa yang menukar "Claude, sila kembalikan JSON" daripada sekadar harapan kepada satu kontrak: ia mengesahkan balasan model terhadap skema anda dan membatalkan item tersebut secara nyata berbanding menulis baris sampah. Skema seperti:

{
  "type": "object",
  "properties": {
    "category": { "type": "string", "enum": ["release", "security", "tutorial", "other"] },
    "relevance": { "type": "number" },
    "one_line_summary": { "type": "string" }
  },
  "required": ["category", "relevance", "one_line_summary"]
}

Dan prompt rantaian merujuk kepada item suapan:

Classify this article for a VPS hosting audience.

Title: {{ $json.title }}
Content: {{ $json.contentSnippet }}

Pengiraan kos berubah di sini: ini adalah bagi setiap item, bukan bagi setiap larian. Lima puluh artikel sejam, 24 jam sehari, adalah 36,000 panggilan Claude sebulan — pada Haiku mungkin $40–$90 bergantung pada panjang artikel, pada Opus kira-kira lima kali ganda jumlah itu. Buang pendua sebelum nod LLM (IF mudah terhadap pautan yang pernah dilihat sebelum ini, atau nod Remove Duplicates n8n) dan jumlahnya akan berkurang, kerana kebanyakan semakan setiap jam tidak mengandungi perkara baharu. Token termurah adalah panggilan yang tidak anda buat.

Aliran kerja 3: ejen AI yang menggunakan alatan (tools)

Dua aliran kerja pertama adalah saluran paip (pipelines) — anda menentukan langkah-langkahnya. Nod AI Agent membalikkan perkara itu: anda memberikan Claude satu matlamat dan alatan, dan ia memutuskan alatan mana yang perlu dipanggil, dalam urutan apa, sehingga ia selesai. n8n memerlukan sub-nod model sembang dan sekurang-kurangnya satu sub-nod alatan yang dilampirkan.

Binaan konkrit — pembantu ops yang menjawab "apa yang tergendala dan mengapa" daripada pemantauan anda:

  1. Chat Trigger (atau webhook) — soalan masuk.
  2. AI Agent — dengan sub-nod Anthropic Chat Model yang ditetapkan ke claude-sonnet-5. Ejen merancang dan merangkaian panggilan alatan; Haiku boleh mengendalikan ejen satu alatan yang ringkas, tetapi Sonnet adalah tahap minimum yang munasabah apabila alatan bertambah banyak.
  3. Nod HTTP Request yang dilampirkan sebagai alatan — diarahkan ke API status Uptime Kuma atau titik akhir Zabbix anda. Alatan HTTP kedua boleh memanggil apa sahaja yang mempunyai API REST.

Dua tetapan melakukan kebanyakan kerja. System Message ejen mentakrifkan tugasnya: "Anda adalah pembantu ops. Gunakan alatan status untuk menyemak keadaan pemantauan semasa sebelum menjawab. Laporkan hanya pemantau yang tergendala, berserta tempoh masa." Dan penerangan setiap alatan bukanlah dokumentasi untuk manusia — ia adalah cara Claude memutuskan bila perlu memanggilnya. "Mengembalikan keadaan up/down semasa untuk semua perkhidmatan yang dipantau sebagai JSON" akan dipanggil pada saat yang tepat; "status API" akan diabaikan atau disalah guna. Apabila anda melampirkan nod HTTP Request sebagai alatan, aktifkan pilihan Optimize Response dan pilih medan JSON yang penting — jika tidak, setiap respons API yang panjang akan dimasukkan ke dalam konteks model sebagai token input yang anda perlu bayar.

Tetapkan Max Iterations pada ejen (lalai adalah 10) kepada nombor terkecil yang berfungsi — ia adalah perbezaan antara "ejen menyerah kalah selepas 4 panggilan alatan" dan gelung dua belas pusingan model. Dan fahami bentuk pengebilan: setiap iterasi menghantar semula keseluruhan perbualan setakat ini — mesej sistem, soalan, setiap hasil alatan terdahulu — sebagai token input. Satu larian ejen enam iterasi boleh dengan mudah mencecah jumlah 20,000 token input kumulatif dan 2,000 output: pada harga pengenalan Sonnet 5 adalah sekitar $0.06, kira-kira $0.09 pada harga standard $3/$15 — anggaplah sebanyak dua puluh kali larian ringkasan mudah. Jika anda mendapati anda memasang banyak alatan pada satu ejen, itulah titik di mana menjalankan pelayan MCP pada VPS anda menjadi seni bina yang lebih kemas.

Kawalan kos, kerana tiada siapa yang memerhati

Aliran kerja tanpa pengawasan memerlukan kawalan yang biasanya disediakan secara tersirat oleh manusia di papan kekunci. Empat lapisan, bermula dari yang termurah.

Max Tokens pada setiap nod Claude. Ia adalah had output yang keras. Peringkas memerlukan 300, pengklasifikasi 100. Ini mengehadkan bahagian perbelanjaan yang mahal ($5–$25 bagi setiap sejuta token output berbanding $1–$5 bagi input) dan berfungsi sebagai brek kecemasan — pepijat prompt yang menyebabkan Claude bercakap panjang hanya menelan 300 token, bukan 8,000.

Model bagi setiap nod. Telah dibincangkan di atas; ia adalah pemacu harga lima hingga sepuluh kali ganda merentasi barisan semasa dan hanya mengambil masa sepuluh saat untuk ditetapkan.

Hadkan gelung (loops). Max Iterations pada ejen. Tetapkan masa tamat (timeout) aliran kerja dalam tetapan aliran kerja supaya pelaksanaan yang tersangkut akan mati dan bukannya terus berpusing. Dan berhati-hati dengan Retry On Fail bagi setiap nod: ia adalah alat yang betul untuk ralat sementara, tetapi cubaan semula menggandakan kos — Max Tries sebanyak 3 dengan Wait Between Tries selama 5000 ms bermakna kegagalan berterusan akan mengenakan caj anda sehingga tiga kali bagi setiap item sebelum menyerah kalah. Jangan sesekali membungkus cubaan semula di sekeliling nod yang sudah berjaya dengan kos tinggi.

Aliran kerja ralat sebagai sandaran. Cipta aliran kerja yang bermula dengan nod Error Trigger yang menghantar nama aliran kerja yang gagal dan ralat ke Slack, kemudian tetapkannya sebagai Error Workflow dalam setiap tetapan aliran kerja AI. Mod kegagalan yang dikesan ini adalah yang paling buruk: ralat aliran kerja yang dicetuskan oleh jadual pada setiap larian, setiap jam, selama seminggu — setiap larian membakar token sebelum ia mati. Padankan ia dengan had perbelanjaan bulanan dalam Anthropic Console dan semak halaman penggunaan Console pada beberapa hari pertama selepas mengaktifkan apa-apa yang berjadual. Jika anda ingin memahami dengan tepat apa yang anda dikenakan caj, panduan penggunaan token menghuraikannya.

Mod kegagalan, dengan ralat yang akan anda lihat

Nod gagal serta-merta dengan "Authorization failed - please check your credentials." API mengembalikan 401. Kandungan asalnya adalah:

{"type": "error", "error": {"type": "authentication_error", "message": "invalid x-api-key"}}

Kunci yang salah tampal — terpotong, mempunyai ruang kosong di hujung, atau menggunakan placeholder daripada tutorial. Bina semula kredensial n8n dan tampal semula; jika ia berfungsi semalam, semak sama ada kunci telah ditarik balik dalam Console atau sama ada pemulihan volume telah kembali ke kredensial yang disulitkan dengan N8N_ENCRYPTION_KEY yang berbeza.

Pelaksanaan gagal secara berkelompok dengan 429 rate_limit_error, mesej seperti "Number of request tokens has exceeded your per-minute rate limit." Had kadar adalah bagi setiap minit, dan n8n memudahkan anda untuk melancarkan lima puluh pelaksanaan webhook atau RSS secara serentak. Selesaikan secara struktur: proses item secara berurutan (Loop Over Items) dan bukannya secara selari, dan tetapkan Retry On Fail dengan Max Tries 3 dan Wait Between Tries pada maksimum 5000 ms — n8n mengehadkan medan itu pada 5000 ms. Apabila anda memerlukan tempoh bertenang yang lebih lama supaya cubaan semula jatuh dalam tetingkap minit seterusnya, letakkan nod Wait dalam laluan ralat atau proses item satu demi satu. Respons membawa pengepala retry-after yang memberitahu anda berapa lama perlu menunggu — fungsi tunggu tetap n8n tidak boleh membacanya, jadi bina tempoh bertenang yang lebih lama sendiri.

404 not_found_error menamakan model anda. Badan mesej mengulangi kesilapan ejaan tersebut:

{"type": "error", "error": {"type": "not_found_error", "message": "model: claude-haiku-4.5"}}

Titik sebagai ganti sempang (4.5 untuk 4-5), akhiran tarikh daripada hantaran blog lama, atau model yang telah bersara. Betulkan ID mengikut senarai semasa — ini sering menimpa mereka yang menaip ke dalam medan model sebagai ekspresi dan bukannya memilih daripada menu pilihan.

Claude menjawab soalan yang anda tidak tanya. Tiada ralat di mana-mana — larian berwarna hijau. Ekspresi n8n yang merujuk kepada medan yang hilang, seperti {{ $json.body.text }} apabila muatan menggunakan message, melakukan interpolasi string literal undefined ke dalam prompt anda, dan Claude menjawab dengan gigih kepada prompt tentang perkara yang tiada. Jika nod yang dirujuk tidak dilaksanakan langsung, anda akan mendapat "Referenced node is unavailable", tetapi medan yang hilang adalah senyap. Sebelum mengaktifkan, sentiasa jalankan sekali dengan data sebenar dan baca prompt sebenar yang dihasilkan dalam panel input nod — penyunting ekspresi memaparkan nilai yang diselesaikan, dan undefined ada di situ jika anda mencarinya.

FAQ

Bagaimana saya menyambungkan Claude ke n8n?

Cipta kunci API dalam Anthropic Console di platform.claude.com, kemudian dalam n8n tambah kredensial jenis Anthropic dan tampalkannya ke dalam medan API Key. Setiap nod Claude — nod aplikasi Anthropic dan sub-nod Anthropic Chat Model — merujuk kepada kredensial tersimpan tersebut. n8n menyulitkannya dengan N8N_ENCRYPTION_KEY, jadi sandarkan kunci tersebut atau kredensial anda akan hilang bersama volume.

Berapakah kos aliran kerja AI bagi setiap larian?

Anggarkan token bagi setiap larian, kemudian darab dengan harga per-juta model — setakat Julai 2026, Haiku 4.5 adalah $1/$5 bagi setiap sejuta token input/output dan Sonnet 5 adalah $3/$15 ($2/$10 pengenalan sehingga Ogos 2026). Ringkasan webhook pada Haiku berjalan sekitar satu perempat sen; larian ejen pada Sonnet dengan beberapa panggilan alatan menghampiri $0.06–$0.10 kerana setiap iterasi menghantar semula keseluruhan perbualan sebagai input. Sahkan larian dalam halaman penggunaan Console dan bukannya mempercayai anggaran.

Model Claude manakah yang patut saya gunakan untuk automasi n8n?

Haiku 4.5 untuk klasifikasi, pengekstrakan, ringkasan, dan penghalaan — kerja volum tinggi di mana kelajuan dan harga adalah utama. Sonnet 5 untuk nod AI Agent dan penaakulan pelbagai langkah. Opus 4.8 hanya jika jawapan yang salah cukup mahal untuk mewajarkan harga senarai $5/$25 — lima kali ganda Haiku, sedikit kurang daripada dua kali ganda Sonnet. Tetapkan model bagi setiap nod, bukan bagi setiap aliran kerja — satu aliran kerja boleh mencampurkan ketiga-tiganya.

Bagaimana saya menghentikan aliran kerja n8n daripada berbelanja berlebihan pada Claude API?

Gunakan lapisan kawalan: Max Tokens yang rendah pada setiap nod Claude, Max Iterations pada ejen, masa tamat aliran kerja, dan tetapan Retry On Fail yang konservatif supaya kegagalan tidak menggandakan perbelanjaan token. Kemudian tambahkan aliran kerja Error Trigger yang memberi amaran kepada anda di Slack apabila mana-mana aliran kerja AI gagal, dan tetapkan had perbelanjaan bulanan dalam Anthropic Console sebagai siling keras yang tidak boleh dilangkau oleh apa pun di VPS.

Adakah panggilan alatan AI Agent menelan kos tambahan?

Tiada yuran alatan berasingan, tetapi alatan tidak percuma: setiap hasil alatan dimasukkan semula ke dalam model sebagai token input, dan setiap iterasi ejen menghantar semula keseluruhan perbualan setakat ini. Respons API yang panjang yang dihantar tanpa ditapis boleh melebihi muatan prompt sebenar anda — aktifkan Optimize Response pada alatan HTTP Request dan kembalikan hanya medan yang diperlukan oleh ejen.