GoogleのAI開発ツール「Antigravity」を使ってエージェントファースト開発を実践する本連載。前回は、エージェントに対して特定のタスク専用の知識や技術を持たせる「スキル」の使い方を解説した。

今回は、外部のツールと簡単に連携することができる「MCP(Model Context Protocol)」の使い方を取り上げる。MCPを利用すれば、Antigravityのエージェントが、GitHubのようなサードパーティーのサービスや、NotionやObsidianのような外部ツールを活用して、より高度なタスクをこなしたり、パーソナライズされた成果物を生成したりできるようになる。

実際にエージェントに指示すると、GitHubへのプッシュまで自動で実行される。

  • エージェントに指示してソースコードをプッシュする

    エージェントに指示してソースコードをプッシュする

エージェントはどこまでできる?MCPで外部ツール操作が可能に

GitHub MCPの準備が整ったら、早速エージェントに指示を出してみよう。チャット欄に次のように入力する。

このプロジェクトをGitHubにプッシュしてください。
リポジトリ名はmymarksとし、privateリポジトリとして作成してください。
READMEも自動生成してください

実践:エージェントがGitHubに自動でプッシュする仕組み

エージェントはこの指示を受け取ると、GitHub MCPを使って次の作業を順番に実行していく。

まず、GitHubアカウントに「mymarks」という名前のprivateリポジトリを新規作成する。次に、プロジェクトのファイルをGitリポジトリとして初期化し、これまでの変更をまとめてコミットする。コミットメッセージもエージェントが自動で生成する。最後に、リモートリポジトリとしてGitHubを登録して、プッシュを実行する。READMEの生成も指示に含まれているので、プロジェクトの内容に基づいたREADMEも自動で作成される。

  • エージェントに指示してソースコードをプッシュする

    エージェントに指示してソースコードをプッシュする

一連の作業が完了したら、リポジトリのURLや、プッシュした対象ファイルの一覧などの情報が表示される。WebブラウザでGitHubのURLにアクセスして、ファイルがプッシュされていることを確認しよう。

  • 完成したGitHubリポジトリー

    完成したGitHubリポジトリ

MCPとは何か?エージェントが外部ツールと連携する仕組み

これまで、エージェントはコードを書いたり、ブラウザを操作して動作確認をしたりといった作業を自律的に実行できることを確認してきた。しかし、デフォルトの状態ではエージェントが操作できる範囲はワークスペース(ローカルの開発環境)の中に限られる。

例えば、完成したアプリのソースコードをGitHubリポジトリで管理する場合、単純な作業であればエージェントはgitコマンドを使って実行できるが、「リポジトリを新規作成してから、コミットして、プッシュする」といった一連の作業を自律的に完結したい場合にはGitHubのAPIに直接アクセスできた方が効率が良い。そのような外部サービスとの連携機能をプラグインのように付け加えることができるのが「MCP(Model Context Protocol)」だ。

MCPは、AIと外部ツールをつなぐための標準規格で、特定のサービスのAPIをエージェントが利用できる形にまとめた「MCPサーバ」を介して、外部サービスの機能をエージェントから呼び出せるようになる。

MCPはAntigravity特有の技術というわけではない。もともとはAnthropic社が2024年末に提唱したもので、現在はGoogleやOpenAIなどの主要各社が参加して規格の標準化を進めている。MCPをサポートしたツールやサービスは、独自に連携機能を実装しなくても、共通のプロトコルでお互いにメッセージをやりとりして連携することができる。Antigravityは、このMCPの仕組みをあらかじめ備えているので、MCP対応の外部ツールや外部サービスと簡単に連携できるというわけだ。

MCPの仕組みや動作原理は以下のサイトに詳しくまとめられている。

Antigravityでは利用可能なMCPサーバを「MCP Store」という形でまとめている。GitHub、Firebase、Figmaなど、開発ワークフローでよく使われるサービスのMCPサーバがそろっているほか、自分でMCPサーバを作成して追加することもできる。

なぜMCPが必要なのか?従来のエージェントの限界

一つ注意点を挙げると、あまり多くのMCPサーバを追加すると、処理のパフォーマンスが下がる場合がある。

エージェントにとっては、MCPサーバの数だけ利用できるツールが増えることになるが、多すぎるとプロンプトでの指示に対してどのツールを使うのが最適なのか判断しにくくなってしまうからだ。Antigravityのドキュメントでは、追加するツールの数は50個以下に抑えることが推奨されている。

