SETUP GUIDE

LINE Harness を
Claude Code につなぐ

LINE公式アカウントの無料CRM「LINE Harness」を導入し、Claude Code から操作できるようにするまでの手順。作業のほとんどはターミナルで完結します。

対象:Cloudflare 無料枠 / LINE公式アカウント保有者 / AIツール(Claude Code / Cursor など)利用者

▶ まず動画で見る(野田さんの実演・約20分)
STEP A
導入(デプロイ)
ターミナルで npx create-line-harness を実行。Cloudflareに自動で構築。
STEP B
接続(自動)
同じコマンドが .mcp.json にMCP設定を追記。ここで Claude Code とつながる。
STEP C
再起動して使う
Claude Code を再起動 →「友だち一覧を見せて」等で操作できる。

01準備するもの

はじめる前に、次のアカウント・環境をそろえます。

02手順

大きく2フェーズです。フェーズ1=下準備(ブラウザでアカウント作成・情報集め)フェーズ2=インストール(ターミナル)。下準備で集めた情報を、あとでターミナルに貼っていきます。野田さんの動画では前半がこの下準備にあたります(約20分)。

下準備で集める5つの情報 ① Channel ID(Messaging API)/② Channel secret /③ LINE Login の Channel ID /④ LIFF ID /⑤ チャネルアクセストークン(長期)
→ メモ帳などに貼りながら進めると、あとで迷いません。

フェーズ 1 | 下準備(ブラウザ)

準備 1Cloudflareアカウントを作る

Cloudflareに登録(Googleログインでも可)。ここにハーネス本体が全部デプロイされます。

準備 2R2ストレージを有効化

ダッシュボード →「R2 Object Storage」→ Overview → サブスクリプション登録。クレカ登録が必要ですが請求は0円(10GBまで無料)。LINEでの画像・動画配信の保存先に使います。

準備 3LINE公式アカウントを作る

無料。メールアドレスで登録 → 電話番号認証 → 業種などを入力して作成。

準備 4応答設定+Messaging API 有効化

公式アカウントManager →「応答設定」で あいさつ・応答メッセージをオフ。Webhookをオンにするために「Messaging API設定を開く」→ 有効化(プロバイダー名を決める)。

  • ここで表示される ① Channel ID② Channel secret を控える

準備 5LINE Login チャネルを追加

LINE Developers でプロバイダーを開き「新規チャネル作成」→「LINEログイン」。地域=日本、アプリタイプ=Webアプリで作成。

  • 作成後、「開発中」→「公開」に切り替える(忘れると動かない)
  • ③ LINE Login の Channel ID を控える
イメージ(お弁当箱) 「プロバイダー」=大きいお弁当箱。その中に「Messaging APIチャネル(=公式LINE)」と「LINE Loginチャネル」という小さい箱が入る、という入れ子構造です。

準備 6LIFF アプリを作る

LINE Login チャネルの「LIFF」タブ →「追加」。名前は任意(「LINE」は不可)、サイズ=Full、エンドポイントURL=https://example.com(仮)、スコープ openid・profile・chat_message.write の3つ、友だち追加オプション=アグレッシブ。

  • 発行された ④ LIFF ID を控える

準備 7アクセストークン発行+連携設定

Messaging APIチャネルの「Messaging API設定」→「チャネルアクセストークン(長期)」を発行

  • ⑤ チャネルアクセストークン(長期) を控える
  • LINE Login 設定の最下部で 「リンクされた公式アカウント」を選択(連携設定。一番忘れやすい)

ここまでで、集める5つの情報がそろいます。おおよそ20分ほど。

フェーズ 2 | インストール(ターミナル)

STEP 0正しいCloudflareアカウントにログイン

一番つまずくのがここ。「別のアカウント」に入れてしまうと後で全部やり直しになります。まず保険トークンを無効化してからログインし、どのアカウントにいるか必ず確認します。

unset CLOUDFLARE_API_TOKEN
wrangler login          # ブラウザで「Authorize」
wrangler whoami         # メールとAccount IDを確認
つまずき注意 wrangler login は「ブラウザで今ログイン中のCloudflare」に繋がります。目的のアカウントに切り替えてから実行すること。CLOUDFLARE_API_TOKEN が環境変数に残っていると、そちらが優先されて別アカウントに入ってしまうので必ず unset を。

STEP 1R2ストレージを有効化

画像保存に R2 を使います。Cloudflareダッシュボード →「R2 Object Storage」→ 有効化。10GBまで無料ですが、有効化には支払い方法(カード)の登録が必要です(通常課金は発生しません)。

STEP 2インストーラーを実行

プロジェクトを置きたいフォルダで、次の1コマンド。これが導入とClaude Code接続をまとめてやってくれます。

npx create-line-harness

STEP 3対話に答えていく

