gaibot に MCP 連携のエージェント機能を追加:Slack から GitHub Issue 作成・Google Workspace 操作が可能に🔧
gaibot は、gaipack Knowledge Hub(GKH)プロジェクトで開発を進めている社内向け Slack ボットです。今回、GitHub・Google Workspace との MCP(Model Context Protocol)連携によるエージェント機能を追加する開発を進めていますので、その内容とアーキテクチャ、デモの様子をご紹介します。
背景・課題
gaibot はこれまで、データソースの文書や Slack の過去の会話履歴を検索し、質問に対して回答を生成する社内ボットとして稼働してきました。ただし機能は質問応答のみに限定されており、Slack・Google Drive・GitHub にまたがる情報を横断的に探したり、そこから直接アクションを起こしたりすることはできませんでした。
「あの件、今どうなってたっけ?」を調べるだけでも Slack・Drive・GitHub を個別に検索して回る必要があり、情報が散在している状態が課題となっていました。
新機能:MCP連携によるエージェント化
今回のアップデートでは GitHub および Google Workspace に MCP で接続し、以下が Slack 上のメンションだけで完結するようになりました。
- ファイルの検索・閲覧
- ファイルの編集
- GitHub Issue の作成
- Google Drive 上のドキュメント・スプレッドシートの読み取り・更新
質問への回答に加えて、ファイル操作や Issue 起票といった「実行」まで一つのボットで担えるようになった点が、これまでとの大きな違いです。あわせてアーキテクチャも抜本的に見直しています。
デモ:SlackからGitHub Issueを作成する
実際の動作を、テスト用ワークスペースのサンドボックス環境で確認しました。
まず bot に対して「何ができるか」をメンションで尋ねると、ファイル検索、ファイルの作成・編集、GitHub 連携、Google Workspace 連携が可能である旨を回答してくれます。

続けて、開発中のリポジトリに対して「動作確認用の Issue を作成してください」とメンションで依頼すると、bot はまず Issue の内容案をプレビューとして提示します。内容に問題なければ、そのまま作成を依頼できます。
その際、リポジトリ名だけでなくオーナー名の指定が必要だったため、オーナー名を補って再度依頼したところ Issue が正しく作成されました。実際に GitHub 上で確認すると、Slack 上でプレビューされた内容と一致していました。

※ このデモは動作確認目的で実行したものです。実運用では、スレッド内の会話を要約して Issue 化する、未対応のタスクを洗い出して教えてもらう、といった使い方も想定しています。
Google Workspace との連携についても同様で、Google Drive 上のドキュメントやスプレッドシートの内容を読み取ったり、更新をかけたりすることが可能です。
アーキテクチャ
今回のアーキテクチャは、Slack(および将来的には Web クライアントも想定)からのリクエストが Lambda を経由し、Amazon Bedrock AgentCore Runtime 上で処理される構成です。認証、会話履歴の保持、LLM エージェントとしての機能の大部分は AgentCore Runtime がマネージドで提供するため、実装の中心はこの基盤の設定作業が占めています。

現時点で MCP 接続先は GitHub と Google Workspace の 2 つですが、クライアントごとの要望に応じて他のサービスとの接続も同様の構成で追加できる設計です。
また、情報を集約する専用 DB を持たない点もポイントです。Slack の会話履歴は JSON 形式でエクスポートし、AgentCore Runtime から S3 を参照して読み込む構成としており、全体としてもシンプルな構成になっています。
今後の展望と課題
現状、この新機能はクローズドなサンドボックス環境でのみ検証している段階です。今後、より広い Slack チャンネルへの展開を予定していますが、公開範囲を広げた際にクローズドな情報が意図せず回答に含まれてしまわないように検証をすすめています。
また、リリースノートは現時点で未整備ですが、bot はリポジトリの README を参照できるため、README・リリースノートの更新を継続していくことで、常に「今のバージョンで何ができるか」をユーザーが参照できる状態を目指しています。
まとめ
MCP で接続するだけで機能を拡張できる設計になっているため、今後も新しい MCP サーバーが登場するたびに、気軽に連携を試していければと考えています。社内で継続的に改善を進めています。gaibot 導入にご興味のある方はお気軽にご相談ください。
