コース目次
アカデミーモジュール 7 · 制御と接続
外部アプリとMCPツールの接続
このレッスンで学ぶこと
- Connection の役割と、その内部で MCP が行うことを説明できる
- 適切な認証方法で Notion、GitHub、Google のアプリを接続できる
- 外部ツールの承認カードを読み、「今回のみ許可」「常に許可」「拒否」を選べる
- ツールごとの権限と「このアプリを信頼」設定で、Connection のアクセスを制限できる
プロジェクトについてチャットしている最中に、仕様書は Notion、不具合報告は GitHub、来週の期限は Google カレンダーにあるとします。エージェントはワークスペース内を詳しく把握していますが、外部の情報はそのままでは参照できません。
Connections は、その境界をつなぎます。外部アプリを一度 Consilience に接続すると、Notion ページの検索、GitHub Issue の読み取り、Gmail の送信などを、エージェントがチャット中に実行できるようになります。どの操作も、利用者が管理する承認カードを経由します。
Connection とは
Connection は、Consilience に接続した 1 つの外部アプリです。内部では、HTTPS 経由で到達できる MCP サーバー として動作します。
MCP を簡潔に理解する
MCP(Model Context Protocol)は、AI が外部サービスを利用するためのオープン標準です。サービスは、notion-search のように名前と型付き引数を持つ処理を ツール として公開します。MCP に対応するクライアントはそれらを検出して呼び出せます。Consilience もそのクライアントの 1 つです。各 Connection は 1 つの MCP サーバーに対応し、そのツールがエージェントの通常のツール群へ加わります。画面上では、単に「Connections」として扱います。
| アプリ | カテゴリー | 認証方法 |
|---|---|---|
| Notion | 生産性 | ブラウザー認証(OAuth) |
| GitHub | 開発 | Personal Access Token |
| Atlassian(Jira と Confluence) | 開発 | ブラウザー認証(OAuth) |
| Gmail | Google Workspace | アグリゲーターのリンク(Composio など) |
| Google Drive | Google Workspace | アグリゲーターのリンク(Composio など) |
| Google Calendar | Google Workspace | アグリゲーターのリンク(Composio など) |
左サイドバーのチャットセッションパネルでは、「新しいチャット」の隣にリンクアイコン付きの 「Connections」 ボタンがあります。クリックするとカタログがワークスペースのタブとして開きます。タブは常に 1 つだけで、もう一度クリックすると既存タブへ移動します。コマンドパレットで「Connections」を検索するか、移動メニューからも開けます。
3 種類の接続方法
各コネクターは、サービスが対応する次のいずれかの認証方法を使います。
- ブラウザー認証(OAuth):Notion と Atlassian で使用します。「ブラウザーでサインイン」をクリックすると、アプリ内 Web ビューではなく、実際のシステムブラウザーが開きます。そこで認証すると、トークンは OS のキーチェーンに保存されます。
- アクセストークン:GitHub で使用します。GitHub のサーバーにはブラウザー認証フローがないため、Personal Access Token を貼り付けます。「トークンを作成」リンクから github.com/settings/tokens を直接開けます。
- アグリゲーターのリンク:Google の各カードで使用します。Google は公式の MCP サーバーを提供していないため、Gmail、Drive、Calendar は Composio などの接続サービスを経由します。そこで Google にログインし、発行されたリンクを貼り付けます。
1 分以内で Notion を接続する
- Connections を開く
チャットのサイドバーで、「新しいチャット」の隣にある「Connections」をクリックします。
- アプリを選ぶ
Notion の行をクリックします。アプリの説明を含む接続ダイアログが開きます。
- サインインする
「ブラウザーでサインイン」をクリックします。既定のブラウザーで Notion の同意画面が開くので、そこで承認します。
- 接続完了を確認する
ダイアログに「接続中…」と表示され、成功すると自動的に閉じます。Notion が緑のチェック付きで「接続済み」欄に表示されます。
カタログにない場合は、自分で運用するサーバーやアグリゲーター経由の Slack を 「詳細:セルフホストの Connection を追加」 から登録できます。名前、https:// URL、認証方法を指定します。通常の http は localhost でのみ利用でき、プライベート IP や内部 IP は拒否されます。
チャットでのツール表示
別途オンにする設定はありません。アプリを接続して信頼すると、サーバーが公開する ツール が、notion__notion-search のように名前空間付きでエージェントの通常のツール一覧へ加わります。全ツールは、Connection の管理ダイアログにある「詳細:ツールごとの権限」で確認できます。
1 つの質問、1 枚の承認カード
エージェントに「Notion で第 3 四半期の計画ページを探して」と依頼します。エージェントが Notion の検索ツールを使うと判断すると、チャットに 「notion から notion-search を実行しますか?」 というカードが表示されます。その直下には全 JSON 引数が等幅フォントで表示され、送信される内容を事前に確認できます。
続いて選択します。「今回のみ許可」 は今回実行します。「常に許可」 は、この Connection のこのツールを次回から確認なしで実行し、設定はチャットをまたいで保持されます。「拒否」 は操作を行わず、エージェントはそのツールなしで処理を続けます。
アプリを接続して承認カードを確認する
- 左サイドバーのチャットセッションパネルを開き、「新しいチャット」の隣にある「Connections」をクリックします。
- 利用しているアプリの行をクリックします。Notion では「ブラウザーでサインイン」を使い、GitHub では「アクセストークン」へトークンを貼り付けます。
- 認証を完了します。ダイアログが自動で閉じ、アプリが緑のチェック付きで「接続済み」に表示されます。
- チャットへ戻り、「Notion で会議ノートを検索して」のように、そのアプリだけが答えられる内容を依頼します。
- 承認カードが表示されたら JSON 引数を確認し、「今回のみ許可」をクリックします。
ツール呼び出しが実行され、ほかのツールと同様にエージェントのアクティビティフィードへ表示されます。接続したアプリの最新データを使った回答が返ります。
接続したツールの権限管理
アプリが公開する各ツールには 3 段階の権限があり、初期設定は慎重な中間状態です。
| 権限 | 意味 |
|---|---|
| 「常に許可」 | 確認なしで実行する。ツールごとに設定し、すべてを一括許可する切り替えはない。 |
| 「承認が必要」 | 初期設定。呼び出すたびにチャットの承認カードを経由する。 |
| 「ブロック」 | エージェントのツール一覧から完全に除外され、エージェントからは見えない。 |
- 「このアプリを信頼」 は、管理ダイアログにある Connection ごとの切り替えです。オフにしてもサインイン状態は維持されますが、エージェントからそのツールが見えなくなります。
- 信頼できないコンテンツのガード。 外部ツールの返却内容はすべて、モデルに対して信頼できないコンテンツとして囲まれます。そのターンの残りでは、URL を追加取得するたびに明示的な許可が必要です。外部ページに隠されたプロンプトインジェクションを防ぎます。
- 機密情報はキーチェーンだけに保存。 トークンは OS のキーチェーンに保存され、データベースやローカルストレージには置かれません。接続を解除すると消去されます。
- 呼び出しを限定。 外部ツールは 1 件ずつ実行されるため、応答の遅いサーバーがチャット全体を停止させることはありません。
- プランモードでは Connections を使用しない。 プランが有効な間、外部ツールはエージェントから完全に除外されます。
- Connection
- Consilience に接続した 1 つの外部アプリ。内部では、HTTPS 経由で到達できる 1 つの MCP サーバーに対応する。
- MCP
- Model Context Protocol。サービスが AI に呼び出し可能なツールを記述するためのオープン標準。UI ではこの名称を使わない。
- ツール
- 接続したサーバーが提供する具体的な処理。エージェントには connection__tool-name(例:notion__notion-search)の名前空間付きで見える。
- ツールごとの権限
- ツール単位の 3 段階設定。「常に許可」/「承認が必要」(初期設定)/「ブロック」。
- 「このアプリを信頼」
- Connection ごとの切り替え。オフにしてもサインイン状態を保ちつつ、すべてのツールをエージェントから隠す。
- アグリゲーター
- 公式 MCP サーバーを持たないアプリの認証を仲介し、貼り付け用リンクを発行する Composio などの接続サービス。
仕組みは以上です。一度接続すると、ツールは承認カード、ツールごとの権限、「このアプリを信頼」という制御の下で、エージェントのツール群に加わります。エージェントがどのようにプランを作り、引用し、一般的な承認を求めるかは、エージェントのレッスンですでに確認しました。次はアクティビティセンターです。バックグラウンドで実行するジョブを集約するベルと、これらのツール呼び出しが表示されるチャット内の行を扱います。