Google Developer Knowledge MCP サーバーを使用すると、AI を搭載した開発ツールで、Firebase、Google Cloud、Android、Google Maps Platform などのプロダクトの公式 Google デベロッパー ドキュメントを直接検索して取得できます。コーディング アシスタントを Google の信頼できるドキュメント ライブラリに接続することで、手動でのウェブ検索、古いコンテキスト、スクレイピングを回避できます。
MCP サーバーの機能
Google Developer Knowledge MCP サーバーは、AI コーディング アシスタントに次の 3 つのコアツールを提供します。
| ツール名 | 説明 |
|---|---|
search_documents |
Google デベロッパー ドキュメントを検索し、最も関連性の高いページの抜粋とドキュメント名を返します。 |
get_documents |
search_documents から返された名前を使用して、ドキュメントの完全な Markdown コンテンツを取得します。 |
answer_query |
Developer Knowledge コーパスに基づいて、構造化された合成回答を生成します。 |
search_documents ツールは、Google のドキュメントを検索して、クエリに最も関連性の高いセクションを見つけます。質問すると、短いテキスト パッセージが返されます。エージェントがパッセージの周囲にあるページ コンテキスト全体を必要とする場合は、ドキュメントのリソース名を get_documents に渡して、ページ全体を取得できます。
answer_query ツールは、生の検索結果や完全な Markdown ファイルではなく、デベロッパー ナレッジ コーパスから合成された質問への直接的な回答が必要な場合に使用します。
認証方法を選択する
Developer Knowledge MCP サーバーは、開発環境と AI アシスタントに応じて、次の 2 つの認証方法をサポートしています。
- API キー: Claude Code、Cursor、GitHub Copilot、Codex などのサードパーティ IDE と CLI エージェント、その他のリモート MCP クライアントに最適です。HTTPS 経由で
X-Goog-Api-Keyヘッダーに API キーを渡します。 - OAuth と ADC: アプリケーションのデフォルト認証情報(ADC)またはスタンドアロンの OAuth 2.0 クライアント ID を使用する Google Antigravity またはエンタープライズ ワークフローに最適です。
選択した認証方法に必要な認証情報を生成して、AI アシスタントまたはコーディング エージェントが Developer Knowledge MCP サーバー サービスでリクエストを認証できるようにします。
タブを選択して認証情報を作成します。
API キー
前提条件
API キーを作成する前に、次のことを確認してください。
- Google Cloud プロジェクト。
- gcloud CLI がインストールされている(コマンドラインから構成する場合)。
API を有効にして API キーを作成する
API キーは、Google Cloud コンソールまたは gcloud CLI を使用して生成できます。
Google Cloud Console
- Google Cloud コンソールで Developer Knowledge API ページを開きます。
- Google Cloud プロジェクトを選択し、[有効にする] をクリックします。
- [認証情報] ページに移動します。
- [認証情報を作成] をクリックし、[API キー] を選択します。
- [API キーを編集] アクションをクリックして、制限を構成します。
- [API の制限] で [キーを制限] を選択します。
- [Developer Knowledge API] を選択します。
- この同じキーをモデル呼び出し(
GEMINI_API_KEYなど)に使用する場合は、[Generative Language API] も選択します。
- [保存] をクリックし、API キーをコピーします。
gcloud CLI
プロジェクトで Developer Knowledge API を有効にします。PROJECT_ID は実際のプロジェクト ID に置き換えます。
gcloud services enable developerknowledge.googleapis.com \ --project=PROJECT_IDAPI キーを作成します。
gcloud services api-keys create \ --project=PROJECT_ID \ --display-name="DK API Key"このコマンドは、新しい鍵に関するメタデータの詳細を返します。コマンド出力から次の両方の値をコピーして保存します。
keyString: これは未加工の API キーです(例:AIzaSy...)。この値を IDE 構成に貼り付けます。name: 鍵のリソースパス(例:projects/PROJECT_ID/locations/global/keys/UNIQUE_ID)。このパスは、次のステップで鍵を制限するために使用します。
不正使用を防ぐため、キーを Developer Knowledge API に制限します。KEY_NAME は、前のステップでコピーした
nameのフルパスに置き換えます。gcloud services api-keys update KEY_NAME \ --api-target=service=developerknowledge.googleapis.comgcloud services api-keys update KEY_NAME \ --api-target=service=developerknowledge.googleapis.com \ --api-target=service=generativelanguage.googleapis.com
OAuth と ADC
前提条件
OAuth を構成する前に、次のことを確認してください。
API を有効にする
次のコマンドを実行して、プロジェクトで Developer Knowledge API を有効にします。
gcloud services enable developerknowledge.googleapis.com \
--project=PROJECT_ID
OAuth 認証情報の種類を選択する
ツールに必要な認証情報のアプローチを選択します。
アプリケーションのデフォルト認証情報
AI アシスタントが ADC をサポートしている場合(Google Antigravity など):
Google アカウントで認証し、割り当てプロジェクトを設定します。
gcloud auth application-default login \ --project=PROJECT_IDブラウザが開いたら、Google アカウントでログインし、リクエストされた権限を付与します。
OAuth クライアント ID
AI アシスタントにスタンドアロンの OAuth クライアント ID とシークレットが必要な場合:
- OAuth 同意画面を開きます。
- ユーザータイプを [外部] に設定し、必要なアプリ名とサポートメールアドレスを入力して、[保存して続行] をクリックします。
- [オーディエンス ページ] で、[テストユーザー] の [ユーザーを追加] をクリックし、Google のメールアドレスを入力して [保存] をクリックします。
- [クライアント] ページに移動し、[クライアントを作成] をクリックして、[アプリケーションの種類] を [デスクトップ アプリ] に設定します。
- [作成] をクリックし、JSON クライアント認証情報ファイルをダウンロードします。
IDE またはコーディング エージェントを構成する
認証情報を取得したら、ご希望のコーディング環境を選択して、設定手順を表示します。
選択した認証方法に応じて、構成テンプレートのプレースホルダを次のように置き換えます。
- API キー認証: YOUR_API_KEY を未加工の API キー文字列に置き換えます。
OAuth または ADC 認証: PROJECT_ID を Google Cloud プロジェクト ID に置き換えます。
Google Antigravity
Antigravity IDE と拡張機能
Antigravity IDE または Antigravity 拡張機能(VS Code など)で MCP サーバーを構成するには、認証方法を選択します。
Google 認証情報
ワンクリック設定を使用して MCP サーバーをインストールするには:
- [エージェント] パネルで、[その他のオプション]()メニューをクリックし、[MCP サーバー] を選択します。
- Google Developer Knowledge を検索します。
- [インストール]()アイコンをクリックします。Antigravity は、サーバーを自動的に構成し、アクティブな Google 認証情報を使用して接続します。
API キー
Antigravity IDE または Antigravity 拡張機能で API キーを構成するには:
- [エージェント] パネルで、[その他のオプション]()メニュー > [MCP サーバー] > [MCP サーバーを管理] > [未加工の設定を表示] をクリックします(または
.agents/mcp_config.jsonを開きます)。 次のサーバー構成を追加します。
{ "mcpServers": { "google-developer-knowledge": { "serverUrl": "https://developerknowledge.googleapis.com/mcp", "headers": { "X-Goog-Api-Key": "YOUR_API_KEY" } } } }
Antigravity CLI
プロジェクトの .agents/mcp_config.json ファイル(または ~/.gemini/config/mcp_config.json でグローバルに)で MCP サーバーを構成します。
Google 認証情報
{
"mcpServers": {
"google-developer-knowledge": {
"httpUrl": "https://developerknowledge.googleapis.com/mcp",
"authProviderType": "google_credentials",
"oauth": {
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
]
},
"timeout": 30000,
"headers": {
"X-goog-user-project": "PROJECT_ID"
}
}
}
}
API キー
{
"mcpServers": {
"google-developer-knowledge": {
"serverUrl": "https://developerknowledge.googleapis.com/mcp",
"headers": {
"X-Goog-Api-Key": "YOUR_API_KEY"
}
}
}
}
Claude Code
ターミナルで次のコマンドを実行します。
claude mcp add google-developer-knowledge \
--transport http https://developerknowledge.googleapis.com/mcp \
--header "X-Goog-Api-Key: YOUR_API_KEY"
Cursor
Cursor を構成するには、プロジェクト ルートの .cursor/mcp.json またはグローバル アクセスの ~/.cursor/mcp.json を編集します。
{
"mcpServers": {
"google-developer-knowledge": {
"url": "https://developerknowledge.googleapis.com/mcp",
"headers": {
"X-Goog-Api-Key": "YOUR_API_KEY"
}
}
}
}
GitHub Copilot
ワークスペースの設定
特定のワークスペース用に VS Code で GitHub Copilot を構成するには、.vscode/mcp.json を作成または編集します。
{
"servers": {
"google-developer-knowledge": {
"url": "https://developerknowledge.googleapis.com/mcp",
"headers": {
"X-Goog-Api-Key": "YOUR_API_KEY"
}
}
}
}
グローバル ユーザー設定
すべての VS Code ワークスペースでサーバーを使用できるようにするには、[ユーザー設定(JSON)] を開き、"mcp" キーの下に次を追加します。
{
"mcp": {
"servers": {
"google-developer-knowledge": {
"url": "https://developerknowledge.googleapis.com/mcp",
"headers": {
"X-Goog-Api-Key": "YOUR_API_KEY"
}
}
}
}
}
Codex
Codex CLI または Codex エージェントを構成するには、~/.codex/config.toml(またはプロジェクトの .codex/config.toml)にサーバー構成を追加します。
[mcp_servers.google-developer-knowledge]
url = "https://developerknowledge.googleapis.com/mcp"
http_headers = { "X-Goog-Api-Key" = "YOUR_API_KEY" }
その他
他のリモート MCP クライアント(JetBrains AI Assistant、Windsurf、Cline、Zed、Continue、Claude Desktop など)を構成するには、次の設定で HTTP トランスポート サーバーを構成します。
- サーバーの URL:
https://developerknowledge.googleapis.com/mcp - HTTP ヘッダー:
X-Goog-Api-Key: YOUR_API_KEY
標準の JSON 構成テンプレート:
{
"mcpServers": {
"google-developer-knowledge": {
"url": "https://developerknowledge.googleapis.com/mcp",
"headers": {
"X-Goog-Api-Key": "YOUR_API_KEY"
}
}
}
}
接続を確認する
構成が完了したら、AI アシスタントを再起動するか、MCP サーバーを再読み込みします。次に、テスト プロンプトを送信して、ツール統合が機能することを確認します。
How do I list Cloud Storage buckets using the Google Cloud Python SDK?
エージェントが search_documents または answer_query を呼び出し、Google ドキュメントから情報を返した場合は、サーバーが接続され、アクティブになっています。
コンテキスト ウィンドウとトークンの使用量を最適化する
ドキュメント ページ全体を AI モデルのコンテキスト ウィンドウに取得すると、大量のトークンが消費されます。複数の大きなドキュメントを取り込むと、トークン費用が増加し、レイテンシが増加し、コンテキスト ウィンドウがオーバーフローする可能性があります。
迅速かつ費用対効果の高いレスポンスを確保するには、次のプロンプト エンジニアリングのベスト プラクティスに従ってください。
2 段階取得に依存する: エージェントが
search_documentsを呼び出すことから始められるようにします。これにより、ページ全体のトークンを消費することなく、必要な構文や API シグネチャが正確に含まれていることが多い、フォーカスされたスニペット(チャンク)が返されます。周囲のコンテキストが厳密に必要である場合にのみget_documentsを呼び出すようエージェントに指示します。概念に関する質問には
answer_queryを優先する: 合成された説明や設計の比較が必要な場合は、answer_queryを使用するようエージェントに指示します。このツールは、完全な未加工の Markdown ページを返すことなく、デベロッパー ナレッジ コーパスから直接回答を合成します。具体的で範囲が絞られたプロンプトを作成する: 「Firebase のすべてを説明して」のような広すぎるプロンプトは避けます。代わりに、ターゲットのプロダクト、プラットフォーム、言語を指定します。
How do I write a Firestore transaction in Dart with error handling?カスタム エージェントルールを追加する: アシスタントの指示ファイル(
.cursorrules、CLAUDE.md、.github/copilot-instructions.mdなど)にプロジェクト レベルのガイドラインを追加して、自動的なページ全体の取得を制限します。When searching Google developer documentation, inspect search_documents snippets first. Do not call get_documents unless the snippet lacks necessary code context.
セキュリティと安全に関するオプションの構成
MCP ツールで実行できるアクションが多岐にわたるため、MCP によって新たなセキュリティ リスクと考慮事項が加わります。これらのリスクを最小限に抑えて管理するために、Google Cloud は、Google Cloud 組織またはプロジェクトでの MCP ツールの使用を制御するデフォルトの設定とカスタマイズ可能なポリシーを提供します。
MCP のセキュリティとガバナンスの詳細については、AI のセキュリティと安全性をご覧ください。
Model Armor を使用する
Model Armor は、AI アプリケーションのセキュリティと安全性を強化するために設計された Google Cloud サービスです。LLM のプロンプトとレスポンスを事前にスクリーニングすることで、さまざまなリスクから保護し、責任ある AI への取り組みをサポートします。AI を自社のクラウド環境と外部のクラウド プロバイダのいずれにデプロイする場合も、Model Armor は、悪意のある入力の防止、コンテンツの安全性の検証、センシティブ データの保護、コンプライアンスの維持、多様な AI 環境全体での AI の安全性とセキュリティ ポリシーの一貫した適用に役立ちます。
ロギングが有効な状態で Model Armor が有効になっている場合、Model Armor はペイロード全体をログに記録します。これにより、機密情報がログに公開される可能性があります。
Model Armor への MCP リクエストのルーティング
Model Armor は特定のリージョンで利用できます。Model Armor が有効になっていて、Model Armor がサポートしていない法域で MCP サーバーを使用している場合、呼び出しのルーティング動作は MCP サーバーごとに異なる可能性があり、使用中のデータと転送中のデータのデータ所在地コンプライアンスが破られる可能性があります。個々の MCP サーバーの動作の詳細については、Model Armor 対応プロダクトをご覧ください。Model Armor を有効にする
Google と Google Cloud MCP サーバーと統合するの手順に沿って、Model Armor を有効にします。
リモート MCP サーバーの保護を構成する
MCP ツール呼び出しとレスポンスを保護するには、Model Armor のフロア設定を使用します。フロア設定は、プロジェクト全体に適用される最低限のセキュリティ フィルタを定義します。この構成では、プロジェクト内のすべての MCP ツール呼び出しとレスポンスに一貫したフィルタセットが適用されます。
MCP サニタイズを有効にして Model Armor のフロア設定を行います。詳細については、Model Armor のフロア設定を構成するをご覧ください。
次のコマンド例をご覧ください。
gcloud model-armor floorsettings update \ --full-uri='projects/PROJECT_ID/locations/global/floorSetting' \ --enable-floor-setting-enforcement=TRUE \ --add-integrated-services=GOOGLE_MCP_SERVER \ --google-mcp-server-enforcement-type=INSPECT_AND_BLOCK \ --enable-google-mcp-server-cloud-logging \ --malicious-uri-filter-settings-enforcement=ENABLED \ --add-rai-settings-filters='[{"confidenceLevel": "MEDIUM_AND_ABOVE", "filterType": "DANGEROUS"}]'
PROJECT_ID は、実際の プロジェクト ID に置き換えます。
次の設定に注意してください。
INSPECT_AND_BLOCK: Google MCP サーバーのコンテンツを検査し、フィルタに一致するプロンプトとレスポンスをブロックする適用タイプ。ENABLED: フィルタまたは適用を有効にする設定。MEDIUM_AND_ABOVE: 責任ある AI - 危険フィルタ設定の信頼度。この設定は変更できますが、値を小さくすると偽陽性が増える可能性があります。詳細については、Model Armor の信頼度レベルをご覧ください。
Model Armor による MCP トラフィックのスキャンを無効にする
プロジェクトのフロア設定に基づいて、Google MCP サーバーとの間のトラフィックを Model Armor が自動的にスキャンしないようにするには、次のコマンドを実行します。
gcloud model-armor floorsettings update \
--full-uri='projects/PROJECT_ID/locations/global/floorSetting' \
--remove-integrated-services=GOOGLE_MCP_SERVER
PROJECT_ID は、 プロジェクト ID に置き換えます。Model Armor は、このプロジェクトのフロア設定で定義されたルールを Google MCP サーバーのトラフィックに自動的に適用しません。
Model Armor のフロア設定と一般的な構成は、MCP だけでなく、他の要素にも影響する可能性があります。Model Armor は Vertex AI などのサービスと統合されているため、フロア設定を変更すると、MCP だけでなく、統合されたすべてのサービスでトラフィック スキャンと安全性の動作に影響する可能性があります。
Model Armor の設定を調整する
Model Armor を使用してアプリケーションを保護している場合、一部のクエリで 403 PERMISSION_DENIED エラーが発生することがあります。Developer Knowledge MCP サーバーは信頼できる Google ソースの公開ドキュメントのみを返すため、誤検出を減らすために、プロンプト インジェクションとジェイルブレイク(PIJB)フィルタを HIGH_AND_ABOVE 信頼レベルに設定することをおすすめします。ユースケースに、プライベート データや機密データにアクセスする他のツールが含まれていない場合は、PIJB フィルタの無効化も検討できます。
トラブルシューティング
Developer Knowledge MCP サーバーへの接続やクエリで問題が発生した場合は、次のトラブルシューティング マトリックスと解決手順を参照してください。
トラブルシューティング マトリックス
| 症状またはエラー | 考えられる原因 | 解決策 |
|---|---|---|
400 Bad Request: API key not valid |
API キー文字列がないか、無効であるか、形式が正しくありません。 |
API キーが正しくコピーされ、X-Goog-Api-Key キーを使用して headers オブジェクトに構成されていることを確認します。 |
403 PERMISSION_DENIED:
Developer Knowledge API has not been used
|
Google Cloud プロジェクトで Developer Knowledge API が有効になっていません。 |
Google Cloud コンソールで API を有効にするか、gcloud services enable developerknowledge.googleapis.com を実行します。 |
403 PERMISSION_DENIED: API target restriction |
API キーの制限リストに Developer Knowledge API が含まれていない。 | Google Cloud コンソールの [認証情報] ページで API キーの制限を更新し、Developer Knowledge API を含めます。 |
401 UNAUTHENTICATED または ADC 認証情報がない |
アプリケーションのデフォルト認証情報の有効期限が切れているか、初期化されていません。 |
gcloud auth application-default login --project=PROJECT_ID を実行してローカル認証情報を更新します。 |
403 access_denied /
"アクセスをブロック: 認証エラーです"
|
アカウントが OAuth 同意の承認済みテストユーザーとして登録されていない。 | Google Cloud コンソール > Auth Platform > [オーディエンス] で、[テストユーザー] にメールアドレスを追加します。 |
| OAuth クライアント エラーまたは無効なリダイレクト URI | OAuth クライアントがサポートされていないアプリケーション タイプで作成されました。 | タイプを [デスクトップ アプリ] に設定して、OAuth クライアント ID を再作成します。 |
/mcp エンドポイントの 404 NOT_FOUND |
プロジェクトで API が有効になっていません。 |
Google Cloud コンソールで Developer Knowledge API を有効にするか、gcloud services enable developerknowledge.googleapis.com を実行します。 |
429 RESOURCE_EXHAUSTED |
プロジェクトの割り当て上限に達しました。 | コンソールで Developer Knowledge API の割り当ての使用状況を確認し、必要に応じて割り当ての引き上げをリクエストします。 |
403 PERMISSION_DENIED(Model Armor を使用) |
Model Armor PIJB フィルタの誤検出により、安全なクエリがブロックされました。 |
Model Armor テンプレート設定で、PIJB フィルタの信頼度を HIGH_AND_ABOVE に設定します。 |
認証と同意のエラーを解決する
API キー ヘッダー構成: MCP JSON 構成に
"X-Goog-Api-Key"を含むheadersセクションが含まれていることを確認します。API キーを URL のクエリ パラメータとして渡さないでください。OAuth 同意画面のテストユーザー: テストモードで外部ユーザータイプのプロジェクトにデスクトップ OAuth クライアントを作成する場合、Google はテストユーザーに登録されていないアカウントのアクセスをブロックします。Google Cloud コンソールの [オーディエンス] > [テストユーザー] に、有効な Google メールアドレスが追加されていることを確認します。
割り当てとレート制限: 1 日あたりの使用量と 1 分あたりの使用量をモニタリングするには、Google Cloud コンソールで [IAM と管理] > [割り当てとシステム上限] に移動し、[Developer Knowledge API] でフィルタします。
含まれるドキュメント
サーバーによってインデックス登録される Google プロダクトとドキュメント リポジトリの完全なリストについては、コーパス リファレンスをご覧ください。
既知の制限事項
- 一般公開ドキュメントのみ: サーバーは、コーパス リファレンスに記載されている一般公開ドキュメントのみをインデックスに登録します。内部ドキュメント、非公開リポジトリ、サードパーティ リソースは含まれません。
- 英語: サーバーは英語のドキュメントのみをインデックスに登録して返します。
- ネットワーク依存関係と VPC Service Controls: Developer Knowledge MCP サーバーはリモート ホスト型サービスであるため、クライアントは
https://developerknowledge.googleapis.comに到達するためのネットワーク接続が必要です。- Google Cloud VPC ネットワーク内: 公共のインターネットへの下り(外向き)は必要ありません。
developerknowledge.googleapis.comには、外部 IP アドレスや Cloud NAT を使用せずに、プライベート Google アクセス(private.googleapis.com/199.36.153.8/30)またはall-apisバンドルをターゲットとする Private Service Connect(PSC)エンドポイントを使用してトラフィックを転送することで、プライベートにアクセスできます。 - VPC Service Controls(VPC-SC): 制限付き VIP(
restricted.googleapis.com/199.36.153.4/30)または PSCvpc-scエンドポイントはdeveloperknowledge.googleapis.comの対象外です。VPC が*.googleapis.comをrestricted.googleapis.comに転送する場合は、developerknowledge.googleapis.comがprivate.googleapis.com(199.36.153.8/30)に解決されるように、の特定の Cloud DNS レスポンス ポリシーまたはプライベート DNS レコードを構成します。
- Google Cloud VPC ネットワーク内: 公共のインターネットへの下り(外向き)は必要ありません。