ツール: search_places
ユーザーのリクエストが、場所、ビジネス、住所、位置情報、スポット、その他の Google マップ関連の検索である場合は、このツールを呼び出します。
入力要件(重大):
text_query(文字列 - 必須): プライマリ検索クエリ。ユーザーが探しているものを明確に定義する必要があります。- 例:
'restaurants in New York'、'coffee shops near Golden Gate Park'、'SF MoMA'、'1600 Amphitheatre Pkwy, Mountain View, CA, USA'、'pets friendly parks in Manhattan, New York'、'date night restaurants in Chicago'、'accessible public libraries in Los Angeles'。
- 特定の場所の詳細の場合: リクエストされた属性(
'Google Store Mountain View opening hours'、'SF MoMa phone number'、'Shoreline Park Mountain View address'など)を含めます。
- 例:
location_bias(オブジェクト - 省略可): 特定の地理的エリアに近い結果を優先するために使用します。- 形式:
{"location_bias": {"circle": {"center": {"latitude": [value], "longitude": [value]}, "radius_meters": [value (optional)]}}}
- 使用方法:
- 半径 5 km にバイアスをかけるには:
{"location_bias": {"circle": {"center": {"latitude": 34.052235, "longitude": -118.243683}, "radius_meters": 5000}}} - 中心点に強くバイアスをかける場合:
{"location_bias": {"circle": {"center": {"latitude": 34.052235, "longitude": -118.243683}}}}(radius_metersは省略)。
- 半径 5 km にバイアスをかけるには:
- 形式:
language_code(文字列 - 省略可): 検索結果の概要を表示する言語。- 形式: 2 文字の言語コード(ISO 639-1)。オプションで、その後にアンダースコアと 2 文字の国コード(ISO 3166-1 alpha-2)が続きます(例:
en、ja、en_US、zh_CN、es_MX)。言語コードが指定されていない場合、結果は英語で返されます。
- 形式: 2 文字の言語コード(ISO 639-1)。オプションで、その後にアンダースコアと 2 文字の国コード(ISO 3166-1 alpha-2)が続きます(例:
region_code(文字列 - 省略可): ユーザーの Unicode CLDR 地域コード。このパラメータは、地域固有の場所の名前など、場所の詳細を表示するために使用されます(利用可能な場合)。このパラメータは、適用される法律に基づいて結果に影響を与える可能性があります。- 形式: 2 文字の国コード(ISO 3166-1 alpha-2)。例:
US、CA。
- 形式: 2 文字の国コード(ISO 3166-1 alpha-2)。例:
ツール呼び出しの手順:
位置情報(重大): 検索には十分な位置情報が含まれている必要があります。場所が曖昧な場合(「ピザ店」など)、
text_queryで指定するか(「ニューヨークのピザ店」など)、location_biasパラメータを使用する必要があります。必要に応じて、市区町村、都道府県、地域 / 国名を含めます。常に、可能な限り具体的でコンテキストが豊富な
text_queryを提供します。location_biasは、座標が明示的に指定されている場合、またはユーザーの既知のコンテキストから位置情報を推測することが適切なかつより良い結果を得るために必要な場合にのみ使用します。グラウンディングされた出力は、
attributionフィールドの情報が利用可能な場合は、その情報を使用してソースに帰属させる必要があります。
次のコードサンプルは、curl を使用して search_places MCP ツールを呼び出す方法を示しています。
| Curl リクエスト |
|---|
curl --location 'https://mapstools.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "search_places", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
入力スキーマ
SearchText のリクエスト メッセージ。
SearchTextRequest
| JSON 表現 |
|---|
{ "textQuery": string, "languageCode": string, "regionCode": string, // Union field |
| フィールド | |
|---|---|
textQuery |
必須。テキスト クエリ。 |
languageCode |
省略可。要約の返信をリクエストする言語。言語コードが指定されていないか認識されない場合は、英語を優先する要約が返されます。 たとえば、英語の場合は「en」です。 サポートされている言語の現在のリスト: https://developers.google.com/maps/faq#languagesupport。 |
regionCode |
省略可。リクエストの送信元のロケーションの Unicode 国/リージョン コード(CLDR)。このパラメータは、地域固有の場所の名前など、場所の詳細を表示するために使用されます(利用可能な場合)。このパラメータは、適用される法律に基づいて結果に影響を与える可能性があります。 例: 米国の場合は「US」。 詳しくは、https://www.unicode.org/cldr/charts/latest/supplemental/territory_language_information.html をご覧ください。 なお、3 桁の地域コードは現在サポートされていません。 |
共用体フィールド
|
|
locationBias |
検索結果を優先するオプションの地域。明示的な位置情報が |
LocationBias
| JSON 表現 |
|---|
{
"circle": {
object ( |
| フィールド | |
|---|---|
circle |
省略可。中心点と半径で定義される円。 |
サークル
| JSON 表現 |
|---|
{ "center": { object ( |
| フィールド | |
|---|---|
center |
必須。円の中心点。 |
共用体フィールド
|
|
radiusMeters |
円の半径(メートル単位)。半径は 50,000 メートル以内にする必要があります。 |
LatLng
| JSON 表現 |
|---|
{ "latitude": number, "longitude": number } |
| フィールド | |
|---|---|
latitude |
緯度(度単位)。範囲 [-90.0, +90.0] 内になければなりません。 |
longitude |
経度(度単位)。範囲 [-180.0, +180.0] 内になければなりません。 |
出力スキーマ
SearchText に対するレスポンス メッセージ。
SearchTextResponse
| JSON 表現 |
|---|
{
"places": [
{
object ( |
| フィールド | |
|---|---|
places[] |
出力専用。要約で言及されている場所のリスト。 |
summary |
出力専用。検索結果の自然言語による要約。概要には「[0]」、「[1]」、「[2]」などのゼロベースの引用が含まれる場合があります。これらの引用は、 |
PlaceView
| JSON 表現 |
|---|
{ "place": string, "id": string, "googleMapsLinks": { object ( |
| フィールド | |
|---|---|
place |
基盤となる場所のリソース名(「places/{id}」形式)。 |
id |
基盤となる場所のプレイス ID。 |
googleMapsLinks |
さまざまな Google マップのアクションをトリガーするリンク。 |
attribution |
場所とともに表示される帰属表示が必要です。 |
共用体フィールド
|
|
location |
この場所の位置。 |
LatLng
| JSON 表現 |
|---|
{ "latitude": number, "longitude": number } |
| フィールド | |
|---|---|
latitude |
緯度(度単位)。範囲 [-90.0, +90.0] 内になければなりません。 |
longitude |
経度(度単位)。範囲 [-180.0, +180.0] 内になければなりません。 |
GoogleMapsLinks
| JSON 表現 |
|---|
{ "directionsUrl": string, "placeUrl": string, "writeAReviewUrl": string, "reviewsUrl": string, "photosUrl": string } |
| フィールド | |
|---|---|
directionsUrl |
場所までのルートを表示するリンク。このリンクでは、目的地のみが入力され、デフォルトの移動手段 |
placeUrl |
この場所を表示するリンク。 |
writeAReviewUrl |
Google マップでこの場所のクチコミを投稿するためのリンク。 |
reviewsUrl |
Google マップでこの場所のクチコミを表示するためのリンク。 |
photosUrl |
Google マップでこの場所の写真を表示するためのリンク。 |
アトリビューション
| JSON 表現 |
|---|
{ "title": string, "url": string } |
| フィールド | |
|---|---|
title |
アトリビューションに表示するタイトル。 |
url |
アトリビューションのリンク先 URL。 |
ツールのアノテーション
ツールのアノテーションは、特定のツールの基本的なリスクを説明するために MCP クライアントに送信されます。ほとんどのクライアントはこれらのヒントを信頼できないものとして扱いますが、確認プロンプトをユーザーに送信するタイミングを決定するために使用できます。
タイトル文字列とともに、次のブール値のヒントが次のように定義されます。
readOnlyHint: true の場合、ツールは環境を変更しません。デフォルトは false です。destructiveHint: true の場合、ツールは破壊的なアクションを実行できます。false の場合、ツールは追加アクションのみを実行できます。デフォルト値は true です。idempotentHint: true の場合、同じ引数でツールを繰り返し呼び出しても、環境に影響はありません。デフォルトは false です。openWorldHint: true の場合、ツールは外部エンティティの「オープンワールド」とやり取りできます。false の場合、ツールは内部エンティティとのみやり取りできます。たとえば、ウェブ検索ツールはオープン ワールドですが、メモリツールはオープン ワールドではありません。
破壊的ヒント: ❌ | べき等ヒント: ❌ | 読み取り専用ヒント: ✅ | オープン ワールド ヒント: ❌