ブログ記事9の背景画像

DiscordでAIチャットボットを公開する

Discordサーバーで使える賢い対話型AIボットを作りたいですか?このステップごとのガイドでは、コードを書かずにわずか10分で設定する方法を紹介します。

動画で見る


AIボットを作る5つの簡単な手順

次の手順に沿って進めると、Discordサーバーで実際に動作するAIチャットボットを使えるようになります。

  1. Discordサーバーを作成する
  2. Discordアプリケーションを作成する
  3. ボットをサーバーに追加する
  4. Quickchat AIアカウントを作成する
  5. DiscordボットとQuickchat AIを連携する

完成したAIボットのイメージ

設定が終わると、ボットがDiscord上で稼働し、サーバーメンバーと自然に会話できるようになります。

完成イメージ:賢い対話型AI


最速の方法:ワンクリックで接続

すでにQuickchat AIアカウントをお持ちなら、Developer Portalを開く必要はありません。ダッシュボードの左サイドバーでExternal Appsを開き、Discordを選択して、Connectの下にあるAdd to your Discord serverをクリックします。

Quickchat AIのDiscord接続画面にあるAdd to your Discord serverボタン External Apps → Discordにあるワンクリック接続画面。

Discordで共有のQuickchat AIアプリの認証とサーバーの選択を求められます。Authorizeをクリックするとボットが起動し、メンバーがチャンネルで**@メンションして使えるようになります。必要なのは、選択したサーバーのManage Server(サーバー管理)**権限だけです。

Quickchat AIに新規登録すると、Discord向けの初期設定画面から直接この接続フローに進めます。

Quickchat AIの新規登録者に表示されるDiscord向けの初期設定画面 新規登録すると、Discord向けの初期設定画面からワンクリック接続に進めます。

以下は、手動で接続するUse your own Discord appオプションの手順です。自分のDiscordアプリケーションを作り、ボットトークンで接続します。ボットの名前やアバターを独自に設定したい場合、ダイレクトメッセージやDiscord AI Actionsを使いたい場合、1つのサーバーで複数のボットを動かしたい場合に選んでください。Discord ActionsはDiscord APIリクエスト用のトークンを使うため、自分のボットによる接続が必要です。


1. Discordサーバーを作成する

Discordアカウントをお持ちでない場合は、discord.comで作成してください。次に、最初のサーバーを設定します。

最初のサーバーを作成する


2. Discordアプリケーションを作成する

**Discord Developer Portal**にアクセスし、新しいアプリケーションを作成します。

新しいアプリケーションを作成する


3. ボットをDiscordサーバーに追加する

下のスイッチをオンにして、ボットがメッセージの内容を受信できるようにしてください。

メッセージ内容の受信を有効にする

ボットを作成したら、サーバーに追加します。次の形式でDiscordのURLを組み立て、ブラウザーに貼り付けて開いてください。

https://discord.com/api/oauth2/authorize?client_id=<YOUR CLIENT ID>&permissions=309237713920&scope=bot

権限の数値はどこから来るのでしょうか?

権限の数値(309237713920)は、次の権限を要求したときの値です。

  • View Channels
  • Send Messages
  • Create Public Threads
  • Send Messages in Threads
  • Read Message History

ボットが正常に動作するために最低限必要な権限です。discord.com/developers/applicationsで自分のアプリケーションを選択し、左側のBotをクリックして下にスクロールすると確認できます。

Discordボットの権限

YOUR CLIENT IDはどこで確認できますか?

最も簡単なのは、ブラウザーのアドレスバーにあるURLから長い数値をコピーする方法です。

https://discord.com/developers/applications/<YOUR CLIENT ID>/bot

クライアントID

この例のクライアントIDは1234567890123456789です。ボットをサーバーに追加するために開く完全なURLは次のようになります。

https://discord.com/api/oauth2/authorize?client_id=1234567890123456789&permissions=309237713920&scope=bot

