MCP × LINE ハンズオン
AI に「LINE を送る力」を授ける MCP サーバーを作るハンズオン用リポジトリです。
このリポジトリについて
このリポジトリは、MCP (Model Context Protocol) を使って、AI が LINE にメッセージを送れるようにするハンズオンのスターターキットです。
MCP サーバーを 0 から作成し、以下の機能を実装します:
- ✅ テキストメッセージの送信
- ✅ スタンプの送信
- ✅ Flex Message(リッチメッセージ)の送信
- ✅ Quota API による送信数の確認
必要なもの
- GitHub アカウント
- LINE アカウント
- Gemini API キー(Google AI Studio から取得)
セットアップ
1. このリポジトリを Fork する
右上の 「Fork」 ボタンをクリックして、自分のアカウントにフォークしてください。
2. GitHub Codespaces で開く
- 「Code」 ボタンをクリック
- 「Codespaces」 タブを選択
- 「Create codespace on main」 をクリック
3. 環境変数を設定
.env.sample をコピーして .env ファイルを作成します:
cp .env.sample .env
.env ファイルを編集して、以下の値を設定してください:
# Gemini API Key
GEMINI_API_KEY=your_gemini_api_key_here
# LINE Messaging API
LINE_CHANNEL_ACCESS_TOKEN=your_line_channel_access_token_here
LINE_USER_ID=your_line_user_id_here
4. 依存パッケージをインストール
npm install
5. ビルド
npm run build
6. Gemini CLI に MCP サーバーを登録
gemini mcp add line-server node ~/mcp-line-handson/dist/index.js
7. Gemini CLI を起動
gemini
8. 動作確認
Gemini CLI で以下のコマンドを実行して、MCP サーバーが正しく登録されているか確認します:
> /mcp
足し算ツールを試してみましょう:
> 5 + 3 は?
ハンズオン資料
詳しい手順は、Zenn Book を参照してください:
📚 【MCP×LINE】AIに「LINEを送る力」を授けよう!
プロジェクト構成
mcp-line-handson/
├── src/
│ └── index.ts # MCP サーバーのメインファイル
├── dist/ # ビルド出力先(自動生成)
├── .env.sample # 環境変数のサンプル
├── .env # 環境変数(Git管理外)
├── package.json # npm 設定
├── tsconfig.json # TypeScript 設定
└── README.md # このファイル
開発
TypeScript を編集した場合は、ビルドしてから Gemini CLI を再起動してください。
npm run build
gemini mcp remove line-server
gemini mcp add line-server node ~/mcp-line-handson/dist/index.js
gemini
トラブルシューティング
MCP サーバーが認識されない
npm run buildでビルドが成功しているか確認gemini mcp listで登録されているか確認- Gemini CLI を再起動してみる
LINE にメッセージが送れない
.envファイルのLINE_CHANNEL_ACCESS_TOKENとLINE_USER_IDが正しく設定されているか確認- LINE 公式アカウントを友だち追加しているか確認
- LINE Developers コンソールでチャネルアクセストークンが有効か確認
参考リンク
ライセンス
MIT
作者
このハンズオンは Zenn Book と連動しています。詳しくは Zenn Book をご覧ください。