GitHubと連携するには?MCPサーバの設定手順

今回はGitHub MCPサーバを設定して、MyMarksアプリをGitHubにプッシュする作業をエージェントに任せられるようにしてみる。

GitHubのPersonal Access Tokenを取得する

GitHub MCPを使うには、GitHubの「Personal Access Token(PAT)」が必要となる。PATは、GitHubアカウントへのアクセス権をトークン(ランダムな文字列)として発行する仕組みで、これをMCPの設定ファイルに登録することでエージェントがGitHubを直接操作できるようになる。

PATを取得する手順は次のとおりだ。

  1. GitHubにログインしてアカウントのSettingsを開く
  2. 左サイドバーの一番下にある「Developer settings」をクリックする
  3. 「Personal access tokens」→「Fine-grained tokens」を選択する
  4. 「Generate new token」をクリックし、必要な情報と権限を設定する
  5. 生成されたトークンをコピーしておく

「Token name」は自分で見てわかりやすい名前をつけておこう。「Expiration」はトークンの有効期限で、デフォルトは30日間になっている。「Repository Access」は、今回はプライベートリポジトリへの書き込みを行いたいので「All repositories」にしておく。もし操作対象のリポジトリがすでに決まっている場合には「Only select repositories」にして、アクセスできるリポジトリを限定しておいた方が安全だ。

  • 「Personal access tokens」の作成例

    「Personal access tokens」の作成例

「Permissions」では、このトークンを使ってGitHubのどの機能にアクセスできるのかを設定する。今回はリポジトリの作成、コンテンツのプッシュなどの操作を行いたいので、「Administration(Read and Write)」(リポジトリ作成に必要)、「Contents(Read and Write)」(コンテンツのプッシュに必要)、「Metadata(Read only)」(リポジトリ情報の取得に必要)を選択しておく。

  • Permisionsの選択例

    Permisionsの選択例

「Generate Token」をクリックすれば、PATが作成される。PATの文字列はこの画面を閉じると2度と表示されないので確実にコピーしておこう。

  • 生成されたトークン文字列をコピーしておく

    生成されたトークン文字列をコピーしておく

MCP StoreからMCPサーバをインストールする

GitHubのPATが用意できたら、Antigravityに戻って作業する。AntigravityでMCPサーバを追加するには、Editorビューのサイドパネル上部にある「…」メニューをクリックし、ドロップダウンから「MCP Servers」を選択して「MCP Store」パネルを開く。

  • 「MCP Store」パネルを開く

    「MCP Store」パネルを開く

多くの利用可能なMCPサーバがリストアップされているので、その中から「GtHub」を検索して選択する。

  • 「GitHub」MCPサーバーを検索して選択する

    「GitHub」MCPサーバを検索して選択する

中央のエディターパネルにGitHub MCPサーバの詳細が表示されるので、「Install」をクリックする。

「GitHub Token」の入力を促されるでの、ここで先ほどコピーしたGitHubのPATを入力して「Save」をクリックする。

以上でGitHub MCPサーバの設定は完了だ。なお、もしもPATの権限を変更したい場合などは、同様の手順で新たにPATを作り直して、GitHub MCPサーバに設定したPATの文字列を入れ替えればいい。

まとめ

ここまで全6回にわたって、GoogleのAI開発ツール「Antigravity」を使ったエージェントファースト開発を体験してきた。

第1回から第3回では、Antigravityの基本操作を習得した。エージェントファースト開発とは何かという概念の理解から始まり、プロジェクトの作成、自然言語での指示の出し方、実装計画の確認、コード差分の読み方と、AIを使った開発の基本サイクルを学んだ。第4回から第6回では、ルールでコーディングスタイルやディレクトリ構成を固定し、ワークフローで定型的な手順を呼び出せるようにし、スキルで複雑な作業をパッケージ化した。そして今回のMCPで、エージェントの活動範囲を外部サービスにまで広げてみた。

本連載でカバーした内容はAntigravityを利用したアプリケーション開発の入り口にすぎない。エージェントファースト開発はまだ始まったばかりの分野だが、ツールの進化は速く、この連載を執筆している間にも新しい機能が追加されている。大切なのは、完璧な使い方を最初から身につけようとするのではなく、実際にエージェントに作業を任せながらより良いやり方を見つけていく姿勢だ。AIとの対話を重ね、自分なりの開発手法を確立していこう。