この手順で問題が起きた場合:

  • 「Integration requires code grant」:アプリケーションのRequire OAuth2 Code Grantが有効になっています。Developer Portalでアプリを開き、Botに移動してこのオプションをオフにし、保存してから招待URLをもう一度開いてください。(詳細
  • ケーキや「baked」の画面が表示される:Discordの成功画面です。ボットは追加されています。Server Settings → Integrations → Bots and Appsで確認してください。
  • ヒント:Quickchat AIダッシュボードにボットトークンを貼り付けると(手順5)、Discord連携ページに招待URLと設定チェックリストが表示されるので、上のURLを手作業で組み立てる必要はありません。

4. Quickchat AIアカウントを作成する

Quickchat AIに登録して、ボットに人間のような対話型AIを組み込みましょう。

Quickchat AIでは、独自のナレッジベースやAI Actionsなどを備えたAIエージェントを作成できます。DiscordボットやWebサイトなどに最適です。


5. ボットとQuickchat AIを連携する

ボットをQuickchat AIに接続するには、Developer PortalからDiscord Bot Tokenを取得します。

  1. Bot SettingsReset TokenCopy Tokenの順に進みます。

トークンをリセットする

  1. Quickchat AIダッシュボードExternal Apps → Discordを開き、Use your own Discord appを選択してトークンを貼り付けます。Quickchat AIがボットを起動し、起動中の状態を表示します。

トークンを貼り付ける

ボットがオンラインにならない場合

ボットの起動に失敗すると、Discord連携ページに具体的なエラーと修正方法へのリンクが表示されます。特によくあるのは次の2つです。

  • Invalid token:トークンが誤っているか、再生成されています。トークンをリセットすると古いトークンは無効になります。Developer Portalでボットを開いてBot → Reset Tokenに進み、新しいトークンをコピーしてください。その後、Quickchat AIでReconnectをクリックして貼り付けます。画面はInvalid bot tokenで確認できます。
  • Message Content IntentがオフPrivilegedIntentsRequiredと表示):ボットは接続していますがメッセージを読めません。Developer Portalでボットを開き、Bot → Privileged Gateway IntentsMessage Content Intentをオンにして保存してください。スイッチの位置はMessage Content Intentで確認できます。

トークンや設定を変更するとボットは再起動します。オンラインになるまで最大1分ほどお待ちください。

自分のボットがオンラインなのに応答しない場合

共有のワンクリック接続用Quickchat AIボットが同じサーバーに残っていないか確認してください。両方のボットが1つのサーバーにいる場合、共有ボットが応答し、自分のボットはトークン、インテント、権限が正しくても応答しません。Quickchat AIダッシュボードでExternal Appsを開き、ワンクリック設定のConnected serversからそのサーバーを削除してください。自分のボットがすぐに引き継ぎます。Both bots are in the same serverも参照してください。


AIボットが公開されました!

Discordに戻ると、ボットがオンラインになり、会話できる状態になっているはずです。@メンションして会話を始めましょう。

稼働中のボット

@メンションすると、ボットは既定でチャンネルに返信します。Reply inの設定でThreadを選ぶとスレッドを作成し、その中ではボットにメンションせずに会話を続けられます。

スレッド内の会話


ボットの応答方法

ボットを呼び出す方法はいくつかあり、会話履歴の扱いがそれぞれ異なります。

場面呼び出し方会話履歴
チャンネルで@メンションテキストチャンネルでボットに@メンションするReply inの設定による(後述)
ボットのスレッド内のメッセージボットが作成したスレッドにメッセージを送るスレッド全体の履歴を保持
ボットのメッセージへの返信ボットのメッセージにDiscordの返信機能を使う毎回新しい会話を開始
/askスラッシュコマンド/askと質問を入力する(ワンクリック接続ボットのみ)毎回新しい会話を開始
ダイレクトメッセージボットにDMを送る(自分のアプリケーションのみ)DMセッション全体で保持

チャンネルに通常のメッセージを送るだけでは、ボットは反応しません。にぎやかなサーバーでボットが不要な応答をしないようにする意図的な仕様で、追加直後のボットが動かないように見える最もよくある理由です。/askは、呼び出し方を見つけやすくするための選択肢でもあります。どのチャンネルでも/を入力すると一覧に表示され、メッセージ内容の取得が制限されている場所でも使えます。共有のワンクリック接続ボットに登録されているコマンドなので、自分のアプリケーションで接続する場合は@メンションを使ってください。