順番に質問されるので入力します。

  1. R2有効化の確認 → 済んでいれば done または Enter
  2. プロジェクト名 → 例:line-harness
  3. Messaging API → Channel ID・シークレット・アクセストークン(LINE Developersから)
  4. LINE Login → Channel ID
  5. LIFF作成 → LINE LoginチャネルのLIFFタブで新規作成し LIFF ID を入力
    (サイズ Full/scope: openid・profile・chat_message.write)
  6. MCP設定を追加しますか?Yes(これが Claude Code との接続)
つまずき注意(LINE Developers 側でよくミスする点) ・LIFFアプリ名に 「LINE」は使えません(予約語)。「Harness」など別名に。
・スコープは openid / profile / chat_message.write の3つ全部にチェック(profile の入れ忘れが多発)。
・LINE Login チャネルは 「公開」にする(「開発中」のままだと動かない)。
・LINE Login 設定の最下部で 「リンクされた公式アカウント」を必ず選択(連携設定。忘れると友だち登録が正常に動かない)。

STEP 4完了画面の情報を保存

デプロイが終わると、管理画面URL・Worker URL・APIキーなどが表示されます。特にAPIキーはこの一度しか表示されません

必ず保存 APIキー=「管理画面のログインパスワード」かつ「Claude Code / Codex の接続キー」。パスワード管理アプリに保存を。忘れた場合は再発行できます(キーが変わるだけ)。

STEP 5LINE側の最終設定

完了画面に出る値を使い、LINE側を仕上げます(多くは自動設定済みなので確認でOK)。

  • 応答設定(公式アカウントManager):チャット=オフ/あいさつ=オフ/Webhook=オン/応答メッセージ=オフ
  • Webhook URL を登録(.../webhook
  • LINE Login に Callback URL を登録(.../auth/callback
  • LIFFエンドポイントURL?liffId=... 付きに更新

STEP 6Claude Code とつなぐ

STEP 3 で「Yes」を選んでいれば、プロジェクトの .mcp.json にすでに設定が入っています。あとはClaude Code を再起動するだけ。

// .mcp.json(自動で追加される中身の例)
{
  "mcpServers": {
    "line-harness": {
      "command": "npx",
      "args": ["-y", "@line-harness/mcp-server@latest"],
      "env": {
        "LINE_HARNESS_API_URL": "https://<worker>.workers.dev",
        "LINE_HARNESS_API_KEY": "<あなたのAPIキー>"
      }
    }
  }
}

再起動後、Claude Code に「LINE Harnessの友だち一覧を見せて」のように話しかければ操作できます。

STEP 7最初にやる運用設定:友だち追加のあいさつ

管理画面の「友だち追加時設定」でウェルカムメッセージ(シナリオ)を作っておくと、友だち登録された瞬間に自動であいさつが届きます。導入後まずこれだけ入れておけばOK。QRコード/友だち追加URLを配れば、そこから登録してもらえます。

番外他のAIツールにもつなぐ(任意)

このMCPは Claude Code 専用ではありません。Cursor でも Codex でも、同じ設定を書けば使えます。自分がよく使う方に繋げばOK(両方に入れる必要はありません)。

Codex の場合は ~/.codex/config.toml に次を追記して再起動:

[mcp_servers.line-harness]
command = "npx"
args = ["-y", "@line-harness/mcp-server@latest"]

[mcp_servers.line-harness.env]
LINE_HARNESS_API_URL = "https://<worker>.workers.dev"
LINE_HARNESS_API_KEY = "<あなたのAPIキー>"

03つまずきポイントまとめ

Cloudflareアカウントを間違える複数アカウントがあると起きがち。作業前に wrangler whoami で必ず確認。CLOUDFLARE_API_TOKENunset
LIFFアプリ名に「LINE」を入れてしまう予約語エラーになる。別名にする。
APIキーを保存し忘れる一度しか表示されない。ログインにも接続にも使う最重要情報。すぐ保存。
キーは公開しない.mcp.jsonconfig.toml にキーが平文で入る。公開リポジトリにpushしない。
既存の友だちは自動で入らないLINEの仕様。相手がメッセージ送信・リンクタップなど行動した時に登録される。
LINE Login チャネルを「公開」にし忘れる「開発中」のままだと後で動作がバグる。作成後に必ず「公開」へ。
連携設定(リンクされた公式アカウント)忘れLINE Login 設定の最下部。設定しないと友だち登録が正常に動かない。一番忘れやすい。

04ミニ用語

LINE Harness
LINE公式アカウントの無料CRM/自動化ツール。Cloudflare無料枠で動く。
Cloudflare
ハーネス本体(Worker・DB・ストレージ・管理画面)が動く場所。
wrangler
Cloudflareをターミナルから操作するコマンド。
MCP
AI(Claude Code / Codex)と外部ツールをつなぐ仕組み。これでAIからハーネスを操作できる。
LIFF
LINE内で動くWebアプリのID。フォーム機能などに使う。

05困ったときは

つまずいても大丈夫。次の順で確認すればだいたい解決します。

1. 動画を見る野田さんの実演動画(約20分)に、下準備からインストールまで全部映っています。動画を開く
2. AIに聞く分からないところは Cursor(や Claude Code)に、エラーメッセージごとそのまま貼って聞けば教えてくれます。