「Reply in」の設定

QuickchatダッシュボードのChannels > External Apps > Discordには、2つの選択肢がある**「Reply in:」**ドロップダウンがあります。

  • Channel(既定):メンションされたチャンネルに直接返信します。@メンションのたびに新しい会話が始まり、以前のやり取りは記憶しません。
  • Thread:@メンションごとに新しいスレッドを作ります。スレッド名にはボット名とユーザー名が使われます(例:「Aria & john_doe」)。スレッド内では@メンションなしですべてのメッセージに応答し、会話履歴全体が保持されます。

ダイレクトメッセージ

DMを使うには、自分のDiscordアプリケーションが必要です。共有のワンクリック接続ボットはサーバー内でのみ応答します。共有アカウントへの一方的なDMに返信すると、利用しているすべてのサーバーに影響するためです。

自分のアプリケーションでは、DM内で@メンションは不要です。ボットはすべてのメッセージに応答し、セッションを通して会話履歴が保持されます。DMへの応答時には、サーバーのチャンネル履歴にはアクセスしません。

注意: ボットが応答するのは、自分で作成したスレッドだけです。誰かが手動で作成したスレッドにメッセージを書いても、ボットは応答しません。


ボットがチャンネルの文脈を理解する仕組み

チャンネルでボットに@メンションすると、ボットはメンションされた1件のメッセージだけを見るわけではありません。チャンネルの最近のメッセージを自動的に取得し、タイムスタンプ付きの会話記録としてAIのプロンプトに含めます。そのため、進行中の会話を理解し、以前の発言を参照できます。

AIから見た文脈の例は次のとおりです。

Most recent messages on the #general channel:
[2026-02-19 14:01] alice: Has anyone tried the new API endpoint?
[2026-02-19 14:03] bob: Yeah, I got a 429 back after about 50 requests
[2026-02-19 14:05] alice: @QuickchatBot what's the rate limit for the v2 API?

チャンネル内のアクティブなスレッドとアーカイブ済みスレッドのメッセージも読み取るため、スレッドでの議論も文脈に含まれます。

Discordの返信機能で特定のメッセージに返信すると、ボットは最近の履歴全体を取得する代わりに、返信先のメッセージのすぐ前後に文脈を絞ります。これにより、ユーザーが参照している会話に的を絞った文脈を得られます。

メッセージ内の特殊な内容(スタンプ、GIF、画像、埋め込み、リアクション)は注釈で表されます。会話記録の中で視覚的に見られなくても、ボットはそれらの存在を認識できます。@メンションのトークンは読みやすい表示名に置き換えられます。

設定は不要です。チャンネルの文脈は、Discord上のすべてのQuickchat AIボットで既定で有効になっています。

チャンネルの文脈を使って追加の質問に答えるボット

サーバー履歴全体を対象にしたスマートAI検索

既定では、ボットはメンションされたチャンネルのメッセージだけを読みます。Smart AI search over server historyを有効にすると、サーバー内の任意のテキストチャンネルからメッセージを検索できます。どのチャンネルを調べるかは、ユーザーの質問をもとにAIが判断します。

たとえば#generalで「移行について#engineeringではどんな結論になった?」と質問すると、ボットは#engineeringの最近の履歴を読み、そこで見つけた内容をもとに回答できます。

期間による絞り込みとページネーションにも対応しており、必要に応じて過去の履歴までさかのぼれます。

モード対象適した用途
既定現在のチャンネルのみ汎用的なコミュニティボット
Smart AI search over server historyサーバー内の任意のチャンネルサポートボット、チャンネルを横断した情報取得

注意: Smart AI search over server historyは現在ベータ版です。ご興味がある場合は、メールまたはQuickchat Discordサーバーでお問い合わせください。

Discord連携設定にあるSmart AI search over server historyのスイッチ


ボットに画像を送る

ボットへの@メンションに画像を添付すると、AIが画像認識機能で処理します。対応形式はPNG、JPG、JPEG、GIF、WebPです。複数の画像を添付した場合は、最初の1枚を処理します。

Discord CDNの画像URLがメッセージのテキストとともにマルチモーダル入力としてAIモデルに渡されるため、AIは同じターンでテキストと画像の両方を見ることができます。設定は不要です。画像理解は既定で有効になっています。

Discordコミュニティでの活用例を挙げます。

  • 開発者コミュニティ:ユーザーがスタックトレースやエラーメッセージのスクリーンショットを送り、ボットに説明を求める
  • デザインコミュニティ:UIモックアップを共有し、ボットにフィードバックを求める
  • ゲームコミュニティ:ゲーム設定のスクリーンショットを共有し、最適化のヒントを求める
  • ECサポート:顧客が不良品の写真をサポートボットに送る

ユーザーがスクリーンショットを送り、ボットが画像を分析して質問に答える


DiscordにAI Actionsを接続する

AI Actionsを使うと、Discordでの会話中にボットが外部APIやツールを呼び出せます。QuickchatダッシュボードのAI Agent > Actions & MCPsで一度設定すれば、すべてのチャンネル(Discord、Webサイトウィジェット、WhatsApp、Telegramなど)で使えます。

利用できるアクションは2種類です。

アクションの種類できること
API Actionパラメーター、ヘッダー、本文を設定して外部エンドポイントにHTTPリクエスト(GET、POST、PUT、DELETE)を送る
Remote MCPModel Context Protocolサーバーに接続して外部ツールやデータソースを利用する

DiscordでAI Actionsを使って作れるボットの例です。

  • 注文追跡ボット:API ActionをECのバックエンドに接続すると、メンバーが「注文番号#12345は今どこ?」と聞いて最新の状況を確認できます。
  • GitHub issueボット:Remote MCPをGitHubリポジトリに接続し、開発者がDiscordで直接「criticalタグが付いた未解決のバグはある?」と質問できるようにします。
  • サポートチケットボット:ドキュメントから回答し、解決できない問い合わせだけにサポートロールへ通知する非公開チケットスレッドを作成します。
  • モデレーション補助:タイムアウト、キック、BAN、低速モードのテンプレートを選び、モデレーターが自然言語で実行できるようにします。
  • 会議予約ボット:Remote MCPをCal.comやGoogle Calendarに接続し、Discordを通じてチームとの会議を予約できるようにします。
  • CRM連携HubSpotに接続して、Discordでの会話から見込み客を記録したり、サポートチケットを作成したりします。
  • 見込み客とフィードバックの記録Google Sheetsに接続し、Discordでの会話に出てきた見込み客、未回答の質問、デモ依頼をチームが普段使うスプレッドシートに直接記録します。

API Actionを設定する

  1. QuickchatダッシュボードでAI Agent > Actions & MCPsに進みます。
  2. Add Actionをクリックします。対応するDiscord操作を使う場合はDiscord Actionを選び、テンプレートを選択してください。サポートテンプレートではサーバー、チャンネル、ロールを指定します。モデレーションテンプレートはそのままインストールできます。Quickchatが、編集可能なリクエスト、説明、パラメーター、レスポンス処理、実行条件を作成します。
  3. ギャラリーにないエンドポイントが必要な場合のみ、カスタムHTTP Requestアクションを選択します。「注文状況の確認」のような名前と、AIに使用場面を伝える説明を設定してください(例:「ユーザーが注文状況を尋ねたときに使う。最初に注文番号を尋ねる。」)。
  4. HTTPメソッド(例:GET)、エンドポイントURL、必要なパラメーターを設定して保存します。

これで、対応チャンネルのエージェントからアクションを使えるようになります。DiscordギャラリーのActionsは編集可能な通常のHTTP Request Actionsなので、変更後には認証、対象、パラメーターを確認してください。詳しい手順は、HubSpot AI ActionsチュートリアルDiscordモデレーションボットガイド(タイムアウト、キック、BAN、ロール、低速モードをAI Actionsとして利用)、Actionsドキュメントをご覧ください。

QuickchatダッシュボードのActions & MCPsページに表示された設定済みAPI Action


関連記事

関連するテーマをさらに詳しく解説したガイドです。


**Quickchat AIに登録**してAIエージェントを作り始めましょう。Discordコミュニティにも参加できます:discord.gg/KqkHwvPRNH